2012-10-04 78 views
0

可能重複:
How do I compare strings in Java?如何比較兩個字符串,從CSV文件中讀取並保存在字符串數組

我從一個CSV文件中讀取一些記錄,並將它們存儲到一個字符串鍵入數組,然後在將每個字段轉換爲適當的變量後保存。在代碼的一部分中,我必須將數組中的字段與字符串類型中的某個變量進行比較。這兩個數組都是從csv文件填充的。

  int count=0; 
      String name=resourceArray[i][j+1] ; 
      while(machineArray[count][0]==name) 
      { 

       machineID=Integer.parseInt(machineArray[count][1]); 
       machinePe=Integer.parseInt(machineArray[count][2]); 
       count++; 
      } 

問題是'while'條件永遠不會成真。我調試它,我確信machineArray [0] [0]和'名稱'具有相同的值。

回答

-1

字符串並不總是有相同的標識(雖然它是常見的)。嘗試:

machineArray[count][0].equals(name) 
+0

TNX,問題就迎刃而解了 –

0

試着改變你的條件從machineArray[count][0]==namemachineArray[count][0].equals(name)

+0

TNX,問題就迎刃而解了 –

0

基本上你是用==,而不是比較字符串的指針比較兩個字符串對象。

比較字符串,你必須使用字符串的equals方法:

machineArray[count][0].equals(name) 
+0

TNX,問題就解決了 –