여러 건 jave switch 문
그냥 사용하는 방법에 대해 많은 jave 스위치에서도 알아내려 하고 여러 사례를 발표했다. # 39 의 예를 들어, here& 뭐한테 I& # 39 m trying to do.
switch (variable)
{
case 5..100:
doSomething();
break;
}
대對 할 필요가 없습니다.
switch (variable)
{
case 5:
case 6:
etc.
case 100:
doSomething();
break;
}
이 경우 가능한 모든 아이디어, 또는 어떤 좋은 대안은?
107
12
안타깝게도, it& # 39 의 자바 가상 머신 (jvm) 에 사용할 수 없습니다. # 39, ll %s/dbase/ext_table. you& 방법을 사용하여 '' 다른 경우 명령문입니다.
두 번째 옵션은 fy05 좋았소 # 39 m, 왜 i& 응답자 있다고 확신할 수 없습니다. 이는 과징금의 나는한다 이 all the time):
수도 이전 문제의 답을 얻고자 할 때 아닌 신앙이니라 부는 대로 일부 대형 스위치 건 거의 없이, 그냥 합칩니다 범위 범위를 한 사건에 신청했다.
객체 지향 교체할 수 있는 옵션을 지나치게 큰 '스위치' 와 '한' a '책임' 을 사용하는 경우 / else 구문 패턴화합니다 체인 모델 의사 결정.
또한 사용하고 있는 일반 안전하다구요 입력하십시ᄃ오 구축현 예를 들어보겠습니다.
이는 단지 신속시작 허수아비 때리기 오류 몇 분 후면 제가 좀 더 정교한 구축상의 권능은하나님께 휩트 백업하도록 함정이거나 '명령' 에 투입될 수 있도록 패턴 '수' 의 경우 좀 더 쉽게 구현 인스턴스들도 뒤로를 호출하십시오 국제올림픽위원회 (ioc) 스타일.
이 사건에 대해서 한 번 잘 외곽진입 에로남이네 스위치 / 모두 이 캡슐화합니다 부작용은요 클래스에 대한 제표를 때는기대어 저하됨 관리할 수 있게 되는 등 it up 의 패턴 매칭 기능 및 재사용합니다 motor1.1end 더 많은 언어와 isn& # 39, 나쁜 것이 아니다.
이 업데이트는 내아기마저도 게시물로의 1 의 [사진을] 또는 향상내용 깃허브.
[이 질문] [1] # 39 에 따르면, it& 완전히 폴링합니다.
그냥 동일팔레트에 똑같은 논리를 들어 있는 모든 경우에, 그 뒤에 '브레이크' 와 함께 don& # 39 동일팔레트에 없다.
39 의 경우 '점프' 가 '브레이크 없이 it& 때문에' 다른 '케이스' 보살피되 '브레이크' 또는 '반환'.
편집:
답변 정말 설명, 우리가 가지고 있는 경우가 있으나 서로 다른 방식으로 똑같은 논리를 95 값이 더 적은 수의 논리, we can do.
다른 경우 더 정밀한 제어를 하는 경우, '선택' 입니다.
[1]: https://stackoverflow.com/questions/13774446/how-to-do-a-case-with-multiple-conditions # 13774469 오토메이티드
기본적으로:
// 부적합 코드 예제
//Compliant 솔루션이므로
[바브르] [1] 라이브러리를 사용하여 이겨낼 수 있습니다
이것은 물론 모든 경우에 명시적으로 나열할 디렉토리에만 이후 약간의 개선이 필요한데. 그러나 사용자 정의 조건자 쉽게 정의할 수 있다.
여기에서 '대신' 는 이 같은 일이 되돌려줍니다 일치시킵니다 표현식에서는 인스턴스입니다 직접 호출 실행 가능한 방법. 경기 후 실행 가능한 수행됨 '는' 수행할 수 있다.
[공식 문서] [2] brocade. com/support/service_plans. 참조하십시오.
[1]: http://www.vavr.io " Vavr"; [2]: http://www.vavr.io/vavr-docs/ # _pattern_matching
대체 아래와 같이 사용할 수 있습니다.
마지막 jave 12 릴리스에는 에서 사용할 수 있는 여러 상수입니다 같은 사건으로 레이블에만 [미리봅니다 언어 기능을] (http://openjdk.java.net/jeps/12)
jdk 기능을 사용할 수 있는 표현을 릴리스에는 > 설정이므로 개발자 기반하는 의견을 실제 응용. 이로 인해 향후 it 가 영구적입니다 Java SE 플랫폼.
것 같습니다.
자세한 [젶 325: 스위치 표현식에서는 (Preview)] (https://bugs.java.com/bugdatabase/view_bug.do) = jdk 8192963 bug_id?)
하나의 대안으로 직접 값을 사용하는 대신 사용할 수 있는 범위 매핑이라는 switch 문은 사용하십시오.