7.16_java学习_数组

来源:互联网 发布:数据质量控制 编辑:程序博客网 时间:2024/05/24 05:31

1.数组及其常见数组操作错误

public static void main(String[] args) {//int[] arr = new int[2];常用//int arr[] = new int[2];//int[] arr = new int[]{1,2,3};//int[] arr={1,3}//上面的简化写法。//int[] arr = new int[2];//System.out.println(arr[3]);//java.lang.ArrayIndexOutOfBoundsException:操作数组异常, 访问到了数组中不存在的下标;int[] arr2 = new int[2];arr2=null;System.out.println(arr2[1]);// java.lang.NullPointerException:空指针异常;当引用没有任何指向值null的情况,该引用还在操作!}


 

2.数组的应用

public static void main(String[] args){//获取数组元素,通常用到遍历int[] arr = new int[3];for(int x=0;x<3;x++){//数组默认值0;System.out.println("arr["+x+"]="+arr[x]+";");}System.out.println(arr);//[I@45bab50a:第一个符号表示数组,第二个符号表示数组类型。右边输出数组地址(右边八位数组地址)    //该值由哈希算法算出!//StringBuffer s = new StringBuffer();s.reverse();//反转功能;doubleArray();}/* *十折半查找     */public static int self(int[] arr,int key){int min,max,mid;min = 0;max = arr.length-1;mid = (min+max)/2;while(arr[mid]!=key){if(key>arr[mid])min = mid + 1;else if(key<arr[mid])max = mid - 1;}return mid;}/* *十进制-->十六进制。     */public static void toHex(int num){for(int x=0; x<8; x++){int temp = num & 15;if(temp>0)System.out.println((char)(temp-10+'A'));elseSystem.out.println(temp);num = num >> 4;}}


 

3.二维数组

//二维数组表示方法//int[][] a: int a[][]://int[] a[]//工作中不用:但是ocjp中有考//二维数组初始化//int[][] arr = new int[3][4];//int[][] arr = {{1},{2},{3}}int [][] arr = new int[3][];System.out.println(arr[0]);//null;数组是引用类型默认值是null;arr[0] = new int[1];arr[1] = new int[2];arr[2] = new int[3];System.out.println(arr[0]);//[I@7150bd4d,初始化后引用就指向一个地址值System.out.println(arr.length);//打印数组长度System.out.println(arr[0].length);//打印第一个小组长度


 

 

0 0
原创粉丝点击