首頁 > Java > java教程 > 主體

為什麼我會收到 Java 編譯器錯誤'\'.class\'預期\”?

Patricia Arquette
發布: 2024-11-21 04:45:14
原創
692 人瀏覽過

Why am I getting the Java compiler error

理解錯誤:預期.class

編譯過程中,當編譯器遇到預期表達式的型別(例如int 或int[ ])。從語法上講,這意味著唯一可接受的符號是 。其次是類。

錯誤原因

此錯誤是由於編譯器混亂而發生的。語法檢查偵測到需要表達式的類型,從而產生“.class”預期訊息。

錯誤範例

double d = 1.9;
int i = int d;  // error: '.class' expected
         ^
登入後複製

解決這錯誤

  • double d = 1.9;
    int i = (int) d;  // Correct: type casts `1.9` to an integer
    登入後複製
  • 類型轉換:
  • 如果您打算進行類型轉換,請將類型括在括號中:

    int j = someFunction(a);  // Correct ... assuming 'a' type is compatible for the call.
    登入後複製
  • 刪除類型:
如果您打算指派一個值或傳遞一個參數,請刪除類型:

  • 其他範例

    someMethod(array[]);
    登入後複製

    數組參考:

    someMethod(array);  // pass reference to the entire array
    登入後複製

    更正一下至:
    someMethod(array[someExpression]);  // pass a single array element
    登入後複製
  • int i = someMethod(int j);  // Error
    登入後複製

    方法中的參數聲明:

    int i = someMethod(j);
    登入後複製
  • 方法中的參數宣告:
  • 刪除範圍聲明:

    int[]; letterCount = new int[26];
    登入後複製

    int[] letterCount = new int[26];
    登入後複製
  • 數組中的分號聲明:
  • 刪除分號:

    return integers[];
    登入後複製

    return integers;  
    登入後複製

    類型聲明符而不是表達式:

    return integers[someIndex];  // Return one element of the array
    登入後複製
  • 傳回整個陣列或特定元素:

    if ((withdraw % 5 == 0) && (acnt_balc >= withdraw + 0.50))
      double cur = acnt_balc - (withdraw + 0.50);
      System.out.println(cur);
    else
      System.out.println(acnt_balc);
    登入後複製

    if ((withdraw % 5 == 0) && (acnt_balc >= withdraw + 0.50)) {
      double cur = acnt_balc - (withdraw + 0.50);
      System.out.println(cur);
    } else {
      System.out.println(acnt_balc);
    }
    登入後複製
  • 失蹤的捲毛大括號:
用大括號將「then」語句括起來:

以上是為什麼我會收到 Java 編譯器錯誤'\'.class\'預期\”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板