`
maqianli
  • 浏览: 175159 次
  • 性别: Icon_minigender_1
  • 来自: 长春市
社区版块
存档分类
最新评论

Java 语言中的 return 语句

    博客分类:
  • Java
阅读更多

 众所周知,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:
            如果函数中创建了异常,并抛出,则该函数可以不返回值。

0
0
分享到:
评论

相关推荐

    JAVA心得分享---return语句的用法

    return算是各大语言的常客,基本上都有return语句,那么在JAVA中,return有什么特殊的地方吗,下面我们来分析下

    Java语言finally语句详解,finally到底是在return之前还是之后执行.zip

    Java语言finally语句详解,finally到底是在return之前还是之后执行.zip

    Java中break、continue、return语句的使用区别对比

    主要介绍了Java中break、continue、return语句的使用区别对比,本文用非常清爽简明的语言总结了这三个关键字的使用技巧,并用一个实例对比使用结果,需要的朋友可以参考下

    Java语言编码规范

    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语言与面向对象程序设计形考1-0001.docx

    B、变量在定义时可以没有初始值 C、变量一旦被定义,在程序中的任何位置都可以被访问 D、在程序中,可以将一个btye类型的值赋给一个int类型的变量,不需要特殊声明 java语言与面向对象程序设计形考1-0001全文共12页...

    125集专攻JAVA基础 JAVA零基础入门学习视频教程 动力节点JAVA视频教程.txt

    北京动力节点-Java编程零基础教程-005-Java语言概述-Java的诞生.mp4 北京动力节点-Java编程零基础教程-006-Java语言概述-Java的特点-面向对象.mp4 北京动力节点-Java编程零基础教程-007-Java语言概述-Java的特点-...

    第4章-Java面向对象程序设计-Java语言GUI程序设计-赵满来-清华大学出版社.pptx

    4.1 类的方法 4.1.1 方法的定义 [修饰符] 返回值类型 方法名(类型 参数名1, 类型 参数名2, ……) { // 这对大括号内是方法体 一些变量声明语句 一些执行语句 return 表达式; } 第4章-Java面向对象程序设计-Java语言...

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    在 java 语言中,Java 程序的基本单位是类,也就是说:一个 Java 程序是由多个类组成 的。定义一个类与定义一个数据类型是有区别的。在程序设计语言中,把定义数据类型的能 力作为一种很重要的能力来对待。在面向...

    minic_单词种别_hardlykv5_return_c词法结果输出_MiniC语言编译系统java实现_

    可分别通过词法、语法、语义分析输出<...能够翻译break、continue、return语句。可以检查赋值精度错误、函数参数类型不匹配错误、静态数组元素下标越界错误、break错误、continue错误、函数参数不匹配错误等

    java语言程序设计 java编程笔记 由浅入深的笔记 共32份 全套资源.rar

    return语句的例子.docx Scanner和if语法.docx static.docx 毕向东视频的笔记.docx 参数传递.docx 第二周所学总结.docx 反射机制.docx 泛型.docx 封装和继承以及多态部分.docx 接口和抽象类以及实现类.docx 枚举enum....

    JAVA阶段模拟试题

    19在Java语言的控制结构中,break语句是经常用到的语句。下面一段代码中break语句起到( )的作用。 (选择一项) int pointer=0; while(pointer){ switch(pointer%3){ case 1: pointer+=1; break; case 2: ...

    Java程序设计基础:定义方法-有返回值的方法定义.pptx

    方法(2)-有返回值的方法定义 方法—有返回值方法...图a中的代码没有逻辑错误,但编译不能通过,因为java编译器认为可能没有return语句。 注意 public static int sign(int n) { if (n > 0) return 1; else if (n ==

    Java2游戏编程.pdf

    本书将向读者展示用Java语言和它的类库创建2D游戏,所涉及的主题包括高速性能、双缓冲图像、动画、声音、媒体控制、I/O和网络支持等。将带领大家一步一步学习编写Java游戏,最终打造属于自己的Java游戏。 目录...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    对Java语言的每个语法都提供了一个或多个例程讲解 大量使用流程图表示程序的执行过程,使用结构图表示程序的内部状态 每章最后都给出了典型的练习题,让读者及时练习,巩固提高,并提供了参考答案 目录 第1篇 ...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    对Java语言的每个语法都提供了一个或多个例程讲解 大量使用流程图表示程序的执行过程,使用结构图表示程序的内部状态 每章最后都给出了典型的练习题,让读者及时练习,巩固提高,并提供了参考答案 目录 第1篇 ...

    Java问题宝典2012版

    38、try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? 27 39、下面的程序代码输出的结果是多少? 28 40、final, finally, finalize的区别。 30 ...

    北邮高级语言程序设计(基于Java)第三次阶段作业.docx

    ] 得分: [5] 试题分值: 5.0 提示: return语句____ 可以让方法返回数值 方法都必须包含 方法中不可以有多个return语句 不能用来返回对象 知识点: 第三单元过关自测 学生答案: [A;] 得分: [5] 试题分值: 5.0 提示: ...

    JAVA复习题及答案

    3、下列选项中,( )不属于Java语言的简单数据类型。 A.整数型 B.数组 C.字符型 D.浮点型 4、对于int a[ ]=new int[3],下列叙述错误的是( )。 A. a.length的值是3 B. a[1]的值是1 C. a[0]的值是0 D. a[a.length...

    JAVA--达内培训笔记

    java语言是先编译后解释,java源码是通过编译生成一种特殊的.class的中间字节码文件,然后再由JVM进行解释运行。 (编译) (解释) .java ----> .class ---> 可执行文件 所以效率低,是C++的20倍 5、java源...

    JAVA基础课程讲义

    JAVA语言应用范围 18 第一个JAVA程序 18 JAVA开发环境搭建 18 一个典型的JAVA程序的编写和运行过程 19 第一个程序常见错误 20 第一个JAVA程序的总结和提升 20 常用Java开发工具 20 常用dos命令 21 本章笔试作业 21 ...

Global site tag (gtag.js) - Google Analytics