Java方法如何定义与使用
发表于:2024-11-22 作者:千家信息网编辑
千家信息网最后更新 2024年11月22日,这篇文章主要介绍了Java方法如何定义与使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java方法如何定义与使用文章都会有所收获,下面我们一起来看看吧。一、方法的基本
千家信息网最后更新 2024年11月22日Java方法如何定义与使用
这篇文章主要介绍了Java方法如何定义与使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java方法如何定义与使用文章都会有所收获,下面我们一起来看看吧。
一、方法的基本用法
1.1 什么是方法(method)
方法就是一个代码片段. 类似于 C 语言中的 "函数"。方法可以把它理解为一个功能,这个功能是可以重复使用的。
1.2 方法定义语法
目前来说写任何方法的时候都写成:
pubiic static 返回值 返回名称(形式参数列表){
函数体/方法体
}
代码举例:求1-n的和
/** * 求我们1-n的和 * 函数名字必须采用小驼峰 * @param n 输入一个数字 */ public static int sumAdd(int n){ int sum = 0; for(int i = 1;i <= 10;i++){ sum += i; } return sum; } public static void main(String[] args) { int ret = sumAdd(10);//方法的调用 }
画图讲解:
函数返回值的链式调用:
还是按照上面的例子给大家举例一下:
/** * 求我们1-n的和 * 函数名字必须采用小驼峰 * @param n 输入一个数字 */ public static int sumAdd(int n){ int sum = 0; for(int i = 1;i <= 10;i++){ sum += i; } return sum; } public static void main(String[] args) { int ret = sumAdd(10);//方法的调用 System.out.println(sumAdd(10)*2);//函数的返回值,支持链式调用 }
画图讲解:
在Java里面没有函数声明,不管你的函数在main函数的上面还是在下面,都可以调用
1.3方法的开辟
函数开辟内存空间叫做函数栈帧,每个函数调用的时候都会开辟栈帧,属于这个函数的内存
函数在内存空间是如何调用的:
举例:用函数的方法求n的阶乘之和
用函数的方法求n的阶乘之和public static int Fac(int n) { int sum = 1; for (int i = 1; i <= n; i++) { sum = sum * i; } return sum; } /** * 求n的阶乘之和 * @param */ public static int facSum(int n){ int ret = 0; for (int i = 1;i <= n; i++){ ret = ret + Fac(i); } return ret; } public static void main(String[] args) { System.out.println(facSum(5)); }}
1.Java无法通过传地址的方式交换两个值的变量,后续会讲怎么做public class TestDemo { public static void swap(int a,int b){//交换两个变量的值 int tmp = a; a = b; b = tmp; } public static void main(String[] args) { int a = 10; int b = 10; System.out.println("交换实参前:"+a+" " +b); swap(&a,b);//Java是做不到取地址的,如果想要写一个函数交换两个数的的值,只能把a和b的值放到堆上 System.out.println("交换实参后:"+a+" " +b); }}
二、方法的重载
有些时候我们需要用一个函数同时兼容多种参数的情况, 我们就可以使用到方法重载
画图讲解:
方法的名字都叫 add. 但是有的 add 是计算 int 相加, 有的是 double 相加; 有的计算两个数字相加, 有的是计算三个数 字相加. 同一个方法名字, 提供不同版本的实现, 称为 方法重载
三、方法的使用
例题:用函数方式编写代码模拟三次登录场景
public static void login(){ int count = 3; Scanner scanner = new Scanner(System.in); while(count != 0){ System.out.println("请输入你的密码"); String password = scanner.nextLine(); if(password.equals("123456")){//equals的返回值是true或者false System.out.println("登录成功了"); break; }else{ count--; System.out.println("你输错密码了,你还有"+count+"次机会"); } } } public static void main(String[] args) { login(); }
例题:函数求水仙花数
求水仙花数 public static void findNum(int n){ for (int i = 1; i <=n; i++) { int count = 0;//数字的位数 int tmp = i; while(tmp != 0){ count++; tmp = tmp/10; } tmp = i; int sum = 0; while(tmp != 0){ sum += Math.pow(tmp,count); tmp/=10; } if(sum == i){ System.out.println(i); } } } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); findNum(n); }
例题:求奇数位于偶数之前
调整数组顺序使得奇数位于偶数之前,调整之后,不关心大小顺序public class TestDemo { public static void main(String[] args) { int[]arr = {1,2,3,4,5,6,7,8,9}; int left = 0; int right = arr.length-1; while(left < right){ while(left < right && arr[left] % 2 != 0){ left++; } while(left < right && arr[right] % 2== 0){ right--; } int tmp = arr[left]; arr[left] = arr[right]; arr[right] = tmp; } for (int i = 0; i例题: 函数求三个数的最大值
1.用函数求三个数的最大值public class TestDemo { public static int Max(int a,int b){ return a > b? a : b; } public static int Max1(int a,int b,int c){ return Max(Max(a,b),c); } public static void main(String[] args) { System.out.println(Max1(4, 6, 8)); } }关于"Java方法如何定义与使用"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"Java方法如何定义与使用"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。
方法
函数
两个
例题
名字
数字
个数
之和
代码
内存
时候
知识
阶乘
输入
最大
有的是
仙花
偶数
内容
功能
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
苏州通信网络技术常见问题
绍兴橙猫网络技术有限公司
奉贤区网络技术服务咨询热线
互联网络安全进课堂心得体会
方舟加入服务器闪退
ic基带软件开发考试题
股票软件开发公司简介
习信网网络安全知识
数据库冷热算法
怎样压缩后缀DB数据库
如何辨别软件开发公司的实力
机架式服务器连接图
软件开发jave和net
宝山区工商软件开发价格表格
饥荒联机版怎么启动专用服务器
腾讯云服务器镜像选宝塔吗
新能源网络技术型号
帝国神话当前服务器等级什么意思
数据库中物理优化
黑暗与光明怎么登陆服务器
会计网络技术和计算机的区别
五家渠手机软件开发
c#数据库access
网络安全中nat的应用
战网无法连接服务器
三峡大学图书馆数据库
游戏连接服务器失败是怎么回事
关于云服务器租赁采购讨论事宜
全球主根服务器
网络技术服务资金下限