我是java的新手(2周),我试图将输入的字符串转换为ascii代码并尝试打印总和。
我尝试使用IntStream.of(AsciiArray).sum,但是由于它是字符串而不是int,因此无法正常工作(理解)
import java.util.Arrays;
import java.util.Scanner;
public class Strings{
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter a 5 letter word (all lower case): ");
String word = input.nextLine();
int length = word.length();
byte[] bytes = word.getBytes();
String AsciiArray = Arrays.toString(bytes);
System.out.println("the ascii sum is" + AsciiArray);
}
}
我想做的事的例子: “输入5个字母的单词(全部小写):”
你好
ascii总和为532
我能得到什么:
“输入5个字母的单词(全部小写):”
你好
ascii和为[104,101,108,108,111]
答案 0 :(得分:8)
一种用于查找所有字符总和的更简单的解决方案:
System.out.println("the ascii sum is " + word.chars().sum());
答案 1 :(得分:3)
您已经获得了输入单词的每个ASCII值,但是忘了总结它们。
例如:
byte[] bytes = word.getBytes();
int sum = 0;
for (int i = 0; i < length; i++) {
sum += bytes[i];
}
System.out.println("the ascii sum is " + sum);