Java---可变参数、Arrays类和面向对象编程

可变参数

  • 在方法的声明中,在指定参数类型之后加一个省略号(…)

  • 一个方法只能指定一个可变参数,且必须是方法的最后一个参数

  • 可变参数的本质是数组

    main方法里面:max(1,2,5,6,);
    //这里的参数可以无限多个,也可以是数组
    
    public static void max(int...a){
         int max=a[0];
         for(int i=1;i<a.length;i++){
             if(a[i]>max)
                max=a[i];
         }
         System.out.println(max);
    }
    

数组

  • 数组类型[] + 变量名 = new 数组类型[数组大小];

    int[] numbers = new int[10];

  • 获取数组的长度

    数组名.length

    numbers.length

  • 内存分析

    • 堆:存放new的对象和数组
    • 栈:存放基本类型
  • 数组的的两种初始化

    • 静态初始化 int[] a = {1,2,3,4};

    • 动态初始化 int[] a = new int[10];

      (未被初始化的时候会被默认初始化)

  • 数组可以作为参数,也可以作为返回值


Arrays类

  • java.util里面的一个类,如果要使用的话,要引入这个类

    import java.util.Arrays

  • Arrays类常用的一些方法

    • Arrasy.toString 按顺序打印输出数组全部元素

    • Arrays.sort 对数组进行升序排序

    • Arrays.fill 对数组元素进行填充

      还可以指定范围进行填充 Arrays.fill(a,2,4,0) 👈把a数组低2,3元素的值填充为0

    在这里插入图片描述在这里插入图片描述


面向对象编程

类的补充
  • 两个方法,若a方法是静态方法,b不是静态方法,则在a中引用b方法会报错

在这里插入图片描述

因为两个方法存在的初始时间不一样,静态方法在类存在的时候就存在了,而非静态方法得等到类实例化之后才存在,当a要引用b的时候,b还不存在,所以会报错

  • 值传递和引用传递

    • 值传递:不改变实参的值

    • 引用传递:改变实参的值

    在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值