众所周知,return 只能用在有返回类型的函数中,但是有返回值的函数一定要有return吗?return都可以用在函数的哪些地方呢?这是本文需要讨论的问题。
--------------------------------------------------------------------------------
例一:
class test {
public String test() {
if(true){
return "";
}
else{
return "";
}
}
}
上面这样即可通过编译,但是下面这两个例子却不能通过编译:
(一)
class test {
public String test() {
if(true){
return "";
}
}
}
(二)
class test {
public String test() {
if(isTrue()){
return "";
}
else if(!isTrue()){//两个if里的判断包括了所有的可能性,但是还是编译期error
return "";
}
}
boolean isTrue(){
return true;
}
}
结论1:
对于(一),这是因为java编译器认定单独的if语句只在当一定条件满足情况下才执行,它认为if不会有任何情况下都能执行的能力。
对于(二),这是因为java编译器对if else 语句能够全面囊括所有情况的能力只限定在的if...else(或if...else if...else)时,而不包括if...else if。
--------------------------------------------------------------------------------
再看例二:
class test {
public String test() {
while(true){
return "";
}
}
}
上面这样即可通过编译,但是下面这样不行:
class test {
public String test() {
while(isTrue()){
return "";
}
}
boolean isTrue(){
return true;
}
}
结论2:
这是因为编译器认为while语句有在任何情况下都能执行的能力,但是只在入参为true的情况下有该能力。
--------------------------------------------------------------------------------
再看例三:
public class test {
String test() throws Exception{
throw new Exception();//抛出异常后,跳出程序,程序中止
}
}
结论3:
如果函数中创建了异常,并抛出,则该函数可以不返回值。
--------------------------------------------------------------------------------
知道了以上的情况,你就可以熟练自如得运用return了。
分享到:
相关推荐
return算是各大语言的常客,基本上都有return语句,那么在JAVA中,return有什么特殊的地方吗,下面我们来分析下
Java语言finally语句详解,finally到底是在return之前还是之后执行.zip
主要介绍了Java中break、continue、return语句的使用区别对比,本文用非常清爽简明的语言总结了这三个关键字的使用技巧,并用一个实例对比使用结果,需要的朋友可以参考下
Java语言编码规范 1 介绍(INTRODUCTION) 3 1.1 为什么要有编码规范(WHY HAVE CODE CONVENTIONS) 3 1.2 版权声明(ACKNOWLEDGMENTS) 3 2 文件名(FILE NAMES) 4 2.1 文件后缀(FILE SUFFIXES) 4 2.2 常用文件名(COMMON ...
控制语句是Java语言中的一种基本结构,用于控制程序的执行流程。常见的控制语句包括if语句、switch语句、循环语句等。在本节中,我们将介绍循环语句的概念和使用方法。 循环语句是指在程序中重复执行某些语句的语句...
B、变量在定义时可以没有初始值 C、变量一旦被定义,在程序中的任何位置都可以被访问 D、在程序中,可以将一个btye类型的值赋给一个int类型的变量,不需要特殊声明 java语言与面向对象程序设计形考1-0001全文共12页...
3. Java 语言的控制流程:Java 语言中有多种控制流程,例如 if 语句、switch 语句、while 循环、for 循环等。在 Java 语言中,我们可以使用控制流程来控制程序的执行顺序,例如 for(char a = 'А';aя';a++) { ...
北京动力节点-Java编程零基础教程-005-Java语言概述-Java的诞生.mp4 北京动力节点-Java编程零基础教程-006-Java语言概述-Java的特点-面向对象.mp4 北京动力节点-Java编程零基础教程-007-Java语言概述-Java的特点-...
4.1 类的方法 4.1.1 方法的定义 [修饰符] 返回值类型 方法名(类型 参数名1, 类型 参数名2, ……) { // 这对大括号内是方法体 一些变量声明语句 一些执行语句 return 表达式; } 第4章-Java面向对象程序设计-Java语言...
* 跳转语句:break语句、continue语句、return语句 七、Java面向对象编程 * 类和对象的概念 * 构造方法和成员变量 * 方法重载和方法重写 八、Java编程练习 * 编写HelloWorld程序 * 实现基本算术运算 * 实现条件...
在 java 语言中,Java 程序的基本单位是类,也就是说:一个 Java 程序是由多个类组成 的。定义一个类与定义一个数据类型是有区别的。在程序设计语言中,把定义数据类型的能 力作为一种很重要的能力来对待。在面向...
可分别通过词法、语法、语义分析输出<...能够翻译break、continue、return语句。可以检查赋值精度错误、函数参数类型不匹配错误、静态数组元素下标越界错误、break错误、continue错误、函数参数不匹配错误等
return语句的例子.docx Scanner和if语法.docx static.docx 毕向东视频的笔记.docx 参数传递.docx 第二周所学总结.docx 反射机制.docx 泛型.docx 封装和继承以及多态部分.docx 接口和抽象类以及实现类.docx 枚举enum....
本章主要讲解了 Java 语言中的运算符、表达式和语句,包括算术运算符、关系运算符、逻辑运算符、赋值运算符、位运算符、条件运算符和 instanceof 运算符等,以及语句的概述、分支语句、循环语句和跳转语句等。...
3. try 语句中的 return 语句不会阻止 finally 语句块的执行,finally 语句块将在 return 语句之前执行。 4. Java 中的关键字有 50 多个,包括 true、false、null、abstract、assert、break 等。 5. char 型变量可以...
19在Java语言的控制结构中,break语句是经常用到的语句。下面一段代码中break语句起到( )的作用。 (选择一项) int pointer=0; while(pointer){ switch(pointer%3){ case 1: pointer+=1; break; case 2: ...
然而,在一些情况下,我们需要直接执行原生 SQL 语句,而不是使用 Hibernate 的查询语言(HQL)。本文将介绍如何使用 Hibernate 执行原生 SQL 语句。 为什么需要执行原生 SQL 语句 在实际开发中,我们可能需要执行...
在java程序中,我们可以看到一些基本概念,如变量、数据类型、运算符、控制流语句、函数等。变量是存储数据的容器,数据类型则是变量所存储的数据类型的类型。运算符用于对变量和值进行操作,控制流语句用于控制程序...
JDBC 是 Java 语言中用来连接数据库的标准 API。通过 JDBC,可以连接各种类型的数据库,包括 SqlServer、MySql 等。在本文中,我们将使用 Microsoft 的 SqlServer JDBC 驱动程序来连接 SqlServer 数据库。 在 ...
7. Java 语言中的数组元素下标总是从 0 开始,下标可以是整数或整型表达式。( 对 ) 这道题目考察了Java中的数组机制。Java中的数组元素下标总是从0开始,可以使用整数或整型表达式作为下标。 8. Applet 是一种...