단순화 할 수있는 방법이 있나요 : 나는단순화하면-조건
if(a == (b || o || j || ...))
{
...
}
같은 것을 할 수 있다고 생각
if(a == b || a == o || a == j || a ==....)
{
...
}
는하지만 그건
단순화 할 수있는 방법이 있나요 : 나는단순화하면-조건
if(a == (b || o || j || ...))
{
...
}
같은 것을 할 수 있다고 생각
if(a == b || a == o || a == j || a ==....)
{
...
}
는하지만 그건
만들고 잘못된 구문으로 밝혀졌다 a
및 다른 요소의의 가변 인수를 취하는 방법을 사용하면 요소에 대한 스트림. 임의의 요소가 a
의 값과 동일한 지 확인합니다.
예 :
public boolean anyMatch(int a, int... values){
return Arrays.stream(values).anyMatch(e -> e == a);
}
는 다음과 같이 호출 할 수 있습니다 : if(anyMatch(a, o, j, b)){ ... };
자바 8 장점을 사용하는 방법 :) – Stefan
나는 당신의 변수는 정수 가정합니다.
List<Integer> values = Arrays.asList(b, o, j);
if (values.contains(a)){
...
}
간단하지 않습니다. 값을리스트에 넣고'contains()'를 사용할 수 있습니다. –
b, o, j 등이 상수 인 경우 Set (java 9 :'Set.of (b, o, j) .contains (a)'.Arrays.asList (b, o, j))를 만들 수 있습니다. –
불행히도'if'를 단순화 할 수는 없지만,'switch' 문이 의미가있는 경우 여러 개의'case'를 함께 가질 수 있습니다. 그렇지 않으면 컬렉션 기반 제안은 아마도 가장 이해가됩니다. – dave