Arrays工具类、二维数组

一、Arrays工具类

Arrays:此类包含用来操作数组(比如排序和搜索)的各种方法

Arrays工具类存在于java.util包下,所以使用的第一步就是导包:import java.util.Arrays;

注意:但凡是工具类,类中的方法全部是静态的,方便调用 调用语法:类名.方法名(实参列表)

代码:

//演示Arrays工具类的使用

import java.util.Arrays;

public class Demo1 {

      public static void main(String[] args) {

            //binarySearch();

           //sort();

           //copy();

           //fill();

            toStr();

      }

//binarySearch 二分查找

     public static void binarySearch() {

            int[] arr=new int[] {5,8,10,20,65,100};

            int result=Arrays.binarySearch(arr,22);

            if(result>=0) {

                  System.out.println("找到了");

            }else{

                  System.out.println("没找到 ");

            }

     }

//排序

     public static void sort() {

            int[] arr=new int[] {12,8,100,2,9};

            Arrays.sort(arr);

            System.out.println("排序之后:");

            for(int i=0;i<arr.length;i++){

                      System.out.print(arr[i]+" ");

            }

     }

//复制

     public static void copy() {

            int[] arr=new int[] {12,8,100,2,9};

            int[] arr2=Arrays.copyOf(arr, arr.length);

            for(int i=0;i<arr2.length;i++){

                        System.out.println(arr2[i]);

            }

     }

//填充

     public static void fill() {

            int[] arr=new int[] {12,8,100,2,9};

            Arrays.fill(arr, 10);

            for(int i=0;i<arr.length;i++){

                    System.out.println(arr[i]);

            }

     }

//把数组转成字符串

     public static void toStr() {

           int[] arr=new int[] {12,8,100,2,9};

           String s=Arrays.toString(arr);

          System.out.println(s);

     }

}

二、方法的传参和返回值

1、基本类型作为方法的参数

示例:交换两个数字

2、 引用类型作为方法的参数

示例:实现数组排序

 

总结: Java中的方法传参采用的是传值的方式。

1 基本类型传递的实际数据

2 引用类型传递的是地址

基本类型传递修改后对调用方没有任何影响。引用类型传递修改后对调用方有影响。

3、 基本类型作为方法返回值

示例: 编写一个方法,实现1-100和,并返回结果

public class Demo3 {

        public static void main(String[] args) {

                int result=sum();

                System.out.println(result);

        }

      public static int sum() {

      //计算1-100的和

             int sum=0;

             for(int i=0;i<=100;i++) {

             sum+=i;

            }

           return sum;

      }

}

4、引用类型作为方法返回值

示例: 编写一个方法,返回一个数组

import java.util.Arrays;

/*

*方法返回值

*1 基本类型作为方法返回值

*2 引用类型作为方法返回值

*/

public class Demo3 {

         public static void main(String[] args) {

                 int[] nums2=getNums();

                 for(int i=0;i<num2.length;i++){

                            System.out.println(nums2[i]);

                 }

         }

//把数组中的每个数字加5,再返回一个数组

         public static int[] getNums() {

                 int[] arr=new int[] {5,10,15};

                for(int i=0;i<arr.length;i++){

                         arr [i]=arr[i]+5;

                }

                return arr;

        }

}

总结:方法的返回值如果是基本类型则返回实际数据,如果是引用类型则返回地址。

5、可变参数

在设计方法时,方法的形参的个数是不确定的

语法:

类型... 变量名称

例如:int... num

好处:不用创建数组,直接写数组元素

1. 不定长的参数在进行使用的时候被当做数组来进行处理

2. 一个方法只能有一个可变参数

3. 可变参数只能方法参数列表最后

示例:

public class VarMethodParam {

         public static void main(String[] args) {

                      System.out.println(add(1,2,3));

         }

         public static int add(int ... params){

                  int result=0;

                  for (int i = 0; i < params.length; i++) {

                               result=result+params[i];

                  }

                   return result;

         }

}

三、二维数组

1、 二维数组的概念

本质上还是一个一维数组,只是其数组元素又是一个一维数组,可以称为数组的数组

2、二维数组的创建

new 元素类型[二维数组的长度] [一维数组的长度]

3、二维数组变量的声明

方式一:元素类型 [ ] [ ] 数组名称;

方式二:元素类型 [ ] [ ] 数组名称;

推荐使用方式一

4、 二维数组的其他语法

1、 数组变量声明、数组创建整合

实际使用时可以将数组变量声明、数组创建整合为一条语句。如:

数组元素类型 数组名称 = new 数组元素类型[二维数组的长度] [一维数组的长度]

一维数组的长度可以不指定,但是使用前需要自己初始化

也可以创建数组时不指定长度,而使用元素值来取代:

元素类型 数组名称 = new 元素类型{一维数组1,一维数组2,一维数组3....};

或者

元素类型 数组名称 ={一维数组1,一维数组2,一维数组3....};

一维数组的长度可以不一样

5、二维数组的使用

1. 通过下标 访问二维的指定元素

public static void main(String[] args) {

int ages1=new int{{0,1,2,3},{10,11,12,13},{20,21,22,23}};

//二维数组的长度

System.out.println(ages1.length);

//二维数组中的第一个一维数组的长度

System.out.println(ages1[0].length);

//第一个一维数组中的第一个元素

System.out.println(ages10);

// 维数组中的第一个元素指向一个新数组

ages1[0]=new int[]{51,52};

// ages1[0]={61,62}; 这种语法只能在初始化时使用,此处不能用

}

2、遍历二维数组

public static void main(String[] args) {

                int ages1 = new int{{0, 1, 2, 3}, {10, 11, 12, 13}, {20, 21, 22, 23}};

//遍历

                for (int i = 0; i < ages1.length; i++) {

                          for (int j = 0; j < ages1[i].length; j++) {

                                     System.out.println(ages1i);

                           }

                }

               for (int[] ints : ages1) {

                        for (int anInt : ints) {

                                   System.out.println(anInt);

                        }

               }

}

6、二维数组的内存分布

7、文档注释

1、单行注释://这里是单行注释

2、多行注释:/*这里是多行注释,可以多行**/

3、JavaDoc注释:用来注释类、属性和方法等 ,可用来生成API文档 /*...... * /

JavaDoc常用标签

文档注释作用:

1. 编写代码时可通过提示显示文档注释

2. JavaDoc能够从源代码中抽取类、属性、方法等的注释,形成一个配套的API帮助文档 。

工程右键-->Export-->找到Java/JavaDoc-->选择javac.exe的路径、选择要导出doc的源码,然后点 击Finish

四、关键知识点默写

1. 工具类的使用Arrays

binarySearch() //二分查找

sort()//排序 fill()//填充

copyOf()//复制

copyOfRange();范围复制

toString()//把数组转成字符串

equals();

2、方法的参数传递和返回值

2.1参数:方法的参数传递采用传值的方式

基本类型传递的是实际数据:相当于把数据复制一份

引用类类型传递的地址。是同一个数据

2.2返回值:基本类型返回的是实际数据,引用类型返回的是地址

3、二维数组

数组中的每个元素还是数组

int [ ] [ ] arr=new int [ ] [ ] {{1,2},{3,4}};

4、文档注释

4.1生成api文档

4.2IDE编码中有提示

标签:

@author

@version

@since

@see

@param

@return

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值