帮助我如何能得到例如整数codeInt = 082从字符串代码=“A082” 我已经试过这样:需要与parseInt函数
int codeInt = Integer.parseInt(code.substring(1,4));
,我也得到codeInt = 82,离开第一0但我想要完整的代码'082'。
我想到parseInt(String s, int radix)
但我不知道如何。
任何帮助将不胜感激。
谢谢。
帮助我如何能得到例如整数codeInt = 082从字符串代码=“A082” 我已经试过这样:需要与parseInt函数
int codeInt = Integer.parseInt(code.substring(1,4));
,我也得到codeInt = 82,离开第一0但我想要完整的代码'082'。
我想到parseInt(String s, int radix)
但我不知道如何。
任何帮助将不胜感激。
谢谢。
一个整数只是存储一个数字。数字82和082(以及0082和000000082)完全相同(除非您以某种语言将它们放入源代码中,那么您将得到编译器错误)。
如果你非常需要前导零,那么你应该把它作为一个字符串,或者适当地格式化数字以便稍后输出。
由于具有巧妙想法,与前面的零写入八进制常数将降温的C设计师。好像0o123
这样的东西本来难以实现,一旦你已经有0xf00
...
如果你想要0000123
那么你需要威胁变量作为一个字符串,而不是整数。简单地说:123
等于000123
和0123
和0000...1 billion zeros here...000123
。
但是,如果你只是想显示一个固定长度的数字,然后使用System.out.format()
。
的数82
和082
和0082
在数学上是相同的编号,并且由位的相同序列来表示。您不能在int
中编码前导零的数量(尽管您可以使用任意格式打印它)。
还要注意数082
距离爪哇字面082
,它为一种(无效的)不同的八进制文字。
int i = 010;
System.out.println(i); // this prints 8
082不是整数。它是一个表示整数82的字符串。如果您需要保持前导零不变,则需要使用字符串。如果您只需要打印082,则可以使用java.text.MessageFormat
或System.out.format()
或其他类似的解决方案以这种方式进行打印。
+1 - 你说过哥们! – RubyDubee 2010-03-13 15:17:40
@Mona - 正如托马斯所说,你将不得不使用字符串,因为082不是一个整数/八进制。 – RubyDubee 2010-03-13 15:18:50