所以我编写了一个方法,它接受一个字符串并通过for循环将每个字母转换为int。每次循环执行时,我都会打印出每个值并将值添加到int数组中。字母值应该是从0到25,这就是为什么我有c - 97.打印语句打印每个字母的正确数字,但最后我也打印出整个数组,我得到一个奇怪的事情,它& #39;打印。我不认为我正确地将值添加到数组中,所以我做错了什么?
public int[] stringToIntArray(String text){
int ascii;
char c;
int a;
int[] array = new int[text.length()];
for (int i=0; i<text.length(); i++){
c = text.charAt(i);
a = c - 97;
array[i] = (a);
if (i != array.length - 1){
System.out.print(a + ", ");
} else {
System.out.print(a + " ");
}
}
System.out.print(array);
return array;
}
答案 0 :(得分:1)
您需要使用Arrays.toString()。您当前正在打印内存地址。
System.out.println(Arrays.toString(array));