作者MyLove (MyLove)
看板java
標題[問題] 字串比對
時間Mon Apr 25 15:58:50 2011
我使用str1.equals(str2)來判斷str1是否與str2含有相同字串值
但是我發現中文沒法直接做比較
請問我要加入哪些指令改善這種情況呢?
並且不讓輸出的中文變成亂碼
http://pastebin.com/Xg2J4UWZ 全部的程式碼
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.121.136.137
1F:→ james732:你是怎麼執行這隻程式的? 04/25 16:12
※ 編輯: MyLove 來自: 140.121.136.137 (04/25 16:49)
2F:→ tkcn:先把 str1 印出來看看(length也順便),應該會跟你想的不一樣 04/25 17:02
3F:→ MyLove:String str1[]={"中文一"} 印出來會是亂碼 04/25 17:20
4F:→ tkcn:你的 str1 到底是字串還是陣列? 04/25 17:29
5F:→ MyLove:字串 04/25 17:32
6F:→ tkcn:那請你告訴我你上面那推文的 str1 是什麼? 04/25 17:49
7F:→ MyLove:因為看到你說length順便印來看看 所以就把字串改成陣列來 04/25 17:59
8F:→ MyLove:看>_< 04/25 18:01
9F:推 kevin771012:請把nextLine 改成 next ; nextLine 會讀換行符號 04/25 18:08
10F:→ MyLove:我如果把陣列str2改成String str2[]={"3","4","5"} 04/25 18:13
11F:→ tkcn:String 有個 method 叫作 length() 04/25 18:14
12F:→ MyLove:就會跑出我希望的結果 只是輸入的字串變成數字 04/25 18:16
13F:→ MyLove:我誤會t大的意思了 不好意思 04/25 18:19
14F:→ MyLove:如果我輸入"大雄" str1的length是3 str2中的大雄length是2 04/25 18:24
15F:→ MyLove:請問t大的意思是這樣嗎? 04/25 18:26
16F:→ kevin771012:sorry 剛剛直接複製內容貼上 所以就過了 04/25 18:33
※ 編輯: MyLove 來自: 140.121.136.137 (04/25 18:45)
17F:→ tkcn:程式沒問題,如果length=3,應該是有whitespace,trim()濾掉就好 04/25 20:18
18F:→ james732:我把程式拿到Linux上面執行是完全ok的,因此覺得是環境 04/25 21:08
19F:→ MyLove:我是用 eclipse 的 04/25 21:10
20F:→ MyLove:換電腦測試是正常的 不好意思浪費大家的時間>_< 04/25 22:13
21F:推 gmoz:我自己測試是正常 把class檔存成utf-8呢? 04/26 14:37
22F:→ gmoz:WIN7+記事本 04/26 14:38
23F:→ MyLove:存成utf-8也是一樣 04/26 17:48