Java之可变参数(Object...变量名)

[复制链接]
发表于 2025-12-27 10:15:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
目次

可变参数配景
案例
可变参数 
格式
特点(限定)
应用场景
总结


可变参数配景

案例

各人请看如下代码:
  1. public class Test1 {
  2.     public static void main(String[] args) {
  3.         int[] arr = {1, 2, 3, 4, 5};
  4.         int sum = getSum(arr);
  5.         System.out.println(sum);
  6.     }
  7.     public static int  getSum(int arr[]){
  8.         int sum=0;
  9.         for (int i = 0; i < arr.length; i++) {
  10.             sum+=arr[i];
  11.         }
  12.         return sum;
  13.     }
  14. }
复制代码
通过案例可以发现,这是简朴的求和代码。参数为数组名。
但是有个标题:假设我们每次求值,都必须上传新的数组名,终极效果都是数据的相加。为什么不直接传数据?
可变参数 

寄义:从字面上明白 参数个数,是不受限定的,可以通报恣意个数的数据。
注意:


  • 可变参数本质上还是数组
  • 可变参数每每和Object 范例搭配 ,可以通报恣意范例的数据
缘故因由:Object 是全部引用范例的父类,纵然是根本数据范例,也有它们对应的包装类。包装类 的终极父类也是Object 。因此Object 满意 可以存储恣意数据范例的数据
格式

  1. // 数据类型 ... 变量名
  2. int ... arr
复制代码
特点(限定)

   1在参数列表中, 末了一个参数为 可变参数
  2 在参数列表中,可变参数只能有一个
  

  • 如果不满意以上条件,就出现错误
应用场景

可变参数,每每在方法的参数列表中得到实现
修改上面的代码
  1. public class Test1 {
  2.     public static void main(String[] args) {
  3.         int[] arr = {1, 2, 3, 4, 5};
  4.         int sum = getSum(arr);
  5.         System.out.println(sum);
  6.     }
  7.     public static int  getSum(int ...arr){
  8.         int sum=0;
  9.         for (int i = 0; i < arr.length; i++) {
  10.             sum+=arr[i];
  11.         }
  12.         return sum;
  13.     }
  14. }
复制代码
总结

暂时就这么多,背面会连续更新
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表