首页 > 解决方案 > 将一个长数字分成单独的整数

问题描述

我正在尝试为旧档案制作分类系统。但我似乎无法弄清楚如何将 47 位数字 ( 09281746381927384678172917289371628937821936782) 分解为不同int的 s,因为我希望数字的各个部分表示行、年份、部门等内容......而且我会将其打印到条形码上。所以我想把那个长数字分解成单独的部分,比如

long one = 198610240984874358;
int year = one(0 + 1 + 2 + 3);
int month = one(4 + 5);

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

标签: java

解决方案


正如评论中提到的,最好的办法是保留它Stringsubstring(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));

阅读Java 中的子字符串,了解更多信息。


推荐阅读