将前导零添加到转换后的整数 Java
Add leading Zeros to converted Integer Java
我得到 gpnString
作为 String
,我必须将它解析为 int
。
我使用的是 Integer.parseInt(gpnString)
但 gpnString
包含前导零,它们会被 Integer.parseInt()
.
删除
gpnString
的长度总是 8
所以我试着根据需要添加这么多 0
但是 int 检测到它是 NULL
所以它没有添加数字 0
。这是我的代码:
int parseToInt(String gpnString) {
int gpn = Integer.parseInt(gpnString);
for (int addZero = 8 - String.valueOf(gpn).length(); addZero != 0; addZero--) {
gpn = 0 + gpn;
}
return gpn;
}
/*
Input : gpnString = "00012345"
Output: 12345
*/
我在 Whosebug 上查过这个,但我只找到了这样的答案:
String gpn = String.format("%08d" , gpnSring);
我试过了,但是你得到了一个 String
所以我必须再次解析它,这会导致与以前完全相同的问题。
编辑:
我听说 Integer
或 int
不能有前导零...
我使用 gpn
在数据库中进行个人识别。最好的办法是编辑图形输出,让它看起来就像有 0
一样吗?或者有更好的方法解决这个问题吗?
整数不能有前导零。
由于前导零对整数没有数学意义,因此不会这样存储。前导零很可能只会增加人类查看/处理值的可读性。对于这种用法,可以按照您已经找到的方式使用字符串。
我得到 gpnString
作为 String
,我必须将它解析为 int
。
我使用的是 Integer.parseInt(gpnString)
但 gpnString
包含前导零,它们会被 Integer.parseInt()
.
gpnString
的长度总是 8
所以我试着根据需要添加这么多 0
但是 int 检测到它是 NULL
所以它没有添加数字 0
。这是我的代码:
int parseToInt(String gpnString) {
int gpn = Integer.parseInt(gpnString);
for (int addZero = 8 - String.valueOf(gpn).length(); addZero != 0; addZero--) {
gpn = 0 + gpn;
}
return gpn;
}
/*
Input : gpnString = "00012345"
Output: 12345
*/
我在 Whosebug 上查过这个,但我只找到了这样的答案:
String gpn = String.format("%08d" , gpnSring);
我试过了,但是你得到了一个 String
所以我必须再次解析它,这会导致与以前完全相同的问题。
编辑:
我听说 Integer
或 int
不能有前导零...
我使用 gpn
在数据库中进行个人识别。最好的办法是编辑图形输出,让它看起来就像有 0
一样吗?或者有更好的方法解决这个问题吗?
整数不能有前导零。
由于前导零对整数没有数学意义,因此不会这样存储。前导零很可能只会增加人类查看/处理值的可读性。对于这种用法,可以按照您已经找到的方式使用字符串。