JAVASE(复习)——方法重载、数组篇

一、方法重载

法方重载要注意的是:

public class ccc {
    /**
     * 方法重载:方法名必须相同,参数列表必须不同,放回的参数类型可以不同
     */
    public static void aa() { }//可以没有参数
    public static int aa(int a){ return a;}//和下面的一个不同就是产生列表
    public static int aa(int a,int b){ return a;}
    
    public static double aa(double a,int b){ return a;}//参数列表类型不同也可以
    public static double aa(double a,double b){ return a;}

}

二、数组

数组下标重0开始,内存连续

(1)数组的创建方式:

    public static void main(String[] args) {

        int arr[];
        int[] arr1;//首先这个

        //静态初始化
        int[] array = new int[]{1,2,3,4};
        int[] array1 = {1,2,3,4};
        //动态初始化:注意先定义好长度再添加元素

        //多维数组,new int[行][列]
        int[] mArray2[];
        int[][] mArray = new int[3][2];
        int[][] mArray1 = new int[2][];//行数必须有值

        //数组长度是array.length,没有减一
        int len = array.length;



    }

二维数组访问注意:

  • 获取二维数组:数组名
  • 获取每一个一维数组:数组名[索引]
  • 获取每一个二维数组元素:数组名[索引] [索引]
  • 二维数组:arr.length计算的是行数。

(2)数组注意问题

数组下标是0开始,定义长度是索引减一

int[] arr = new int[3];//没有下标是arr[3]的元素

数组的默认值:

public class ccc {
    static int[] array = new int[3];
    public static void main(String[] args) {
        int[] arr = new int[3];
        System.out.println(arr[0]);//0
        System.out.println(array[0]);//0
    }
}

三、数组的Arrays 类

  • 给数组赋值:通过 fill 方法
  • 对数组排序:通过 sort 方法,按升序
  • 比较数组:通过 equals 方法比较数组中元素值是否相等
  • 查找数组元素:通过 binarySearch 方法对排序好的数组进行二分查找法操作

public static void fill(int[] a, int val)
将指定的 int 值分配给指定 int 型数组指定范围中的每个元素。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)

import java.util.Arrays;
public class Test1 {
    public static void main(String[] args) {
        //Arrays.toString()方法,数组输出
        int[] arr = {3,2,9,5};
        System.out.println(Arrays.toString(arr));// [3, 2, 9, 5]

        //Arrays.sort()方法
        /**
         * 对字符串进行排序时,是对每一个字符比较,而不是简单的比较长度
         * str1 = abd
         * str2 = abcdef
         * 因为d > c,所以 str1 > str2
         */

        Arrays.sort(arr);//数组排序,默然是【升序】
        System.out.println(Arrays.toString(arr));//[2, 3, 5, 9]

        Arrays.sort(arr,0,1);//Arrays.sort(数组名,起始下标,排序个数)

        //Arrays.equals()方法
        /**
         * 注意:Arrays.equals()是比较【数组内容】
         * 而a.equals(b) 这样的方法是比较【地址值】
         */
        int[] ar = {1,3,4};
        int[] ar1 = {1,3,4};
        System.out.println(Arrays.equals(ar,ar1));//true

       //Arrays.binarySearch(),二分查法(查找元素)
        int[] Arr = {1,3,5,7};
        Arrays.binarySearch(Arr,5);//返回值大于0就是找到了
        
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值