Java 方法

方法是一段代码,只在调用时运行。

可以将数据(称为参数)传递到方法中。

方法用于执行某些操作,方法也被称为函数。

为什么使用方法?重用代码: 定义代码一次,可以使用多次。

创建方法

方法必须在类中声明。声明时,方法名后面跟着括号 ()。Java提供了一些预定义的方法,比如System.out.println()

下面的例子定义自己的方法,执行某些操作:

示例

在MyClass中创建一个方法:

public class MyClass {
  static void myMethod() {
    // 要执行的代码
  }
}
  • myMethod() 是方法的名称
  • static 意味着方法属于MyClass类,而不是MyClass类的对象。在本教程的后面,你将学习更多对象、对象方法等相关知识。
  • void 表示该方法没有返回值。在本章后面,你将学习更多关于返回值的知识

调用方法

要调用Java中的方法,写下方法的名称,后跟圆括号()和分号;

在下面的例子中,调用myMethod()方法打印文本:

示例

main内部,调用myMethod()方法:

public class MyClass {
  static void myMethod() {
    System.out.println("我被执行了!");
  }

  public static void main(String[] args) {
    myMethod();
  }
}

// 输出 "我被执行了!"

方法可以被调用多次:

示例

public class MyClass {
  static void myMethod() {
    System.out.println("我被执行了!");
  }

  public static void main(String[] args) {
    myMethod();
    myMethod();
    myMethod();
  }
}

// 我被执行了!
// 我被执行了!
// 我被执行了!

方法参数

数据可以作为参数传递给方法。在方法中参数充当变量。

参数在方法名后面的圆括号中指定。你可以添加任意数量的参数,只需用逗号分隔即可。

下面的示例中,myMethod方法将一个名为fname的字符串作为参数。当方法被调用时,向方法传递一个名字,这个名字在方法中用于打印全名:

示例

public class MyClass {
  static void myMethod(String fname) {
    System.out.println("张" + fname);
  }

  public static void main(String[] args) {
    myMethod("三丰");
    myMethod("翠山");
    myMethod("无忌");
  }
}
// 张三丰
// 张翠山
// 张无忌

返回值

上面例子中,使用的void关键字,表示方法没有返回值。如果想让方法返回一个值,可以使用一个基本类型(如int, char等)来代替void,并在方法中使用return关键字:

示例

public class MyClass {
  static int myMethod(int x) {
    return 5 + x;
  }

  public static void main(String[] args) {
    System.out.println(myMethod(3));
  }
}
// 输出 8 (5 + 3)

下面这个例子,返回一个方法的两个参数之和:

示例

public class MyClass {
  static int myMethod(int x, int y) {
    return x + y;
  }

  public static void main(String[] args) {
    System.out.println(myMethod(5, 3));
  }
}
// 输出 8 (5 + 3)

还可以将结果存储在一个变量中(推荐):

示例

public class MyClass {
  static int myMethod(int x, int y) {
    return x + y;
  }

  public static void main(String[] args) {
    int z = myMethod(5, 3); // 结果存储到一个变量
    System.out.println(z);
  }
}
// Outputs 8 (5 + 3)

一个带有If…Else的方法

方法中使用if...else很平常:

示例

public class MyClass {

  // 创建checkAge()方法,方法有一个整型参数:age
  static void checkAge(int age) {

    // 如果年龄小于18岁,打印“拒绝访问”
    if (age < 18) {
      System.out.println("拒绝访问 - 年龄太小!"); 

    // 如年龄大于18岁,打印“允许访问”
    } else {
      System.out.println("允许访问 - 年龄合格!"); 
    }

  } 

  public static void main(String[] args) { 
    checkAge(20); // 调用checkAge方法,并向它传递年龄为20的值
  } 
}

// 输出 "允许访问 - 年龄合格!"


浙ICP备17015664号 浙公网安备 33011002012336号 联系我们 网站地图  
@2019 qikegu.com 版权所有,禁止转载