我想知道为什么以及如何修复此数组方法输出temp
的内存表示。
public class StringMethodsExersice{
public static int[] shiftMax(int[] num){
int temp[] = new int[num.length];
int firstEl = num[0];
int lastEl = num[num.length-1];
for(int i=1;i<num.length-1;i++){
if(num[i] > num[i+1]){
temp[i] = num[i];
}
temp[i] = num[i];
}
temp[0] = firstEl;
temp[num.length-1]= lastEl;
return temp;
}
public static void main (String []args){
int[] myArray = new int [5];
myArray [0] = 2;
myArray [1] = 5;
myArray [2] = 6;
myArray [3] = 14;
myArray [4] = 25;
System.out.println(shiftMax(myArray));
}
}
答案 0 :(得分:4)
您可以使用Arrays#toString
:
System.out.println(Arrays.toString(shiftMax(myArray)));
关于您获得的输出的说明:
由于每个对象都有toString()
方法,因此默认显示类名表示,然后添加@
符号,然后添加哈希码。