java方法:MethodTest(07)
2021/9/25 20:12:14
本文主要是介绍java方法:MethodTest(07),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
// 大家分析以下代码,编译器会报错吗? public class MethodTest07{ public static void main(String[] args){ // 调用方法 int result = m(); System.out.println(result); // 1 // 调用x方法 int result1 = x(true); System.out.println("result1 = " + result1); // 再次调用x方法 int result2 = x(false); System.out.println("result2 = " + result2); } //错误: 缺少返回语句 /* public static int m(){ boolean flag = true; //编译器不负责运行程序,编译器只讲道理。 // 对于编译器来说,编译器只知道flag变量是boolean类型 // 编译器会认为flag有可能是false,有可能是true if(flag){ // 编译器觉得:以下这行代码可能会执行,当然也可能不会执行 // 编译器为了确保程序不出现任何异常,所以编译器说:缺少返回语句 return 1; } } */ // 怎么修改这个程序呢? // 第一种方案:带有else分支的可以保证一定会有一个分支执行。 /* public static int m(){ boolean flag = true; if(flag){ return 1; }else{ return 0; } } */ // 第二种方案:该方案实际上是方案1的变形。 // return语句一旦执行,所在的方法就会结束。 /* public static int m(){ boolean flag = true; if(flag){ return 1; } return 0; } */ /* // 在同一个域当中,"return语句"下面不能再编写其它代码。编写之后编译报错。 public static int m(){ boolean flag = true; if(flag){ return 1; //错误: 无法访问的语句 //System.out.println("hello1"); } // 这行代码和上面的代码hello1的区别是:不在同一个域当中。 //System.out.println("hello2"); return 0; // 错误: 无法访问的语句 //System.out.println("hello3"); } */ // 三目运算符有的时候会让代码很简练。 public static int m(){ boolean flag = true; return flag ? 1 : 0; } // 带有一个参数的方法。 public static int x(boolean flag){ return flag ? 1 : 0; } }
这篇关于java方法:MethodTest(07)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-29RocketMQ底层原理资料详解:新手入门教程
- 2024-11-29RocketMQ源码资料解析与入门教程
- 2024-11-29[开源]6.1K star!这款电视直播源神器真的太赞啦!
- 2024-11-29HTTP压缩入门教程:轻松提升网页加载速度
- 2024-11-29JWT开发入门指南
- 2024-11-28知识管理革命:文档软件的新玩法了解一下!
- 2024-11-28低代码应用课程:新手入门全攻略
- 2024-11-28哪些办公软件适合团队协作,且能够清晰记录每个阶段的工作进展?
- 2024-11-28全栈低代码开发课程:零基础入门到初级实战
- 2024-11-28拖动排序课程:轻松掌握课程拖动排序功能