java之方法和数组

方法

方法:就是将一个功能抽取出来,把代码单独定义在一个大括号内,形成一个单独的功能。当我们需要这个功能的时候,就可以去调用。这样即实现了代码的复用性,也解决了代码冗余的现象。

方法的语法

方法的格式:

1 修饰符 返回值类型 方法名 (参数列表){
2     代码...  (方法体)            
3     return ;       
4

注意:

  修饰符:目前就记为 public static

  返回值类型:就是基本数据类型

  方法名:要符合小驼峰命名法

  参数列表:格式:数据类型 变量名

  return:return后面返回的类型要和返回值类型相同

方法的调用格式:

1 方法一:方法名 (实参);
2 
3 方法二:System.out.println(方法名 (实参));
4 
5 方法三:数据类型 变量名 = 方法名 (实参);

方法的示例代码:

 1     public static int method1() {
 2         return 10;
 3     }
 4 
 5     public static void method2() {
 6         // return 10; // 错误的写法!方法没有返回值,return后面就不能写返回值。
 7         return; // 没有返回值,只是结束方法的执行而已。
 8     }
 9 
10     public static void method3() {
11         System.out.println("AAA");
12         System.out.println("BBB");
13         // return; // 最后一行的return可以省略不写。
14     }
15 
16     public static int getMax(int a, int b) {
17         /*
18         int max;
19         if (a > b) {
20             max = a;
21         } else {
22             max = b;
23         }
24         return max;
25         */
26 
27         // 简化为
28         if (a > b) {
29             return a;
30         } else {
31             return b;
32         }
33     }
View Code

方法的注意事项:

1.定义位置,必须在类中而且必须在其它方法外面

2.返回值类型,必须要和 return 语句返回的类型相同,否则编译失败 。

3. 方法定义之后不会执行,如果希望执行,一定要调用:单独调用、打印调用、赋值调用。

4. 如果方法有返回值,那么必须写上“return 返回值;”,不能没有。

5. return后面的返回值数据,必须和方法的返回值类型,对应起来。

6. 对于一个void没有返回值的方法,不能写return后面的返回值,只能写  return ;  或者不写 return。

7. 一个方法当中可以有多个return语句,但是必须保证同时只有一个会被执行到,两个return不能连写。

方法的重载

方法重载:指在同一个类中,允许存在一个以上的同名方法,只要它们的参数列表不同即可,与修饰符和返 回值类型无关。

参数列表不同:

1,个数不同

2,数据类型不同

3,顺序不同。

重载方法调用:JVM通过方法的参数列表,调用不同的方法。

重载代码示例:

 1     // 比较两个数据是否相等。
 2     // 参数类型分别为两个byte类型,两个short类型,两个int类型,两个long类型
 3     public static void main(String[] args) {
 4         byte a = 10;
 5         byte b = 20;
 6         System.out.println(isSame(a, b));
 7 
 8         System.out.println(isSame((short) 20, (short) 20));
 9 
10         System.out.println(isSame(11, 12));
11 
12         System.out.println(isSame(10L, 10L));
13     }
14 
15     public static boolean isSame(byte a, byte b) {
16         System.out.println("两个byte参数的方法执行!");
17         boolean same;
18         if (a == b) {
19             same = true;
20         } else {
21             same = false;
22         }
23         return same;
24     }
25 
26     public static boolean isSame(short a, short b) {
27         System.out.println("两个short参数的方法执行!");
28         boolean same = a == b ? true : false;
29         return same;
30     }
31 
32     public static boolean isSame(int a, int b) {
33         System.out.println("两个int参数的方法执行!");
34         return a == b;
35     }
36 
37     public static boolean isSame(long a, long b) {
38         System.out.println("两个long参数的方法执行!");
39         if (a == b) {
40             return true;
41         } else {
42             return false;
43         }
44     }
View Code

重载的多种形式

1     public static void open(){} // 正确重载
2     public static void open(int a){} // 正确重载
3     static void open(int a,int b){} // 代码错误:和第8行冲突
4     public static void open(double a,int b){} // 正确重载
5     public static void open(int a,double b){} // 代码错误:和第6行冲突
6     public void open(int i,double d){} // 代码错误:和第5行冲突
7     public static void OPEN(){} // 代码正确不会报错,但是并不是有效重载
8     public static void open(int i,int j){} // 代码错误:和第3行冲突
View Code

重载在源码中的使用

在调用输出语句的时候,println方法其实就是进行了多种数据类型的重载形式。

 1     public static void main(String[] args) {
 2         myPrint(100); // int
 3         myPrint("Hello"); // String
 4     }
 5 
 6     public static void myPrint(byte num) {
 7         System.out.println(num);
 8     }
 9 
10     public static void myPrint(short num) {
11         System.out.println(num);
12     }
13 
14     public static void myPrint(int num) {
15         System.out.println(num);
16     }
17 
18     public static void myPrint(long num) {
19         System.out.println(num);
20     }
21 
22     public static void myPrint(float num) {
23         System.out.println(num);
24     }
25 
26     public static void myPrint(double num) {
27         System.out.println(num);
28     }
29 
30     public static void myPrint(char zifu) {
31         System.out.println(zifu);
32     }
33 
34     public static void myPrint(boolean is) {
35         System.out.println(is);
36     }
37 
38     public static void myPrint(String str) {
39         System.out.println(str);
40     }
View Code

数组

--------

猜你喜欢

转载自www.cnblogs.com/yzy-kyk/p/12643501.html