gpt4 book ai didi

java - 从 long 转换为 string 时保留前导零

转载 作者:行者123 更新时间:2023-11-29 06:27:41 24 4
gpt4 key购买 nike

我正在使用 String.format()long 转换为 String。当传递 >0 的数字时它工作正常,但是当我向数字添加前导零时,我在输出中得到一个不同的数字。我的要求是在传递前导零时向用户显示前导零。请指教。

public class CreateContractNumber {
public static void main(String[] args) {
long account = 0000123;
long schedule = 001;
CreateContractNumber ccn = new CreateContractNumber();
System.out.println("CONTRACT #: "+ccn.createContNbr(account, schedule));
}

private String createContNbr(long account, long schedule) {
StringBuilder sb = new StringBuilder();
sb.append(String.format("%07d", account);
sb.append("-");
sb.append(String.format("%03d", schedule);
return sb.toString();
}
}

实际输出:契约(Contract)号:0000083-001

预期输出:契约(Contract)号:0000123-001

最佳答案

long account = 0000123; 是一个八进制数。 0123 oct 是 83 dec,这使您的输出正确。如果您需要 123 dec,只需编写 long account = 123;,因为前导零对存储在 long 中的值没有影响。

关于java - 从 long 转换为 string 时保留前导零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49059345/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com