1.方法:
定义:一个方法就是一个功能,将一段代码打包,让这段代码可以反复使用
方法的定义
1.无参数无返回值的方法
修饰符 返回值类型 方法名(){
方法体
return;
}
2.带参数的方法:
public static void 方法名(参数列表){
方法体
return;
}
3.空参数有返回值的函数
public static 返回值数据类型 方法名(){
方法体;
return 返回值;
}
4.定义方法的完整格式:
修饰符 返回值类型 方法名(参数列表){
方法体;
return 返回值;
}
修饰符:固定写法 public static
返回值类型:方法返回数据的数据类型 如果没有返回值 则写void
返回值类型可以实任意类型 基本类型和引用类型
方法名:我们自定义的名字
参数列表:方法需要的数据 先定义变量代替使用时传入的参数
先使用变量完成代码的逻辑 称为形参
方法体:方法中的内容
return:结束方法,方法遇到return就结束,如果有返回值,通过return返回
返回值:方法需要返回的数据,一个方法一次最多返回一个数据 如果想返回多的数据
可将多个数据放到容器中,将容器返回
方法的调用;
方法名();
注意事项:
1.定义方法没有先后顺序
2.方法不可以嵌套定义,所有方法都是同级别的,都定义在类中
3.方法定义就是为别人调用,如果不调用没有任何意义,方法之间可以互相调用
调用的格式:
方法名(实际参数)
如果方法有返回值 可以定义变量接收 如果没有返回值 则不能接收
如果方法有参数则调用时需要指定实际参数 参数的顺序必须保持一致
EXP:
public class Demo04_Method {
public static void main(String[] args) {
System.out.println(getSum2(100));
System.out.println("--------------------");
System.out.println(getJuXing(5,6));
System.out.println("--------------------");
System.out.println(getMax(10.5,2.2));
System.out.println("--------------------");
System.out.println(getOuShu(10));
}
//定义一个两个整数求和的方法
public static int getSum(int a,int b){
return a+b;
}
//定义一个方法求1-你的和
public static int getSum2(int n){
int sum = 0;
for (int i = 1; i <= n ; i++) {
sum+=i;
}
return sum;
}
//定义一个方法 返回m行n列的矩形
public static String getJuXing(int m,int n){
String s = "";
for (int i = 1; i <= m; i++) {
for (int j = 1; j <= n; j++) {
s+="*";
}
s+="\r\n";
}
return s;
}
//定义一个方法 返回两个小鼠的最大值
public static double getMax(double a,double b){
if(a>b){
return a;
}
else{
return b;
}
}
//判断一个数是否是偶数,如果是返回true,否返回false
public static boolean getOuShu(int a){
if(a%2 == 0){
return true;
}
else{
return false;
}
}
}
2.方法的重载:
方法重载
同一个类中 方法名相同 参数列表不同的方法 就叫做方法重载
参数列表不同:
个数不同
类型不同
顺序不同
需要注意:方法重载与 方法名 参数列表有关 与返回值类型无关
EXP:
public class Test01 {
public static void main(String[] args) {
System.out.println(sum());
System.out.println(sum(50));
System.out.println(isEqual(4,5));
System.out.println(isEqual(4.4,5.5));
System.out.println(isEqual('a','b'));
}
//以重载的方式 定义两个方法 1-100的和 1-n的和
public static int sum(){
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum+=i;
}
return sum;
}
//
public static int sum(int a){
int sum = 0;
for (int i = 1; i <= a ; i++) {
sum+=i;
}
return sum;
}
//以重载的形式定义方法 判断两个整数是否相同 判断两个小数是否相同 判断两个字符串是否相同 返回布尔类型
public static boolean isEqual(int a,int b){
if(a == b){
return true;
}
else{
return false;
}
}
//
public static boolean isEqual(double a,double b){
return a == b;
}
//
public static boolean isEqual(String a,String b){
return a == b;
}
}