将大量数字分解为单独的整数

时间:2018-11-04 10:26:51

标签: java

我正在尝试为旧档案创建分类系统。但我似乎无法弄清楚如何打破47位数字(09281746381927384678172917289371628937821936782) 分成不同的int,因为我希望数字的各个部分表示行,年,部门等内容,然后将其打印到条形码上。所以我想把那个长整数分成

这样的各个部分
long one = 198610240984874358;
int year = one(0 + 1 + 2 + 3);
int month = one(4 + 5);

或类似的东西。我似乎无法在线找到答案。

1 个答案:

答案 0 :(得分:2)

如评论中所述,最好的做法是将其保留为String,并使用substring(int beginIndex, int endIndex)来分隔数字。试试

long one = 198610240984874358l;
String number = one + "";

int year = Integer.parseInt(number.substring(0, 4));
int month = Integer.parseInt(number.substring(4, 6));

阅读Substring in Java,以了解更多信息。