1. 语法
[修饰符] 返回值类型 方法名(形参列表){
逻辑主体
}
public class TestMethod01{
public static int add(int num1, int num2){
int sum=0;
sum += num1;
sum += num2;
return sum;
}
public static void main(String[] args){
int sum1 = add(10, 20);
System.out.println("sum1:"+sum1);
int sum2 = add(30, 90);
System.out.println("sum2:"+sum2);
}
}
总结:
- 修饰符:面向对象章节讲解
- 返回值的类型:
byte short int long float double char boolean + 引用数据类型 - 如果没有返回值 return 可以不写 返回值的类型则为void
2. 练习 猜我心中的数
import java.util.Scanner;
public class TestMethod02{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个1-6的整数:");
int input = sc.nextInt();
System.out.println("您输入的是:"+input);
//调用方法
guessNum(input);
}
public static void guessNum(int num1){
// 我心中的数是1-6随机产生的
int myNum = (int)(Math.random()*6)+1;
System.out.println("我心中的数是:"+myNum);
if (num1==myNum){
System.out.println("您猜对了");
}else{
System.out.println("您猜错了!!!");
}
}
}
3. 练习 两个数是否交换成功
public class TestMethod03{
public static void main(String[] args){
int a = 10;
int b = 20;
System.out.println("交换前的两个数 a:"+a+" b:"+b);
exchangeNum(a, b);
System.out.println("交换前的两个数 a:"+a+" b:"+b);
}
public static void exchangeNum(int num1, int num2){
int tmp;
tmp = num1;
num1 = num2;
num2 = tmp;
System.out.println("完成交换!");
}
}
4. 什么是方法的重载
同一个 类中 定义了多个名字相同的方法, 但是参数不同,调用的时候会根据参数的类型自动匹配加载对应的方法
- 参数的类型 参数的个数 参数的顺序
- 返回值不同不构成方法的重载
int a(String str){} 与 void a(String str){} - 形参的名字不同 也不构成
int a(String str){} 与 int a(String s){}