图丨pixabay
作者: 追梦
原文链接:http://i8n.cn/7RTgww
Java方法是语句的集合,它们在一起执行一个功能。方法是解决一类问题的步骤的有序组合,方法包含于类或对象中,方法在程序中被创建,在其他地方被引用。
简单的说:方法就是完成特定功能的代码块
在很多语言里面都有函数的定义,函数在Java中被称为方法
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
函数体;
return 返回值;
}
举例子:
package com.baidu.Demo;
public class DemoMethod {
public static void main(String[] args) {
}
public static int getSum(int a,int b){
int result = a + b;
return result;
}
}
有些是没有返回值的
public static
1,求两个数据之和
package com.baidu.Demo;
public class DemoMethod {
public static void main(String[] args) {
//方法一:输出调用
//System.out.println(getSum(10,20));
//方法二:赋值调用
int result = getSum(10,20);
System.out.println(result);
}
public static int getSum(int a,int b){
int result = a + b;
return result;
}
}
2,过程图解
3,键盘录入两个数据,返回两个数中的较大值
package com.baidu.Demo;
import java.util.Scanner;
public class methodTest {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.print("请输入两个数:");
int a=sc.nextInt();
int b=sc.nextInt();
System.out.println("最大值是:"+getMax(a,b));
}
public static int getMax(int x,int y){
if(x>y)
return x;
return y;
}
}
4,键盘录入两个数据,比较两个数是否相等
package com.baidu.Demo;
import java.util.Scanner;
public class methodTest {
public static void main(String[] args) {
Scanner sc =new Scanner(System.in);
System.out.println("请输入第一个数据");
int a=sc.nextInt();
System.out.println("请输入第二个数据");
int b=sc.nextInt();
boolean falg=getCompare(a,b);
System.out.println("这两个数:"+falg);
}
public static boolean getCompare(int a,int b){
return a==b;
}
}
1,方法重载概述
在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。
2,方法重载特点
与返回值类型无关,只看方法名和参数列表
参数列表的不同,指的是参数个数不同和类型不同
在调用时,虚拟机通过参数列表的不同来区分同名方法
public static int sum(int a,int b){
return a+b;
}
public static int sum(int a,int b,int c){
return a+b+c;
}
public static double sum(int a,int b,double c){
return a+b+c;
}
1,计算两个数据之和,参数类型分别为两个byte类型,两个short类型,两个int类型,两个long类型
package com.baidu.Demo;
import org.omg.PortableInterceptor.SYSTEM_EXCEPTION;
public class MedthodTest {
public static void main(String[] args) {
System.out.println(sum(10,23));
System.out.println(sum((byte)10,(byte)23));
System.out.println(sum((short)10,(short)23));
System.out.println(sum(10l,23l));
}
public static byte sum(byte b1,byte b2){
System.out.println("byte---");
return (byte)(b1+b2);
}
public static short sum(short s1,short s2){
System.out.println("short---");
return (short)(s1+s2);
}
public static int sum(int i1,int i2){
System.out.println("int---");
return (i1+i2);
}
public static long sum(long l1,long l2){
System.out.println("long---");
return (l1+l2);
}
}
1,java方法参数的值传递,形式参数的改变不影响实际参数的数据值
package com.baidu.Demo;
public class args {
public static void main(String[] args) {
int a=10;
int b=20;
System.out.println("a"+a+"|"+"b"+b);//10 20
chang(a,b);
System.out.println("a"+a+"|"+"b"+b);//10 20
}
public static void chang(int a,int b){
System.out.println("a"+a+"|"+"b"+b);//10 20
a=b; //20
b=a+b; //30
System.out.println("a"+a+"|"+"b"+b);//20 40
}
}
2,图解
3,java 方法参数的引用传递 那么形式参数的改变会影响实际参数
package com.baidu.Demo;
public class args {
public static void main(String[] args) {
int[] arr={12,6,2,8,3};
for (int i = 0; i <arr.length ; i++) {
System.out.println(arr[i]);
}
chang(arr);
for (int i = 0; i <arr.length ; i++) {
System.out.println(arr[i]);
}
}
public static void chang(int[] arr){
for (int i = 0; i <arr.length ; i++) {
if(arr[i]%2==0)
arr[i]=-1;
}
}
}
4,图解
形式参数 用于接收实际参数的变量
实际参数 实际参与运算的变量
在java中重载与重写的区别
重载(Overload)
重写(Override)---面向对象
所有巧合的是要么是上天注定要么是一个人偷偷的在努力。
结束!
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有