Android java 向字符串追加 n 个字符
Android java append n characters to string
我想在 int 小于 5 时附加“0”字符串。我试过这个
if(allItems_filtered.results(i).min_sale_unit_price.length() < 5){
calc = 5 - allItems_filtered.results(i).min_sale_unit_price.length();
min_sale_unit_price = String.format("%0" + calc + "d", allItems_filtered.results(i).min_sale_unit_price);
}
int calc
是它必须附加在 min_sale_unit_price
字符串前面的“0”的数量
其中returns这个错误:
%d can't format java.lang.String arguments
这是不言自明的,但我不知道如何将相同的内容转换为字符串。
告诉您您正在尝试格式化字符串,但 %d
引用的是一个整数,您需要将字符串转换为整数才能正常工作。另外你不需要计算你需要多少个零,如果你使用 %05d
它会自动填充数字直到它的长度不是 5
min_sale_unit_price = String.format("%05d", Integer.valueOf(allItems_filtered.results(i).min_sale_unit_price));
举个例子
Log.d("123?", String.format("%05d", 123));
会打印出来
00123
如果你取一个大于 5 的数字,它不会追加任何东西
Log.d("123?", String.format("%05d", 123456));
结果
123456
我想在 int 小于 5 时附加“0”字符串。我试过这个
if(allItems_filtered.results(i).min_sale_unit_price.length() < 5){
calc = 5 - allItems_filtered.results(i).min_sale_unit_price.length();
min_sale_unit_price = String.format("%0" + calc + "d", allItems_filtered.results(i).min_sale_unit_price);
}
int calc
是它必须附加在 min_sale_unit_price
字符串前面的“0”的数量
其中returns这个错误:
%d can't format java.lang.String arguments
这是不言自明的,但我不知道如何将相同的内容转换为字符串。
告诉您您正在尝试格式化字符串,但 %d
引用的是一个整数,您需要将字符串转换为整数才能正常工作。另外你不需要计算你需要多少个零,如果你使用 %05d
它会自动填充数字直到它的长度不是 5
min_sale_unit_price = String.format("%05d", Integer.valueOf(allItems_filtered.results(i).min_sale_unit_price));
举个例子
Log.d("123?", String.format("%05d", 123));
会打印出来
00123
如果你取一个大于 5 的数字,它不会追加任何东西
Log.d("123?", String.format("%05d", 123456));
结果
123456