修復 Java 中 Void Type Not Allowed Here 錯誤
-
什麼是
void type not allowed here
錯誤 -
修復 Java 中
void type not allowed here
錯誤 - 不要在main()
方法中列印 -
修復 Java 中
void type not allowed here
錯誤 - 返回字串而不是在printMessage1()
中列印
我們在 Java 中建立大程式時會用到很多函式,有時可能會出現錯誤。編譯器可能丟擲的錯誤之一是本文中討論的 void type not allowed here
錯誤。
什麼是 void type not allowed here
錯誤
我們在 Java 中通過編寫訪問修飾符、返回型別、帶括號的函式名來建立函式,並且函式體用花括號括起來。我們可以從一個函式返回多種型別的資料,但是當我們不想返回任何資料時,我們使用關鍵字 void
告訴編譯器我們不想從該方法返回任何資料。
在下面的程式中,我們有一個類 JavaExample
,它包含兩個方法,第一個是 main()
函式,第二個是 printMessage1()
,它有一個列印語句 System.out.println()
列印 printMessage1()
作為引數接收的訊息。
printMessage1()
函式不返回任何內容,只列印一條訊息;我們使用 void
型別作為返回型別。我們在 main()
方法中使用另一個 print 語句,並以 String 1
作為引數呼叫其中的 printMessage1()
函式。
當我們執行程式碼時,輸出會丟擲一個錯誤,void type not allowed here
。這是因為 printMessage1()
已經有一個列印 value
的 print 語句,並且當我們在 print 語句中呼叫該函式時它不會返回任何內容; main
方法中沒有可列印的內容。
public class JavaExample {
public static void main(String[] args) {
System.out.println(printMessage1("String 1"));
}
static void printMessage1(String value) {
System.out.println(value);
}
}
輸出:
java: 'void' type not allowed here
修復 Java 中 void type not allowed here
錯誤 - 不要在 main()
方法中列印
這個錯誤的第一個解決方案是我們不在列印語句中呼叫函式 printMessage1()
,因為方法本身已經有一個 System.out.println()
語句,並且它不返回任何內容。
在這段程式碼中,我們將 printMessage1()
函式的主體編寫為 println()
語句。我們使用字串作為引數呼叫 main()
中的 printMessage1()
方法。
public class JavaExample {
public static void main(String[] args) {
printMessage1("String 1");
}
static void printMessage1(String value) {
System.out.println(value);
}
}
輸出:
String 1
修復 Java 中 void type not allowed here
錯誤 - 返回字串而不是在 printMessage1()
中列印
第二種解決方案是在函式中指定返回型別,返回一個值,並在我們呼叫函式的任何地方列印它。
我們編寫方法 printMessage1()
,但返回型別 String
。在方法的主體中,我們使用 return
關鍵字和我們想要在呼叫時返回的 value
。在 main()
方法中,我們將函式 printMessage1()
呼叫到 print 語句中,但該方法返回值時不會出錯。
public class JavaExample {
public static void main(String[] args) {
System.out.println(printMessage1("How are you doing today?"));
System.out.println(printMessage1("String 2"));
}
static String printMessage1(String value) {
return value;
}
}
輸出:
How are you doing today?
String 2
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn