我可以在Java中使用charAt的产品吗?
可能重复: 当我编译时:我可以在Java中使用charAt的产品吗?,java,string,char,Java,String,Char,可能重复: 当我编译时: String s = "25999993654"; System.out.println(s.charAt(0)+s.charAt(1)); 我收到了100英镑 JAVA文档: the character at the specified index of this string. The first character is at index 0. 我认为我必须将字符串编译成int,但我认为这是一项不必要的工作。有什么解决方案或想法吗?您需要将其解析为int I
String s = "25999993654";
System.out.println(s.charAt(0)+s.charAt(1));
我收到了100英镑
JAVA文档:
the character at the specified index of this string. The first character is at index 0.
我认为我必须将字符串编译成int,但我认为这是一项不必要的工作。有什么解决方案或想法吗?您需要将其解析为int
Integer.parseInt(String.valueOf(s.charAt(0))) + Integer.parseInt(String.valueOf(s.charAt(1)))
它将字符的ascii值相加 你可以通过减去48得到整数等价物
System.out.println((s.charAt(0)-48)+(s.charAt(1)-48));
或者创建一个函数将ascii转换为数字字符的值不是整数而是ascii值
假设您希望结果为2+5=7:
System.out.println(Character.digit(s.charAt(0), 10) + Character.digit(s.charAt(1), 10));
这是必要的,因为charAt返回一个字符,基本上是一个Unicode ID号 试试这个
String s = "25999993654";
System.out.println(Character.getNumericValue(s.charAt(0))
+ Character.getNumericValue(s.charAt(1)));
你是否每20分钟就发布一个相同的问题?为什么你会问两次相同的问题。。你必须复习103而不是100。它把我弄糊涂了。这不是太重了吗?字符串->字符->字符串->整数因为您不确定它是否只包含整数,所以需要采取适当的异常care@MichaelBorgwadt的解决方案正确地使用了character中提供的parse character to digit方法。谢谢,这对我很有帮助。我做了我想做的事D