什么是方法
方法就是一段可以重复调用的代码
在Java中,声明一个方法的具体语法格式如下:
修饰符 返回值类型 方法名 ({参数类型 参数名1,参数类型 参数名2,...}){ 执行语句 ... return 返回值; }
- 1
- 2
- 3
- 4
- 5
对于上面语法格式的具体说明如下:
修饰符:方法的修饰符比较多,有对访问权限进行限定的,有静态修饰符static,还有最终修饰符final等 返回值类型:用于限定方法返回值的数据类型 参数类型:用于限定调用方法时传入参数的数据类型 参数名:是一个变量,用于接收调用方法时传入的数据 return关键字:用于结束方法以及返回方法指定类型的值
- 1
- 2
- 3
- 4
- 5
注意:需要特别注意的是,方法中的 “参数类型 参数名1,参数类型 参数名2” 被称为参数列表,它用于描述方法在被调用时需要接收的参数。如果方法不需要接收任何参数,则参数列表为空,即()内不写任何内容。方法的返回值必须为方法声明的返回值类型,如果方法中没有返回值,返回值类型要声明为void,此时,方法中return语句可以省略
下面使用两种方法打印长方形
使用普通方法打印长宽不同的长方形
public class Example01 { public static void main(String[] args) { //下面的循环是使用*打印一个宽为5,高为3的矩形 for (int i = 0; i < 3; i++) { for (int j = 0; j < 5; j++) { System.out.print("*"); } System.out.println(); } //下面的循环是使用*打印一个宽为4,高为2的矩形 for (int i = 0; i < 4; i++) { for (int j = 0; j < 2; j++) { System.out.print("*"); } System.out.println(); } //下面的循环是使用*打印一个宽为10,高为6的矩形 for (int i = 0; i < 10; i++) { for (int j = 0; j < 6; j++) { System.out.print("*"); } System.out.println(); } } }
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
使用参数方法打印长宽不同的长方形
`public class Example02 {
public static void main(String[] args) {
printRectangle(3, 5);
printRectangle(2, 4);
printRectangle(6, 10);
}
public static void printRectangle(int height,int width) {
for (int i = 0; i < height; i++) {
for (int j = 0; j < width; j++) {
System.out.print("*");
}
System.out.print("n");
}
System.out.print("n");
}
}`
* 1
* 2
* 3
* 4
* 5
* 6
* 7
* 8
* 9
* 10
* 11
* 12
* 13
* 14
* 15
* 16
* 17
总结:做大量重复性的工作时可以使用参数方法会轻松许多
方法的重载
Java允许在同一个程序中定义多个名称相同的方法,但是参数的类型或个数必须不同,这就是方法的重载
值得注意的是,方法的重载与返回值类型无关,它需要满足满足两个条件,一是方法名相同,二是参数个数或参数类型不相同
示例:
public class Example01 {
public static void main(String[] args) {
//下面是针对求和方法的调用
System.out.println("sum1="+add(10, 20));
System.out.println("sum2="+add(10, 20, 30));
System.out.println("sum3="+add(10.25, 10.30));
}
//下面的方法实现了两个整数相加
public static int add(int x,int y) {
return x+y;
}
//下面的方法实现了三个整数相加
public static int add(int x,int y,int z) {
return x+y+z;
}
//下面的方法实现了两个小数相加
public static double add(double x,double y) {
return x+y;
}
}