作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这是我的问题:我想使用以下代码将 char 转换为 int 从字符串:
String s = "11001";
int charAt2 = (int)s.charAt(2); //Why this gives 48 ???
System.out.println("charAt2 = "+charAtI);
我在终端上得到:48。为什么?这就是我想了解的。
感谢 dasblinkenlight 的链接 type conversions,我已经在 Stack Overflow 上找到了解决我的问题的好办法.正如我认为它对其他人有用一样,这里是完美运行的固定版本。我使用方法 Character.digit( char c, int i)
从基数 i
中的 char c
中给出一个 int 来执行转换。
String s = "11001";
int charAt2 = Character.digit(s.charAt(2), 2); //radix 2 here
System.out.println("charAt2 = "+charAt2);
在终端上:0。这有效。
最佳答案
char
只是一个较小的 int
,带有花哨的打印。当您将它转换为 int
时,您将失去这种花哨的打印方式,而只打印字符的 Unicode 值。 字符0的unicode值为48。
关于java - 从 char 到 int : why (int)givenString. 的转换 charAt(2) 给出 48 with givenString = "11001"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53805116/
这是我的问题:我想使用以下代码将 char 转换为 int 从字符串: String s = "11001"; int charAt2 = (int)s.charAt(2); //Why this g
我是一名优秀的程序员,十分优秀!