方法的概念

方法就是将功能重复的代码封装成一段独立的小程序,通过调用方法的方式以提高代码的复用性(减少代码重复)

复制代码

int year = 2020;
if ( year % 4 == 0  && year % 100 != 0 || year % 400 == 0)  {System.out.println(year + "是闰年!");
}year = 2052;
if ( year % 4 == 0  && year % 100 != 0 || year % 400 == 0)  {System.out.println(year + "是闰年!");
}

当需要判断两个年份是否为闰年时,以上代码存在代码重复。

方法的定义

复制代码

返回值类型 方法名 (参数类型 形式参数1,参数类型 形式参数2,…) {执行语句块;return 返回值;
}

  • 返回值类型: 方法输出数据的类型(如果方法没有返回值,则用关键字 void 来表示)
  • 方法名:类似变量名,可以自定义方法名(需符合 Java 标识符规则)
  • 形式参数:变量(用于存储调用方法输入的数据)
  • 实际参数:调用方法输入的数据
  • 返回值: 调用方法返回的数据

注意:main 方法是一个特殊方法,它是程序的入口方法,执行程序时会 JVM 会调用 main 方法。

案例

获取 2 个整数中的较大的数

复制代码

public static int getMax(int left, int right) {int max = 0;if (left > right) {max = left;} else {max = right;}return  max;}

方法的调用

  • 方法中可以调用其他方法
  • 方法中不能嵌套定义方法

复制代码

int numA = 20;
int numB = 30;
int max = getMax(numA, numB);  //调用定义的 getMax 方法,并将返回值赋给 max 变量

局部变量

局部变量指在方法中声明的变量,其作用范围仅限于方法中(局部变量在使用前必须进行初始化)

局部变量的特点

  • 生存时间:局部变量的生存时间和方法的生存时间一致,调用该方法声明该局部变量并初始化的时,该局部变量被创建并分配内存空间;直到该方法调用结束局部变量也就结束
  • 是否需要初始化:局部变量在使用前必须进行初始化,系统默认不会对局部变量进行初始化数据操作,如果局部变量在使用前没有进行初始化则会在编译器报错;如果局部变量进行了声明没有进行初始化, 但是也一直没有被使用的话编译也是不会报错的
  • 创建位置: 局部变量是创建在内存的栈区中

注意:main 方法也是方法,所以定义在 main 方法中的变量也是局部变量

形参与实参

  • 形参:方法中定义的数据类型变量
  • 实参:调用方法输入的变量或常量值

形参与实参是具有相同数据类型的不同变量,都存储于内存的栈区

内存划分

Java 内存划分区域:

  • 栈区:变量(基本类型变量和引用类型变量)
  • 堆区:对象(new 引用类型)

注意:内存划分为不同的区域,目的是便于数据的存储,提高同一类型数据的存取效率

方法的重载

方法的重载指的是在同一个类中,有一个以上的同名方法,但方法的参数个数或参数类型有所不同(与方法的返回值无关)

方法的重载存在的原因:为了增强方法的阅读性,优化程序设计

java 不存在数据返回的值是什么_Java方法相关推荐

  1. 数据添加成功自动返回php,laravel框架添加数据,显示数据,返回成功值的方法

    laravel框架添加数据的方式我这里使用的是model方式,此外还有一种是DB 因为from提交数据,laravel框架需要在from提交中添加一个token,所以这里接受数据也有好几种方式 我使用 ...

  2. java怎么把数据返回给客户端_将数据从Servlet返回到Java客户端

    您遇到了序列化问题.序列化是将某些数据转换为可以传输的格式的地方.有几种方法可以做到这一点,其他答案中提到了一些方法. 我建议使用JSON作为您的格式.你可以从json.org获得一个很好的Java ...

  3. 返回数据_多层数据返回匹配值

    ↑↑↑点击上方图片,了解详情 Access Switch函数示例,分享源码. 一.问题描述: 想实现如下功能,发现用iff嵌套方式太复杂,有没有更简单的方法?      A1≤750    返回5.0 ...

  4. Java处理JSON数据返回到前端的反斜杠

    一.场景简述 在写后端返回JSON数据到前端的时候,遇到了前端一直无法获得后端传输的数据,但实际已经后端已经传输到前端了.在看前端获取到后端返回的数据的时候发现JSON中含有反斜杠,如下图 想必一定是 ...

  5. java怎么把数据返回给客户端_java 服务器怎样给客户端传输数据

    服务器端源码: import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; im ...

  6. python返回长度值_Python 文件 truncate() 方法(截断返回截取长度)

    概述 Python 文件 truncate() 方法用于截断文件并返回截断的字节长度. 指定长度的话,就从文件的开头开始截断指定长度,其余内容删除:不指定长度的话,就从文件开头开始截断到当前位置,其余 ...

  7. java读取EXCEL数据变成科学计数法,解决方法

    1.如下图中的检测值存到数据库是科学计数法 2 经过代码处理后 3 只需要对你读到的字符串进行如下操作 BigDecimal bd = new BigDecimal("读到的值") ...

  8. java 返回布尔值_如何使用Java方法返回的布尔值?

    我有一个方法,发送一堆字符到另一个方法,如果某些字符存在,将返回true或false.一旦这个方法评估所有的字符,并为每个字符返回true或false,我如何在另一个方法中使用这些true或false ...

  9. es6去除重复项_javascript在ES6中从数组中筛选出重复项并仅返回唯一值

    这是从数组中筛选出重复项并仅返回唯一值的三种方法.我最喜欢的是使用Set,因为它是最短和最简单的. 1.使用Set 首先让我解释一下Set:Set是ES6中引入的新数据对象.因为Set仅允许您存储唯一 ...

最新文章

  1. Android开发笔记——常见BUG类型之内存泄露与线程安全
  2. nodejs源码—初始化
  3. Python模块: 文件和目录os+shutil
  4. SMTP、POP3、IMAP的区别
  5. 《从问题到程序:用Python学编程和计算》——1.2 Python语言简介
  6. sql机器学习服务_机器学习服务–在SQL Server中配置R服务
  7. POJ 1797 Heavy Transportation 最短路变形(dijkstra算法)
  8. vs2008+sqlserver2008 同一台服务器webconfig 数据连接串的配置要点
  9. 怎样用DNSPod做负载均衡?
  10. 值类型和引用类型传值通俗解析
  11. 美图秀秀怎么去水印-美图秀秀怎么去水印图片教程
  12. C语言学习7:ASCII码表及用法简介
  13. html前端论文参考文献,web前端论文参考文献
  14. Cognos函数(六) - total的使用
  15. Android各版本源码网盘下载(不断更新)
  16. 手机端微信发朋友圈功能测试点总结
  17. 云麦体脂秤华为体脂秤_如果是一个真正的体脂秤就好了:华为智能体脂秤
  18. android 九宫格图片选择(微信朋友圈) 图片预览 (底部recycleview 不卡顿)
  19. poj 1637 Sightseeing tour 混合欧拉 最大流
  20. FileReader的编码问题

热门文章

  1. 促销海报设计的套路你知道么? 看这里!
  2. 日料美食海鲜精品海报PSD分层模板,美味势不可挡
  3. UI设计中的弹窗设计素材,技巧快get起来
  4. pythontime库简单使用_Python time库基本使用方法分析
  5. 并行、并发和代码性能优化
  6. Dentry negativity/negative dentry
  7. 代码里经常看见idle,是什么意思
  8. 第一个Verilog程序
  9. oracle apex 链接,Oracle APEX 5.0 新手教程(七) URL格式说明
  10. Kotlin 基本数据类型(五)