Java中的return語句總是和方法有密切關系,return語句總是用在方法中,有兩個作用,一個是
返回方法指定類型的值(這個值總是確定的),一個是
結束方法的執行(僅僅一個return語句)。
在return語句的各類文章中,大多僅僅介紹了return語句用於有返回值(非void返回值)的方法中。而很少或沒有介紹
return語句在vodi返回值方法中的運用。
return語句用在非void返回值類型的方法中,不但能返回基本類型,還可以返回(包括用戶自定義類的)對象。
下面通過一個簡單例子說明一下:
public class TestReturn { public static void main(String args[]) { TestReturn t = new TestReturn(); t.test1(); t.test2(); } /** * 無返回值類型的return語句測試 */ public void test1() { System.out.println("---------無返回值類型的return語句測試--------"); for (int i = 1; ; i++) { if (i == 4) return; System.out.println("i = " + i); } } /** * 有返回值類型的return語句測試 * @return String */ public String test2(){ System.out.println("---------有返回值類型的return語句測試--------"); return "返回一個字符串"; } }
運行結果:
---------無返回值類型的return語句測試-------- i = 1 i = 2 i = 3 ---------有返回值類型的return語句測試-------- Process finished with exit code 0
if+return 也可以代替復雜的if...else語句進行程序流程的控制。用if+return代替if...else語句更清晰
例子:
package cn.xm.exam.test; import org.junit.Test; public class if_return { public static void main(String[] args) { test1("1"); System.out.println("-------華麗的分隔線--------------"); test1("8"); } public static void test1(String str) { if ("1".equals(str)) { System.out.println("輸入的參數是1"); return; } if ("2".equals(str)) { System.out.println("輸入的參數是2"); return; } if ("3".equals(str)) { System.out.println("輸入的參數是3"); return; } System.out.println("你輸入的不是123`````````"); // ...這里可以寫不滿足上述條件的處理 } }
輸入的參數是1
-------華麗的分隔線--------------
你輸入的不是123`````````