我有兩個變量,我試圖比較,但變量名稱很長,我試圖清理我的代碼,這裏的所有代碼僅用作示例。使用字符串引用不同變量的值
我想要做的是這樣的:
if(objectOne.objectTwo.variableName1 == objectTwo.objectTwo.variableName1)
if(objectOne.objectTwo.variableName2 == objectTwo.objectTwo.variableName2)
...
,併爲此多次,但每次改號在字符串 結束,但我試圖做這樣的:
for(int i = 0 ; i < 5 ; ++i) {
String firstString = "objectOne.objectTwo.variableName" + i;
String secondString = "objectTwo.objectTwo.variableName" + i;
if(firstString == secondString)
//more code
}
然而,這比較字符串和我試圖用自己的字符串,以不同變量的引用有沒有這樣做的方法嗎?
編輯:我正在尋找清理代碼,但我遇到的主要問題是,如果我有100個variableNameNumber變量我將不得不做100個單獨的if語句,我試圖做一個簡單的for循環,因爲我增加變量名得到更新
的[我如何在Java中比較字符串?(可能的複製http://stackoverflow.com/questions/513832/how-do-i-compare-strings-in -java) –
聽起來你真的應該使用集合或數組。具有多個變量,後綴爲1,2,3,4等通常是代碼味道。 –
另外,你至少可以使用'Foo a = objectOne.objectTwo; Foo b = objectTwo.objectTwo;'然後比較'a.variableName1'和'b.variableName1'。請注意,使用公共字段也是一種代碼味道。 –