저는 열거 형을 가졌습니다. 열거를 통해 반복Java BigInteger 및 Shift 연산자
는enum testMe {
one,
two,
three;
long longValue() {
return 1<<ordinal();
}
}
for (testMe myLoop = testMe.values()) {
System.out.println(value.longValue() + ":" + myLoop);
}
정확히 내가 열거의 값의 순서에 변화에 대한 기대 걸 수 있습니다. 그러나 필자는 오랫동안 통과 한 매개 변수에 대해 자격을 부여해야합니다.
Long myLong = 3;
for (testMe myLoop = testMe.values()) {
if ((myLong & value.longValue()) != 0) {
System.out.println(value.longValue() + ":" + myLoop);
}
}
이 경우 1과 2 만 인쇄됩니다. 그러나이 메서드는 열거 형의 32 개 값에만 작동합니다. 누구든지 BigInteger를 사용할 수있는 아이디어가 있습니까 ???
BigInteger longValue() {
BigInteger one = BigInteger.valueOf(1);
return one.shiftLeft(ordinal());
감사합니다 C
사용에 비교'BigInteger.valueOf (2) .pow (서수())'? –
* "BigInteger를 사용할 수있는 방법에 대한 아이디어가있는 사람이 있습니까?"*이 작업을 수행하는 코드를 포함 했으므로이 질문을 실제로 이해하지 못합니다. – Radiodef
어디서 문제가 있습니까? – laune