2016-12-20 44 views
2

我正在查找字符串类和其他一些资源,试图了解如何格式化字符串。主要是,我试图将一个数字填充到一个字符串中,但不是精确的。飞镖中的字符串格式化

例如:

int a = 0, b = 5, c = 15, d = 46; 
String aout = "", bout = "", cout="", dout=""; 

//aout = "00" 
//bout = "05" 
//cout = "15" 
//dout = "46" 

当我看着INT固定字符串的精度,它主要是用小数点打交道,而不是填充前缀时。

我原来的想法是,我可以做一些相关的sprintf,如:

String out = sprintf("%02d", a); 

但没有似乎工作,主要是因为它是说,我得到一个nosuchmethod错误。我不确定sprintf是否在核心以外的其他软件包中,因为我认为这将直接与字符串相关。

回答

6

有一个String.padLeft方法,你可以使用:

String out = a.toString().padLeft(2, '0'); 
+1

精彩。它比我要做的要好:'String out =(a <10)?“0 $ a”:a;' – Fallenreaper