为了账号安全,请及时绑定邮箱和手机立即绑定

将 int 数组转换为带前导零的字符串数组

将 int 数组转换为带前导零的字符串数组

梦里花落0921 2023-02-23 17:33:17
我有一个 int 数组,我试图将其转换为字符串数组,然后添加前导零,但是我在我的 IDE 中遇到错误,我不明白为什么,任何帮助将不胜感激。    int[] dos = new int[size];...为 dos 添加值...    String intTemp[] = new String[dos.length];    String delivery[] = new String[dos.length];    for (int j = 0; j < intTemp.length; j++)    {        intTemp[j] =  Integer.toString(dos[j]);        delivery[j] = String.format("%04d", intTemp[j]);    }
查看完整描述

3 回答

?
FFIVE

TA贡献1797条经验 获得超6个赞

你很接近,但我认为你做的太多了。


 intTemp[j] =  Integer.toString(dos[j]);

不需要,因为String.format()将为您进行转换:


String intTemp[] = new String[dos.length];

String delivery[] = new String[dos.length];

for (int j = 0; j < intTemp.length; j++) {

    delivery[j] = String.format("%04d", dos[j]);

}


查看完整回答
反对 回复 2023-02-23
?
翻翻过去那场雪

TA贡献2065条经验 获得超13个赞

问题出在这一行

delivery[j] = String.format("%04d", intTemp[j]);

您尝试将前导零添加到字符串值。用int值改变它

delivery[j] = String.format("%04d", dos[j]);


查看完整回答
反对 回复 2023-02-23
?
蛊毒传说

TA贡献1895条经验 获得超3个赞

您正在将 转换intString

intTemp[j] =  Integer.toString(dos[j]);

然后尝试在此处将该字符串转换为数字:

delivery[j] = String.format("%04d", intTemp[j]);

您应该删除这两行并将它们替换为:

delivery[j] = String.format("%04d", dos[j]);

并删除intTemp[]变量。


查看完整回答
反对 回复 2023-02-23
  • 3 回答
  • 0 关注
  • 63 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信