我尝试将CharacterSequence直接转换为具有单个整数的整数数组。
CharSequence nbr = "478";
int j;
int[] testArray = new int[100];
for(j = 0; j <= nbr.length() - 1; j++)
testArray[j] = Character.getNumericValue(nbr.charAt(j));
System.out.println(testArray);
而不是所需的[4,7,8],控制台会给出类似的内容:
[I@424c2849
设置一个带有“0”,“1”,......,“8”,“9”和相应分配的开关并没有解决问题。
我希望你能帮助我!在此先感谢;)
答案 0 :(得分:1)
数组不会覆盖toString
方法。因此,当您尝试打印任何数组时,将调用Object
类toString
方法,并获得该方法返回的表示形式,其形式为 - Type@hashCode
要获得所需的表示,请使用Arrays.toString
方法打印数组: -
System.out.println(Arrays.toString(testArray));
除此之外,你真的应该将整数数组声明为:
int[] testArray = new int[nbr.length()];
而不是使用100
尺寸。
答案 1 :(得分:0)
尝试
CharSequence nbr = "478";
int j;
int[] testArray = new int[100];
for(j = 0; j <= nbr.length() - 1; j++)
testArray[j] = Character.getNumericValue(nbr.charAt(j));
for(int i : testArray){
System.out.println(i);
}