這個循環插入僱員ID,如1,2,4,.. 30.獲得從int,而不是1:1的01在for循環中
for(int i=01;i<31;i++){
Employee e = new Employee();
e.setEmpId(i);
aList.add(e);
}
然而,我所需要的IDS在格式01, 02,03 ..等等。 有沒有簡單的方法可以實現這一目標?
這個循環插入僱員ID,如1,2,4,.. 30.獲得從int,而不是1:1的01在for循環中
for(int i=01;i<31;i++){
Employee e = new Employee();
e.setEmpId(i);
aList.add(e);
}
然而,我所需要的IDS在格式01, 02,03 ..等等。 有沒有簡單的方法可以實現這一目標?
整數將始終保存爲'1'。如果你想顯示爲「01」,那麼你可以使用這樣的事情
public static void main(String[] args) {
int i = 2;
DecimalFormat twodigits = new DecimalFormat("00");
System.out.println(twodigits.format(i));
}
輸出:
02
'「00」'就足夠了。 – Marcelo
@Marcelo:你說對了,我已經改變了。 –
ints沒有格式。他們是數字。字符串有一個格式。您可以使用NumberFormat或DecimalFormat格式化數字。
感謝您的洞察力。我想知道我還有什麼可以表達的是,我希望整數格式與我得到的格式不同。 – happybuddha
可以使用十進制格式
這更多的是一種格式問題的。如果id是一個數字,Empolyee.toString()或類似的函數可以根據需要格式化該id。
String.format("%02d", id);
歸零PADD的ID爲2米的地方爲你
使用字符串,而不是INT。
String istr = "";
for(int i=01;i<31;i++){
Employee e = new Employee();
if(i<10)
istr = "0" + i;
else
istr = "" + i;
e.setEmpId(istr);
aList.add(e);
}
當然你需要有setEmpId(String s)
方法。
爲什麼downvote?謹慎發表評論 – happybuddha
我還沒有downvoted,但它真的讓我20秒鐘谷歌和找到解決方案。我懷疑這起到了一個作用。 –
當然。我懂了。它是重複的。 – happybuddha