Java学习第二天 续数组
/*获取数组中的元素*/
class Demo2
{
public static void main(String[] args)
{
//数组的操作
//获取数组中的元素,通常都是遍历
int[] arr ={1,2,3,4,5,6};
//数组中有一个属性可以直接获取数组元素的个数,length;
/* System.out.println(arr.length);
for(int i = 0; i < arr.length; i++)
System.out.println("arr["+i+"]="+arr[i]+";");
*/
printArray(arr);
System.out.println(arr); // 结果打印出:[I@1db9742 含义: ‘[’表示数组,I表示数组中的元素类型,1db9742表示数组在内存中的地址(由哈希算法算出来的哈希值)
}
//打印数组
public static void printArray(int[] arr)
{
for(int i = 0; i < arr.length; i++)
{
if(i!=arr.length-1)
System.out.print(arr[i]+",");
else
System.out.println(arr[i]);
}
}
}
无论什么排序都需要位置的置换,所以需要将这个位置置换提功能提取出来,封装成一个函数,可以取名为swap;
注意:public static void swap(int a,int b)
{
int temp;
temp = a;
a = b;
b = temp;
}
这个函数是没有办法交换数组的值的
public static void swap(int[] arr,int a,int b)
{
int temp;
temp = arr[a];
arr[a] =arr[b];
arr[b] = temp;
}
这个函数是可以的,现在还是不太清楚两个函数之间的差异性,希望后面学习继续关注。
在对数组进行排序,Java有自己的排序函数,在Arrays类里面,Arrays.sort(arr);这个函数需加包import java.util.Arrays.