Java中的方法
目录
概述
方法的定义和调用
带参数方法的定义和调用
带返回值方法的定义和调用
方法的注意事项
方法重载
方法的参数传递
public static void 方法名(){
//方法体
}
例:
public static void getSum(){
//方法体
}
方法名();
例:
getSum();
import java.util.Scanner;
public class day_006 {
public static void main(String[] args) {
//方法调用
getSum();
}
//方法定义
public static void getSum() {
Scanner sc = new Scanner(System.in);
//定义两个变量,从键盘输入
System.out.println("请输入两个整数:");
int a = sc.nextInt();
int b = sc.nextInt();
int sum = a + b;
System.out.println("sum = " + sum);
}
}
带参数方法的定义和调用
public class day_006 {
public static void main(String[] args) {
//方法调用
getSum(2, 3);
}
//方法定义
public static void getSum(int number1, int number2) {
int sum = number1 + number2;
System.out.println("sum = " + sum);
}
}
带返回值方法的定义和调用
public class day_006 {
public static void main(String[] args) {
//方法调用
int result = getMax(2, 3);
System.out.println(result);
System.out.println(getMax(23, 12));
}
//方法定义
public static int getMax(int number1, int number2) {
if (number1 > number2) {
return number1;
} else {
return number2;
}
}
}
方法的注意事项
//方法定义
//不能嵌套定义,此种用法错误
public static int getMax(int a, int b) {
//方法体
public static int getSum ( int m, int n){
//方法体
}
}
//正确用法
public static int getMax(int a, int b) {
//方法体
}
public static int getSum ( int m, int n){
//方法体
}
//void表示无返回值,可以省略return,也可以单独书写return,后面不加数据
//正确
public class day_006 {
public static void main(String[] args) {
//代码
}
}
//正确
public class day_006 {
public static void main(String[] args) {
//代码
return;
}
}
//错误
public class day_006 {
public static void main(String[] args) {
//代码
return 20;
}
}
方法重载
//错误,方法名相同,参数相同
public class day_006 {
public static void ff(int m) {
//方法体
}
public static int ff(int m) {
//方法体
}
}
//正确,方法名相同,参数数量不同
public class day_006 {
public static void ff(int m) {
//方法体
}
public static int ff(int m,int n) {
//方法体
}
}
//正确,方法名相同,参数类型不同
public class day_006 {
public static void ff(int m) {
//方法体
}
public static int ff(double m) {
//方法体
}
}
//错误,方法名相同,参数不同,但不在同一个类中
public class day_006 {
public static void ff(int m) {
//方法体
}
}
public class day_006_1 {
public static int ff(double m) {
//方法体
}
}
方法的参数传递
public class day_006 {
public static void main(String[] args) {
int a = 10;
System.out.println("调用方法前:" + a);
change(a);
System.out.println("调用方法后:" + a);
}
public static void change(int a) {
a = 20;
}
}
public class day_006 {
public static void main(String[] args) {
int[] arr = {10, 20};
System.out.println("调用方法前:" + arr[0]);
change(arr);
System.out.println("调用方法后:" + arr[0]);
}
public static void change(int[] arr) {
arr[0] = 24;
}
}
评论