我正在尝试将用户输入的字符串转换为int.没问题,我使用以下代码:
c = sc.next();
while(!c.contains("#")){
i = Integer.parseInt(c);
input.add(c);
c= sc.next();
}
Run Code Online (Sandbox Code Playgroud)
(这只是执行转换的代码的一部分,扫描仪部分正在工作)
唯一的问题是输入是二进制数,所以当输入是例如"00111"时,转换给我"111"并且我不能丢失那些0.如何将用户输入转换为数字而不会丢失左边的零?
如果00111不同于111那么你不能将它存储为整数,你需要将它们存储为字符串.
但是请注意,即使是二进制,00111 2也等于111 2.
要解析二进制文字并将其存储在整数中,请使用
Integer.parseInt(c, 2);
Run Code Online (Sandbox Code Playgroud)
(但这并没有解决保持前导零的问题.)
| 归档时间: |
|
| 查看次数: |
7041 次 |
| 最近记录: |