如何从一串数字中获取数值?
How do you get the numerical value from a string of digits?
我需要添加数字字符串的某些部分。
例如喜欢。
036000291453
我想把奇数位置的数字加起来这样
0+6+0+2+1+5 等于 14.
我尝试了 charAt(0)+charAt(2) 等,但它 returns 这些字符的数字而不是添加它们。感谢您的帮助。
String s = "036000291453";
int total = 0;
for(int i=0; i<s.length(); i+=2) {
total = total + Character.getNumericValue(s.charAt(i));
}
System.out.println(total);
I tried the charAt(0)+charAt(2) etc, but it returns the digit at those
characters instead of adding them.
Character.getNumericValue(string.charAt(0));
用charAt
get得到char
(ASCII)值,然后用charAt(i) - '0'
转化为对应的int
值。 '0'
会变成0
,'1'
会变成1
,等等
请注意,这也会转换不是数字的字符而不会给您任何错误,因此 Character.getNumericValue(charAt(i))
应该是一个更安全的选择。
可以使用Character.digit()方法
public static void main(String[] args) {
String s = "036000291453";
int value = Character.digit(s.charAt(1), 10);
System.out.println(value);
}
下面的代码循环遍历任何一个字符串数字,并在最后打印出奇数的总和
String number = "036000291453";
int sum = 0;
for (int i = 0; i < number.length(); i += 2) {
sum += Character.getNumericValue(number.charAt(i));
}
System.out.println("The sum of odd integers in this number is: " + sum);
我需要添加数字字符串的某些部分。
例如喜欢。
036000291453
我想把奇数位置的数字加起来这样
0+6+0+2+1+5 等于 14.
我尝试了 charAt(0)+charAt(2) 等,但它 returns 这些字符的数字而不是添加它们。感谢您的帮助。
String s = "036000291453";
int total = 0;
for(int i=0; i<s.length(); i+=2) {
total = total + Character.getNumericValue(s.charAt(i));
}
System.out.println(total);
I tried the charAt(0)+charAt(2) etc, but it returns the digit at those characters instead of adding them.
Character.getNumericValue(string.charAt(0));
用charAt
get得到char
(ASCII)值,然后用charAt(i) - '0'
转化为对应的int
值。 '0'
会变成0
,'1'
会变成1
,等等
请注意,这也会转换不是数字的字符而不会给您任何错误,因此 Character.getNumericValue(charAt(i))
应该是一个更安全的选择。
可以使用Character.digit()方法
public static void main(String[] args) {
String s = "036000291453";
int value = Character.digit(s.charAt(1), 10);
System.out.println(value);
}
下面的代码循环遍历任何一个字符串数字,并在最后打印出奇数的总和
String number = "036000291453";
int sum = 0;
for (int i = 0; i < number.length(); i += 2) {
sum += Character.getNumericValue(number.charAt(i));
}
System.out.println("The sum of odd integers in this number is: " + sum);