簡體   English   中英

如何調用不返回任何內容的方法?

[英]How to call a method that doesn't return anything?

我正在嘗試調用此方法,該方法從用戶輸入中輸入坐標點。

public class Cases {

public static Result Case1(){
    Scanner in = new Scanner(System.in);
    System.out.println("Enter index: ");
    int i = in.nextInt(); //validate
    System.out.print("Enter integers x, y to replace: ");
    int x = in.nextInt();
    int y = in.nextInt();
    A[i] = new Point(x, y);

    if(occupancy<i)
        occupancy=i;
    }
}

但是我不知道如何使它工作,因為它不需要return語句。

這是我從主方法調用它的方式:

Result r = null;
r = Cases.Case1();

我希望將所有案例從switch語句轉換為這種單獨的方法,但我什至無法使其中的一種工作。 我想念什么?

Java中有一種聲明方法的結構。 文檔

...方法聲明按順序包含六個部分:

  1. 修飾符,例如公共,私有和其他,您將在以后學習。
  2. 返回類型-方法返回的值的數據類型;如果該方法未返回值,則返回void。
  3. 方法名稱-字段名稱的規則也適用於方法名稱,但是約定有所不同。
  4. 括號中的參數列表-輸入參數的逗號分隔列表,其輸入的數據類型前面帶有括號()。 如果沒有參數,則必須使用空括號。
  5. 例外列表-稍后再討論。
  6. 括號之間的方法主體(此處是方法的代碼,包括局部變量的聲明)在此處。

因此,如果需要聲明不帶任何返回類型的方法,則需要在第二個位置寫入void

在你的代碼中

public static Result Case1(){

有需要返回的返回類型Result 如果不想返回它-聲明這樣的方法:

public static void Case1(){

聲明不應該返回任何內容的方法時,必須使用void作為返回類型。 在您的情況下,返回類型為Result,因此直到您添加返回Result對象的return語句,它才會編譯。 有關定義方法的更多信息: https : //docs.oracle.com/javase/tutorial/java/javaOO/methods.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM