반환하면 값이 반환 지정할 수 있습니다 올바르지 않습니다 있습니다. 과제를 수행하는 것을 허용하지 않습니다. 메소드를 호출하여 실행 방법을 결정하는 것은 코드에 달려 있습니다.
어쨌든 studentComboBoxItemStateChanged
메서드는 void
메서드입니다. 즉, 값을 반환 할 수 없습니다 (일반 return
이 작동하며 메서드가 그대로 유지됩니다).
필요한 것은 귀하와 귀하가 원하는 것입니다. 귀하의 경우에 가장 적합한 솔루션은 아마도 일부 변수를 설정하거나 if
각각의 매개 변수로 일부 기능을 호출하는 것입니다.
편집 당신이 "h"
에 jlabel1의 값을 설정하려는 경우, "i"
, "j"
if (studentComboBox.getSelectedItem().equals("Student 1")) { jlabel1.setValue("h"); }
....
그러나 당신이 변수를 사용하려고h
, i
하고있는 것 같습니다 j
. "h"
은 h
과 다릅니다.
if (studentComboBox.getSelectedItem().equals("Student 1")) { jlabel1.setValue(h); }
....
h
, i
및 j
이 방법 밖에, 인스턴스 변수로 정의 될 필요가있을 것이다, 그렇게 할 수 밖에. 다른 사람이 언급 한 바와 같이
if (studentComboBox.getSelectedItem().equals("Student 1")) { jlabel1.setValue(getParameter("student1")); }
....
, 맵은 다음과 같습니다
이 경우 최고의 솔루션은 라벨을 가정하는 것은 바로 그렇게하는 경우 getParameter ("student1")의 값을 유지한다 이것에 매우 적합합니다.
Map<String, String> prettyNamesToParameterNames= ...;
private void StudentComboBoxItemStateChanged(java.awt.event.ItemEvent evt) {
String paramName=prettyNamestoParameterNames.get(studentComboBox.getSelectedItem());
label1.setValue(getParameter(paramName));
}
질문이 명확하지 않습니다. 또한 정확한 대소 문자를 사용하지 않습니다. – jzd
코드와 질문은 여전히 의미가 없습니다. 마지막 세 줄은 무엇입니까? 3 개의 매개 변수 또는 1을 검색하려고합니까? – jzd