1、方法定义
格式:
public static void 方法名(){
//方法体
}
2、方法调用
格式:方法名();
public class helloworld {
public static void main(String[] args) {
isEvenNumber();//方法调用
}
//定义一个方法;定义一个变量,判断是否为偶数
public static void isEvenNumber() {
int number = 10;
//判断是否为偶数
if(number % 2 == 0)
{
System.out.println(true);
}
else
{
System.out.println(false);
}
}
}
注:方法必须先定义,在调用;否则会报错
3、带参数的方法定义和调用
public static void 方法名(参数){…}
//参数中的数据类型和参数不能少,多个参数用,隔开
方法名(参数);
//方法调用时,参数的数量和类型必须和定义的保持一致
public class helloworld {
public static void main(String[] args) {
//常量调用
//isEvenNumber(5);//方法调用
//变量调用
int number = 10;
isEvenNumber(number);
}
public static void isEvenNumber(int number) {
//判断是否为偶数
if(number % 2 == 0)
{
System.out.println(true);
}
else
{
System.out.println(false);
}
}
}
4、带返回值的方法定义和调用
public static 数据类型 方法名(参数){
return 数据;
}
数据类型 变量名 = 方法名(参数);
public class helloworld {
public static void main(String[] args) {
int number = 10;
boolean flag = isEvenNumber(number);
System.out.println(flag);
}
//定义一个方法:接受一个参数,判断是否为偶数
public static boolean isEvenNumber(int number) {
//判断是否为偶数
if(number % 2 == 0)
{
return true;
}
else
{
return false;
}
}
}
5、方法重载
同一个类中定义的多个方法之间的关系
多个方法在同一个类中
多个方法的参数不同,类型不同或者数量不同
多个方法具有相同的方法名
//不能根据返回值,判断是否重载;
public static int sum(int a, int b){
return a+b;
}
public static double sum(double a, double b){
return a+b;
}
public static int sum(int a, int b,int c){
return a+b+c;
}
public class helloworld {
public static void main(String[] args) {
System.out.println(compare(10,20));
System.out.println(compare((byte)10,(byte)20));
System.out.println(compare((short)10,(short)20));
System.out.println(compare(10l,20l));
}
public static boolean compare(int a,int b) {
System.out.println("int");
return a == b;
}
public static boolean compare(byte a,byte b) {
System.out.println("byte");
return a == b;
}
public static boolean compare(short a,short b) {
System.out.println("short");
return a == b;
}
public static boolean compare(long a,long b) {
System.out.println("long");
return a == b;
}
}
6、方法的参数传递
对于基本数据类型的参数,形式参数的改变,不影响实际参数的值
public class helloworld {
public static void main(String[] args) {
int number = 100;
System.out.println("调用change方法前:"+number);
change(number);
System.out.println("调用change方法后:"+number);
}
public static void change(int number) {
number = 200;
}
}
调用change方法前:100
调用change方法后:100
对于引用类型的参数,形式参数的改变,影响实际参数的值
public class helloworld {
public static void main(String[] args) {
int[] arr = {10,20,30};
System.out.println("调用change方法前:"+arr[1]);
change(arr);
System.out.println("调用change方法后:"+arr[1]);
}
public static void change(int[] arr) {
arr[1] = 200;
}
}
调用change方法前:20
调用change方法后:200