編譯時報錯找不到符號怎麼辦
1. 寫了一段java程序,編譯時提示找不到符號,請問該怎麼修改
Scanner類沒有nextChar()方法,用next()返回字元串,是一樣的,還有一點就是只要一個Scanner對象就行了,希望能幫到你。
Scanner sc=new Scanner(System.in);//只需要一個Scanner對象就行了
System.out.println("請輸入性別、父親身高、母親身高、是否喜歡體育鍛煉:");
String sex,sports,diet;// 性別,體育鍛煉,飲食習慣
int faHeight,moheight;//父親母親身高
sex=sc.next();//next()返回的是String類型
faHeight=sc.nextInt();//nextInt()返回int類型
moheight=sc.nextInt();
2. java編譯程序的時候總是提示找不到符號
public static void main(String[] args) throws Exception {
System.out.println("請輸入你的姓名:");
Scanner in = new Scanner(System.in);
String lk = in.next();
System.out.println("請輸入你的年齡:");
int kj = in.nextInt();
System.out.println("姓名:" + lk);
System.out.println("年齡:" + kj);
}
3. java編譯時提示找不到符號
用MYECLIPSE開發環境
通常情況下,在編寫java文件時,會有引用到自已定義的一些類,如果按通常的javac *.java的形式來編譯會出現找不到符號的錯誤。
以下提供了兩種方法
假如在d:/web/wsh下有a.java和b.java兩個文件,在b.java文件中有引用了a.java。下面是編譯的方法
1.方法一:
進入d:/web/wsh下: javac a.java
然後退出wsh目錄即進入d:/wsh下 javac wsh/b.java即可編譯成功!
2.方法二:通過使用javac -classpath(cp)參數
進入d:/web /wsh下: javac a.java
還是在d:/wsh/wsh下: javac -classpath d:/web/wsh b.java
這樣也可以編譯成功!
以下方法都通過測試!
以下是javac編譯的參數:
用法:javac <選項> <源文件>
選項:
-g:none 不生成任何調試信息
-g:{lines,vars,source} 只生成某些調試信息
-nowarn 不生成任何警告
-verbose 輸出有關編譯器正在執行的操作的消息
-deprecation 輸出使用已過時的 API 的源位置
-classpath <路徑> 指定查找用戶類文件的位置
-cp <路徑> 指定查找用戶類文件的位置
-sourcepath <路徑> 指定查找輸入源文件的位置
-bootclasspath <路徑> 覆蓋引導類文件的位置
-extdirs <目錄> 覆蓋安裝的擴展目錄的位置
-endorseddirs <目錄> 覆蓋簽名的標准路徑的位置
-d <目錄> 指定存放生成的類文件的位置
-encoding <編碼> 指定源文件使用的字元編碼
-source <版本> 提供與指定版本的源兼容性
-target <版本> 生成特定 VM 版本的類文件
-version 版本信息
-help 輸出標准選項的提要
-X 輸出非標准選項的提要
-J<標志> 直接將 <標志> 傳遞給運行時系統
4. 編譯錯誤:找不到符號
Rectangle r1=new Rectangle(5.5f,12.6f);
Rectangle r2=new Rectangle(2.5f,3.6f);
數字後要加f才是float型,否則默認為double型,其實double型更常用.