Day04第四天java基础----------数组

来源:互联网 发布:淘宝玩具店铺名字 编辑:程序博客网 时间:2024/05/18 22:11
------- android培训java培训、期待与您交流! ----------

1、数组:

             int[] arr = new int[数字]{}静态初始化定义,是在数据明确的时候用到
             如果是不明确的数据就要用int[] arr = new int[]([]中没有数字)
2、常见错误:

          “ArrayIndexOutBoundsException”表示的是操作数组的时候访问到了不存在的数组角标
3、常见错误:

          “NullPointerException”表示的是空指针异常,当引用没有任何的指向,值为空时该引用还在用于操作实体。
4、数组的操作:
          (1)、获取数组中的元素,通常会用到遍历 也就是循环。
          (2)、数组中有一个属性石获取长度的 length 使用方法是 :数组名。length。
          (3)、在比较数组中的大小时,初始化可以为0因为使用的是角标的值。
          (4)、boolean在数组中默认的是false;
5、选择排序:
            在选择排序中,内循环控制的是次数,最值出现在头角标的位置上,外循环控制的是次数,内循环控制是把内个元素
            和它后面的元素进行比较,比较完事输出一个元素。基本思想是,每个元素都要和这个数组中的其他元素进行比较
            如果符合条件就进行换位。
           代码如下:红色地方应该注意
                     for(int x = 0;x<arr.length-1;x++){
                           for(int y=x+1;y<arr.length;y++){
                                    if(arr[x]>arr[y]){
                                          int temp = arr[x];
                                          arr[x] = arr[y];
                                          arr[y] = temp;
                                      }
                                }
                           }
6、冒泡排序:

             循环和选择排序的一样就是内循环的时候,内层循环需要-x-1,-x是让元素比较后都减少1,-1是为了不让数组越界
            基本思想是相邻的两个元素进行比较 如果符合条件较进行交换。
                         for(int x=0;x<arr.length-1;x++){
                                 for(int y=0;y<arr.length-x-1;y++){
                                              if(arr[y]>arr[y+1]){
                                                       int temp = arr[y];
                                                       arr[y] = arr[y+1];
                                                       arr[y+1] = temp;
                                                 }
                                     }
                             }
7、十进制转化十六进制:
              查表法进行转换:
              将所有的元素都临时的存放起来,建立对应的关系,然后每次&15后值进行
              索引区查表中的数值(是查找建立表的下标)

原创粉丝点击