方法就是程序中一段可重复调用的代码。
注意:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

       现在所说的方法是指可以由main方法直接调用的方法。
public class Demo23{

         public static void main(String args[]){

                   fun() ;

                   fun() ;

                   fun() ;

         }

         public static void fun(){

                   System.out.println("hello world!!!") ;

         }

};

 

方法的操作一般分为有返回值和没有返回值的方法,如果方法没有返回值
则按照以下的格式编写方法名称,如上面所示:
       public static void(无返回值) 方法名称(){}

 

方法也可以有返回值,有返回值的方法直接在返回值的类型上写名返回的类型即可。
例如,完成一个两个数相加的方法:
       如果要两个数相加,则肯定要在方法中传递两个数字,之后将这两个数字的操作结果返回。
public class Demo23{

         public static void main(String args[]){

                   int x = add(10,20) ;

                   System.out.println(x) ;

         }

         public static int add(int i,int j){

                   int t = i + j ;

                   return t ;

         }

};

 

在方法中有一个最重要的概念,称为方法的重载
       重载:方法名称相同,但是参数的类型或个数不同,此时称为方法的重载,调用时,会自动根据参数的类型或个数进行区分。
       例如:完成两个数字相加的操作,可能是两个小数,也可能是两个整数。此时就可以使用方法的重载完成。
public class Demo24{

         public static void main(String args[]){

                   float x = add(<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />10.0f,20.0f) ;

                   System.out.println(x) ;

         }

         public static int add(int i,int j){

                   int t = i + j ;

                   System.out.println(" 两个整数相加。 ") ;

                   return t ;

         }

         public static float add(float i,float j){

                   float x = i + j ;

                   System.out.println(" 两个小数相加。 ") ;

                   return x ;

         }

};

 

但是,观察以下代码是否是重载:
public class Demo25{

         public static void main(String args[]){

                   float x = add(10,20) ;

                   System.out.println(x) ;

         }

         public static int add(int i,int j){

                   int t = i + j ;

                   System.out.println(" 两个整数相加。 ") ;

                   return t ;

         }

         public static float add(int j,int k){

                   float x = k + j ;

                   System.out.println(" 两个小数相加。 ") ;

                   return x ;

         }

};

 

       方法的重载是依靠参数来区分的,参数的类型和个数的不同,直接与重载的实现有关,而不是看方法的返回值类型。

 

方法中也可以接收数组,如果接收的是数组,则必须在参数上明确的写出数组的形式。
public class Demo26{

         public static void main(String args[]){

                   int x[] = {1,2,43,45,5,6,76,78,8,89,9} ;

                   print(x) ;

         }

         public static void print(int temp[]){

                   for(int i=0;i<temp.length;i++){

                            System.out.println(temp[i]) ;

                   }

         }

};

 

方法也可以返回一个数组
public class Demo26{

         public static void main(String args[]){

                   int x[] = init() ;

                   print(x) ;

         }

         public static void print(int temp[]){

                   for(int i=0;i<temp.length;i++){

                            System.out.println(temp[i]) ;

                   }

         }

         public static int[] init(){

                   int y[] = {1,2,43,45,5,6,76,78,8,89,9} ;

                   return y ;

         }

};