我正在使用此代码设置任何按钮的ID:
String s = "" + i + j;
int getal = Integer.parseInt(s);
button.setId(getal);
变量“i”和“j”始终为0 tot 9.单个数字。但是,如果“i”为0,那么parseInt()方法会删除它,我认为。
例如:当i = 0且j = 6时,变量“getal”的结果将为6而不是06.我需要它为06.有人可能知道另一种将字符串转换为整数的方法吗?
答案 0 :(得分:3)
整数不能是“06” - 它是6或它是一个字符串。
因此,setId
在“06”和“6”之间不会有任何区别。
如果您真的需要领先的零,您可以将其另存为String
或int[]
答案 1 :(得分:1)
你不应该使用s代表你需要的价值吗?整数只存储数字,06和6是相同的数字,因此当你以整数存储它时,你会得到6而不是06.
答案 2 :(得分:1)
前导零不是数字的值的属性,它们是表示的字符串属性。
Integer.parseInt()
解析字符串以确定相应的整数值。提取值后,格式化必然会丢失。
您想要的不是将字符串转换为整数的另一种方法,而是将整数转换为字符串的另一种方式,以显示将值添加到用户所需的格式。
答案 3 :(得分:1)
整数是用于存储整数的数据类型。数据类型本身不对其表示负责(即6,06,0x06,00000110都是6号的有效潜在格式)。
如果您需要特定格式,则需要将其存储在字符串中。
答案 4 :(得分:0)
您可以不获取具有06
类型的确切值int
,因为其定义为值6
。因此,您必须使用String
或类似结构来对值06
进行建模。
答案 5 :(得分:0)
int getal = Integer.parseInt(s);
NumberFormat formatter = new DecimalFormat("00");
button.setId(formatter.format(getal));