我正在製作一個程序,檢查一個元素的正負電荷是否能夠合併爲0,我想要做的是輸出兩種元素無法合成的原因。但這比我想象的要困難得多。例如,如果鈉試圖用鎶結合,它會輸出這樣的:什麼是輸出對象不會經歷所有「if」語句的好方法?
鈉不鎶結合:
兩個價費有相同的極性。
一個或多個元素是人造的。
但我想不出一種方法來實現這一點到我的代碼。
這裏是我的代碼:
public void combine(Element element){
if ((element.getValence() > 0 && valence < 0) || (element.getValence() < 0 && valence > 0)) { //one element needs a positive valence, and one needs a negative valence
if (valence != 0 && element.getValence() != 0) { //checks to see if valence is not equal to 0
if (natural == true && element.isNatural() == true) { //checks to see if both elements are natural
for (int x = 1; x <= 4; x++) {//bruteforce the atoms to see if they both add up to 0.
for (int y = 1; y <= 4; y++) {
if ((valence * x) + (element.getValence() * y) == 0) {
System.out.println(name + " combines with " + element.getName() + " to form " + symbol + "" + x + "" + element.getSymbol() + "" + y);
}
}
}
}
}
}
}
感謝您的幫助!
「自然」在哪裏設置? –
natural是一個私有布爾值,它有一個getter和setter。 isNatural是一個吸氣。 –
btw。你可能不需要那些getter,因爲你似乎是以'Element'的方式進入,因此可以訪問私有變量。 – Adowrath