我试图用字符串连接一个数字,我这样做了:
int minute=7;
String min = minute+"";
if(min.length()==1){
min = 0+minute+"";
}
我得到7而不是07结果。为什么呢?
答案 0 :(得分:2)
0和分钟都是整数,它们首先被评估为整数加法而不是字符串连接。
更改为:
min = 0 + "" + minute+"";
答案 1 :(得分:1)
尝试:
if(min.length() == 1){
min = "0" + minute;
}
要编写2位数字,您还可以:
int minute = 7;
String s = String.format("%02d", minute); // 07
答案 2 :(得分:1)
首先添加整数分钟和0,然后将它们转换为字符串。
答案 3 :(得分:1)
此:
0+minute+""
是
0+7+""
是
7+""
因为0+7==7
。
另一方面:
"0"+minute
是
"0"+7
是
"07"
答案 4 :(得分:1)
由于操作顺序。 0 + 7在7 +""之前执行。所以它在两个整数上做加法而不是连接它们。改变参数的顺序。
答案 5 :(得分:1)
操作从左到右执行:因此,0(一个int)+ min(另一个int)给出一个int,7。 然后,7(一个int)+“”(一个字符串)给出一个字符串。
洗脱液可以是“0”+ min
否则,我建议使用java.text.NumberFormat类来定义数字格式