首页 > 编程语言 >Java - 14 方法重载

Java - 14 方法重载

时间:2024-10-06 15:45:00浏览次数:7  
标签:Java 14 int double 重载 n1 n2 public Methods

Java - 14 方法重载+可变参数

方法重载

Java允许同一个类中,多个同名方法存在,但要求形参列表不一致(类型,顺序),返回类型没有要求

public class Overload{
	public static void main(String[] args) {
		MyCalculator m = new MyCalculator();
		System.out.println(m.calculate(1,2));
	}

}

class MyCalculator {
	public int calculate(int n1, int n2){
		return n1+n2;
	}

	public double calculate(int n1, double n2){
		return n1+n2;
	}

	public double calculate(double n1, int n2){
		return n1+n2;
	}

	public double calculate(double n1, double n2){
		return n1+n2;
	}
}

可变参数

Java允许将同一个类中多个同名同功能参数个数不同的方法,封装成一个方法

  • 可变参数本质是数组
public class VarParameters{
	public static void main(String[] args) {
		Methods m = new Methods();
		System.out.println(m.sum(1,2,3));
	}
}

class Methods{
	// 接收 0-n 个 int类型参数
	public int sum(int... nums){
		int res = 0;
		for(int i = 0; i<nums.length; i++){
			res += nums[i];
		}
		return res;
	}
}
  • 可变参数可以是数组
public class Test{
	public static void main(String[] args) {
		Methods m = new Methods();
		int[] arr = new int[3];
		System.out.println(m.sum(arr)); // 0
	}
}

class Methods{
	public int sum(int... nums){
		System.out.println("长度是:"+nums.length); // 3
		int res = 0;
		for(int i = 0; i<nums.length; i++){
			res += nums[i];
		}
		return res;
	}
}
  • 可变参数和普通类型的参数一起时,必须保证可变参数在最后
  • 一个形参列表中只能有一个可变参数

标签:Java,14,int,double,重载,n1,n2,public,Methods
From: https://www.cnblogs.com/wxrwajiez/p/18449105

相关文章

  • Java - 13 方法的递归
    Java-13方法的递归递归必须向退出递归的条件逼近斐波那契数列当n=1,1当n=2,1当n>=3,是前两个数的和publicclassRecursion{ publicstaticvoidmain(String[]args){ Fbnqf=newFbnq(); intn=7; intres=f.num(n); if(res!=-1) System.out.p......
  • Java - 15 作用域
    Java-15作用域classCat{ intage=1;//全局变量(属性),作用域是整个cat类{intnum=100;//代码块中-局部变量}publicvoidsay(){ Stringgreet="hello";//局部变量(除了属性之外就是局部变量),只能在say方法中使用System.out.p......
  • 2024-2025-1 20241416 《计算机基础与程序设计》第二周学习总结
    这个作业属于哪个课程 2024-2025-1-计算机基础与程序设计这个作业要求在哪里 https://www.cnblogs.com/rocedu/p/9577842.html#WEEK02这个作业的目标 数字化、信息安全、自学教材计算机科学概论(第七版)第1章并完成云班课测试、《C语言程序设计》第1章并完成云班课测试作业正文......
  • Java - 3 运算符
    Java-3运算符算术运算符/*++a:先运算后取值a++:先取值后运算*/inti=1;i=i++;//(1)temp=i;(2)i=i+1;(3)i=temp;System.out.println(i);//1inti=1;i=++i;//(1)i=i+1;(2)temp=i;(3)i=temp;System.out.println(i);//2System.out.prin......
  • Java - 5 原码、反码、补码
    Java-5原码、反码、补码0表示正,1表示负整数的原码,反码,补码都一样负数的反码=原码符号位不变,其它位取反负数的补码=反码+10的反码,补码都是0Java中没有无符号数计算机运算时,以补码的方式运算看计算结果时,要看原码整数数据类型取值范围数据类型范围byt......
  • 陀螺仪LSM6DSV16X与AI集成(14)----上报匿名上位机
    陀螺仪LSM6DSV16X与AI集成.14--上报匿名上位机概述视频教学样品申请源码下载硬件准备上位机通讯陀螺仪工作方式欧拉角数据的转换数据帧填充校验和计算数据发送演示开启INT中断中断读取传感器数据主程序演示概述本文介绍了如何将LSM6DSV16X传感器的姿态数据通过匿名......
  • 2024-2025-1 20241421 《计算机基础与程序设计》第二周学习总结
    这个作业属于哪个课程2024-2025-1-计算机基础与程序设计这个作业要求在哪里https://www.cnblogs.com/rocedu/p/9577842.html#WEEK02这个作业的目标数字化、信息安全、自学教材计算机科学概论(第七版)第1章并完成云班课测试、《C语言程序设计》第1章并完成云班课测试......
  • 学期(2024-2025-1) 学号20241425 《计算机基础与程序设计》第2周学习总结
    学期(2024-2025-1)学号20241425《计算机基础与程序设计》第2周学习总结作业信息这个作业属于哪个课程<班级的链接>(2024-2025-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>([2024-2025-1计算机基础与程序设计第二周作业]https://www.cnblogs.com/rocedu/......
  • Java内存模型
    1.硬件的效率与一致性物理机遇到的并发问题与虚拟机中的情况有很多相似之处,物理机对并发的处理方案对虚拟机的实现也有相当大的参考意义。“让计算机并发执行若干个运算任务”与“更充分地利用计算机处理器的效能”之间的因果关系,看起来理所当然,实际上它们之间的关系并没有想象......
  • 2024-2025-1 20241408 《计算机基础与程序设计》第二周学习总结
    2024-2025-120241408《计算机基础与程序设计》第二周学习总结作业信息这个作业属于哪个课程2024-2025-1-计算机基础与程序设计这个作业要求在哪里https://www.cnblogs.com/rocedu/p/9577842.html#WEEK02这个作业的目标数字化、信息安全、自学教材计算机科学概论......