看板 java 關於我們 聯絡資訊
小弟最近在寫一個觀查某個檔案夾中有甚麼檔案名,然後挑出特定附檔名, 然後print出 檔案格式大概像這樣 // i是檔案的個數 ori是檔案夾中的檔案名 是字串陣列 for (int q = 0; q<i;q++) { String A = ori [q] if (A.endwith(".DRW")) { String B = A String C = "" } if (A.endwith(".prt")) { String B = "" String C = A } else { String B = "無此檔案" String C = "無此檔案" } System.out.println(B+C); } 這樣compiler會跟我說沒有指定B 和C的值 但是如果我在每個if迴圈中 直接印出 這樣就可以執行 請問這是為什麼呢? 是否跟java運算到布林值為false 的時候就不會繼續運行下去的性質有關呢 第一次問問題,不知道問題描述的清不清楚,先感謝大家的回答。 } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.254.16.126
superlubu:你應該先看看書本,看看關於 variable scope 的章節 03/12 22:23
pcyu16:也稍微看一下其他人怎麼縮排code的.. 03/12 22:26
tsungchic:B和C要宣告在if-else的block外,同1F所講的問題 03/12 22:57
coolcomm:另外,不要用A,B,C當變數名稱。取個有意義的名字,而且 03/12 23:15
coolcomm:用小寫作為變數開頭 03/12 23:17
swpoker:其實看看文件就知道了~只是不想看~想照自己的想法寫而已 03/13 09:36
focxino:感謝大家的指導,請問寫在block外面是指說寫在{}號的外面 03/13 23:07