나는 연산자를 사용하여 두 가지 중 XOR
두 가지를 계산하고 있습니다. 아래 방법 -두 개의 짧은 정수의 배타적 논리합
short a=197;
short b=341;
short y = (short) (a^b);
배타적 논리합은 항상 정수를 반환하지만
하지만 내 경우 입력의 짧은 정수 i는 XOR 출력에 짧은 주조있는 이유 즉,하는 것입니다. XOR은 다른 방식으로 계산할 수 있지만 (예 : BigInteger
등을 사용) 짧은 정수의 경우 성능이 현명하고 (시간이 단축됩니까?) 성능을 염두에 두면서, 먼저 각각의 짧은 정수를 Integer.toBinaryString(number)
을 사용하여 이진수로 변환해야합니까? 그렇다면 비트 XOR을 적용 하시겠습니까?
@ EricJ :'(x^y)'의 괄호가없는 버전을 계속보고 계셨습니까? 나는 얼마 전에 그것을 고쳤다 :) –
그래, 나는 갱신을 본다. 코멘트를 철회하기 :-) –
@JonSkeet : 각각의 짧은 정수를 2 진수로 변환 ""하기 때문에 먼저 정수를 정수형으로 변환 한 다음 '비트 XOR'을 적용해야합니다. ? –