java 重载 返回_java – 返回方法重载
我是Java的新手,我自己也在学习.我尝试重载方法时遇到了麻烦.这是代码
public static void main(String[] args) {
calculateScore();
calculateScore(500);
calculateScore("Duy", 600);
calcFeetAndInchesToCentimetres(100, 3.5);
calcFeetAndInchesToCentimetres(100*12 + 3.5);
}
public static double calcFeetAndInchesToCentimetres(double feet, double inches) {
if (feet >= 0 && inches >= 0 && inches <= 12) {
double footToInches = feet * 12;
double centimetres = (inches + footToInches) * 2.54;
System.out.println("The value in centimetres is " + centimetres + " cm.");
return centimetres;
} else {
return -1;
}
}
public static double calcFeetAndInchesToCentimetres(double inches) {
if (inches >= 0){
double inchesToFeet = inches / 12;
double inchesRemain = inches - (inchesToFeet * 12);
calcFeetAndInchesToCentimetres(inchesToFeet, inchesRemain);
return 0;
} else {
return -1;
}
我的问题是当我从第二种方法中获取返回0时,调试器会说“缺少return语句”.然后我尝试将返回calcFeetAndInchesToCentimetres(inches);,它可以工作,但程序运行了大约数千次.
然后我把返回0,一切都OK.但我不明白为什么我不能把返回calcFeetAndInchesToCentimetres(英寸);当上面的方法(带有2个参数)得到它时,为什么我需要一个return语句.如果我想在执行第二种方法时转换厘米的值(仅使用“inches”参数),我该怎么做?
我在块代码中意识到的另一件事
double inchesToFeet = inches / 12;
double inchesRemain = inches - (inchesToFeet * 12);
calcFeetAndInchesToCentimetres(inchesToFeet, inchesRemain);
inchesRemain将为0?但该方法效果很好.当我改变inchesToFeet =英寸%12时,它只是没有显示任何内容.为什么?
解决方法:
它应该只是:
public static double calcFeetAndInchesToCentimetres(double inches) {
if (inches >= 0){
double inchesToFeet = inches / 12;
double inchesRemain = inches - (inchesToFeet * 12);
return calcFeetAndInchesToCentimetres(inchesToFeet, inchesRemain);
} else {
return -1;
}
}
你说你已经尝试过返回calcFeetAndInchesToCentimetres(英寸);但这只是递归地调用你的方法而且它会永远递归,因为没有停止条件.
标签:java,return,overloading,methods
来源: https://codeday.me/bug/20190724/1524847.html
java 重载 返回_java – 返回方法重载相关推荐
- 学习-Java继承和多态之方法重载
第1关:学习-Java继承和多态之方法重载 任务描述 相关知识 编程要求 测试说明 任务描述 本关任务:使用重载方法为 Student 类创建三个构造方法. 相关知识 Java 中重载是指一个类中可以 ...
- java关于重写正确,在Java中,以下关于方法重载和方法重写描述正确的是( )
在Java中,以下关于方法重载和方法重写描述正确的是( ) 答:方法重写的返回值类型必须相同或相容.(或是其子类) 对乙酰氨基酚临床用途是抗炎抗风湿作用 答:错 观念艺术是哲学的反思,传统的理论可以对 ...
- scala 方法重载_Scala中的方法重载
scala 方法重载 Scala方法重载 (Scala method overloading) Method overloading is a method that is redefined in ...
- Java基础03 构造器与方法重载
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在方法与数据成员中,我们提到,Java中的对象在创建的时候会初始化(initial ...
- 粤嵌星计划打卡第二十一天(java面型对象:方法重载)
文章目录 1.定义一个函数实现输出一个长方形 1.1 void就是省略了return(就是可以简单的省事) 2重载 2.1 重载的概念 2.2 重载小练习 3函数在内存中的调用过程 1.定义一个函数实 ...
- java 反余弦_Java acos() 方法
Java acos() 方法 acos() 方法用于返回指定double类型参数的反余弦值. 语法 double acos(double d) 参数 d -- 任何原生数据类型. 返回值 返回指定do ...
- java 重写函数_JAVA函数的重载和重写
一.什么是重载(overlording) 在JAVA中,可以在同一个类中存在多个函数,函数名称相同但参数列表不同.这就是函数的重载(overlording).这是类的多太性表现之一. 二.重载的作用: ...
- java重写和重载 关键字_Java重写和重载的区别
一.重写(Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变.即外壳不变,核心重写! 二.重载(Overload) 重载(overloading) 是 ...
- java json自定义_java返回json设置自定义的格式
springMvc返回Json中自定义日期格式 (一)输出json数据 springmvc中使用jackson-mapper-asl即可进行json输出,在配置上有几点: 1.使用mvc:annota ...
最新文章
- 一个查看全部用户的磁盘空间使用情况的脚本
- Cissp-【第4章 通信与网络安全】-2021-3-12(408页-445页)
- WIndows下AppAche服务中调试php页面出现警告:Call to undefined function mysql_connect()
- matlab fftshift_matlab下实现FFT信号分析
- 【NOIP普及组】2016模拟考试(10.29)——排座椅
- 388. 文件的最长绝对路径
- sqlite3 可视化工具 linux,【SQLite3下载】SQLite3可视化工具 v3 3.27.2 官方版-开心电玩...
- edup网卡 linux,应用笔记--使用USB WiFi网卡
- 架构师架构蓝图《UML精粹》 UML Distilled读后感
- 模拟电子技术基础(一)
- 【所见即所得】数据分析最有用的25个 Matplotlib图【附代码】
- cvc降噪和主动降噪_蓝牙耳机降噪功能CVC好还是DSP?
- 男人必看十大电影 VS 女人必看十大电影
- 重置Win10网络网卡命令
- 送书【新书】 |《python数据科学实战》
- google的一些秘密入口 很好玩
- actuator--基础--6.1--端点解析--health端点
- 【食品化学与营养】第一章 绪论 笔记
- 每日新闻 | 特斯拉“太空跑车”完成第一圈绕日飞行 向火星靠近
- 解决虚拟机中Win7系统无法安装vmware tools问题