[問題] 執行緒的問題

看板java作者 (阿潘)時間17年前 (2008/04/13 16:38), 編輯推噓4(401)
留言5則, 3人參與, 最新討論串1/1
for(;n>0;n--){ System.out.print("Press enter to picks...."); try{ System.in.read(); }catch(IOException e){}; Random rand = new Random(); r=rand.nextInt(n); System.out.println(name[r]); name[r]=""; for(int i=0; i < n ; i++){ if(name[i].isEmpty()==false){ name[m]=name[i]; m++; } } m=0; } 為啥結果是 Press enter to picks.... >>> 有跑出來 microsoft sucks Press enter to picks....linux good >>> 直接印出來 囧 Press enter to picks.... >>> 又有跑出來 james bond Press enter to picks....hello kitty Press enter to picks.... adrian zambombo mame[]為"microsoft sucks" "adrian zambombo"..... 程式要寫每PICK一次 幫我挑出一個 -- 這篇文章讓你覺得? = =+ ( ̄▽ ̄) @@ 〒△〒 ψ(._. )> y( ̄︶ ̄)y - -||| (# ̄皿 ̄) 新奇 溫馨 誇張 難過 實用 高興 無聊 生氣 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.112.50.2

04/13 16:44, , 1F
我學長用LINUX沒問題耶= =+
04/13 16:44, 1F

04/13 20:38, , 2F
很剛好你是在windows 在這裡你的enter是"\u000d\u000a"
04/13 20:38, 2F

04/13 20:41, , 3F
而在linux的enter則只有"\u000a" 然後in.read()一次讀一個字
04/13 20:41, 3F

04/16 09:56, , 4F
請問這種情形要怎麼解決阿 我也遇到這種問題...
04/16 09:56, 4F

04/16 09:58, , 5F
不過我是readLine兩次會被skip過一次= =
04/16 09:58, 5F
文章代碼(AID): #180SQTyK (java)