【JAVA】可变参数

可变参数Variable parameters

基本概念
java允许将同一个类中多个同名同功能但参数个数不同的方法,封装成一个方法。就可以通过可变参数实现

基本语法
°访问修饰符 返回类型 方法名(数据类型…形参名){ }

快速入门案例
看一个案例类 HspMethod,方法 sum【可以计算2个数的和,3个数的和】

public class ss{
   public static void main(String[] args){
//在主类的main()方法中分别用参数区别调用三个方法Methods method = new Methods();
	   HspMethods m=new HspMethods();
	   m.sum(1,5,100);
	   m.xiangjia(1,5,100);
	  
   }
}

class HspMethods {
	//1. int...表示接受的是可变参数,类型是int ,即可以接收多个int(0-多)
	//2.使用可变参数时,可以当做数组来使用即nums 可以当做数组
	public int sum(int... nums) {
	System.out.println("接收的参数个数="+ nums.length);
	return 0;
	}
	
	public int xiangjia(int... nums) {
	int res=0;
	for(int i=0;i<nums.length;i++ ) {
		res+=nums[i];}
	System.out.println("值="+ res);
		return 0;
	}
	
	

}


可变参数使用细节

●注意事项和使用细节

  1. 可变参数的实参可以为0个或任意多个。
  2. 可变参数的实参可以为数组。
  3. 可变参数的本质就是数组.
  4. 可变参数可以和普通类型的参数一起放在形参列表,但必须保证可变参数在最后.
  5. 一个形参列表中只能出现一个可变参数.
public class ss{
   public static void main(String[] args){

	   int[] arr = {1,2,3};T t1=new T();
	   t1.f1(arr);
	   }
	   }
	   class T {
	   public void f1(int... nums) {
	   System.out. println("长度=" +nums.length);
	   }
	   public void f2(String str ,double ...nums) {
		   //可变参数可以和普通类型的参数一起放在形参列表,但必须保证可变参数在最后.
	   };
	 
}
	   

有三个方法,分别实现返回姓名和两门课成绩(总分),返回姓名和三门课成绩(总分),返回姓名和五门课成绩(总分)。封装成一个可变参数的方法

public class ss{
   public static void main(String[] args){

	 T t1=new T();
	
	System.out.println(t1.showScore("wang", 80.0,90.0)) ;
	   }
	   }
	   class T {
	   public String showScore(String name,double... scores) {
	 double  totalScores=0  ; // totalScores要赋初值否则+=无法运算
	 for(int i=0;i<scores.length;i++) {
		 
		 totalScores += scores[i];
		 }
	   return name+"有"+scores.length+"门课的总成绩=" + totalScores ;
	    //totalScores要定义在循环语句外,否则return中的 totalScores不存在。
	   }
}
	   
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值