2014-01-17 82 views
0

我想設置if語句來控制sqlite中的數據存儲。但是,數據將全部或全部存儲,if語句不能阻止不正確的數據。請給我一些提示。謝謝。在Java中無法正常存儲sqlite

public void luggageCheck (String ncode, String luggage1, String luggage2, String luggage3){ 

    DatabaseHandler db = new DatabaseHandler(this); 

    if (luggage1 != " "){ 
     db.addContact(new Luggage(ncode, luggage1, "luggage")); 
    } 
    if (luggage2 != " "){ 
     db.addContact(new Luggage(ncode, luggage2, "luggage")); 
    } 
    if (luggage3 != " "){ 
     db.addContact(new Luggage(ncode, luggage3, "luggage")); 
    } 

} 

回答

1

字串使用的方法相比, 「等於」,不與運營商

這意味着,你的代碼應該是:

if (!luggage1.equals(" ")){ 
    db.addContact(new Luggage(ncode, luggage1, "luggage")); 
} 
if (!luggage2.equals(" ")){ 
    db.addContact(new Luggage(ncode, luggage2, "luggage")); 
} 
if (!luggage3.equals(" ")){ 
    db.addContact(new Luggage(ncode, luggage3, "luggage")); 
} 
+0

感謝。有用。但是,我想問一下string.compareTo()和!string.equal()之間有什麼不同?因爲我使用compareTo在以前的編碼中起作用?非常感謝。 – user3168467

+0

compareTo比較兩個對象,並返回結果(0 =對象相等,小於0 =第一個對象更小(按照字典順序),然​​後第二個,多於0 =第一個對象更大(按照字典順序),然​​後第二個)。如果對象相等,則返回布爾值(在此上下文中字符串對象) –

+0

我明白了。感謝您的親切教學。 – user3168467

相關問題