난 그냥 자바 시작했고 나는 코드의이 부분을 포함하는 GUI와 계산기를 만든 :계산기를 피하십시오? - 자바
private void Decider(char c){
switch (c){
case '+':
CalculatorGui.add.operate();
break;
case '-':
CalculatorGui.sub.operate();
break;`
case '*':
CalculatorGui.mul.operate();
break;
case '/':
CalculatorGui.div.operate();
break;
default:
System.out.printf("Invalid\n");
break;
}
}
주어진 char c
의존하는 버튼 인터페이스에 사용자가 클릭을합니다. 그가 +
를 클릭하면 우리는 -
을 클릭하면 -
등을 얻습니다. 내가 작성한 4 가지 다른 클래스에서 필요한 메소드를 호출 할 때마다.
내 질문은 : switch 문을 피할 방법이 있습니까?
하나의 메서드로 하나의 클래스를 만들 수 있다고 가정하고, 우리가 통과 한 것에 따라 적절한 연산을 수행 할 것입니다. 하지만 그때 스위치 문을 만들어야 할 것입니다.
당신은Runnable
의지도를 준비 할 수
:
을 그리고 대응 조치하거나 기본 작업을 수행하는 맵을 사용 스위치 사용하지 않겠습니까? 어쨌든 gui를 사용하는 경우 (특정 것으로 보이는 것처럼) 조작 버튼에 특정 수신기를 연결할 수 있습니다. 따라서 4 개의 다른 리스너를'+','-','*','/'버튼에 붙일 수 있으며, switch 문을 사용하지 않아도 그에 따라 호출됩니다. 문자를 사용하고 스위치를 켜기를 원한다면'+','-','*','/'를 키로 사용하여'Map'을 사용할 수도 있습니다. – BackSlash