試圖找出我的代碼在這裏有什麼問題 - 我想要用濃度數組檢查用戶輸入,並且如果他們輸入任何數組以打印出正面的顯示消息...但是,我得到無論輸入如何,每次輸出「是,這是有效的濃度」。試圖學習方法/布爾值。需要幫助
import javax.swing.JOptionPane;
public class BASIT_Concentration_Check
{
public static void main(String[] args)
{
String[] concentrations = {"DTP","HCIT","INFS","NTEL","WDM"};
String studentconcentration = getStudentConcentration();
boolean concentrationvalid = isConcentrationValid(studentconcentration, concentrations);
displayMessage(concentrationvalid);
}
public static String getStudentConcentration()
{
String studentconcentration = JOptionPane.showInputDialog(null,"What is your B.S. AIT Concentration?");
return studentconcentration;
}
public static boolean isConcentrationValid(String studentconcentration, String [] concentrations)
{
boolean concentrationvalid=false;
for (int i=0;i<concentrations.length;i++)
{
if (concentrations[i]==studentconcentration)
{
concentrationvalid = true;
}
}
return concentrationvalid;
}
public static void displayMessage(boolean concentrationvalid)
{
if (concentrationvalid==true)
{
JOptionPane.showMessageDialog(null, "Yes, that is a valid concentration");
}
else
{
JOptionPane.showMessageDialog(null,"I'm sorry, that is not a valid concentration");
}
}
}
這並不能解釋爲什麼他每次都得到「是的,這是有效的」。這可以解釋爲什麼他每次都會得到「無效」,但事實並非如此。 –
@MrTi這是真的,在這種情況下,問題是不可重現的。這意味着OP很可能不會複製**代碼,所有代碼以及代碼。**或者沒有提供足夠的細節。或者在評論中誤寫錯誤的信息。 –