我正在用傳統方式使用XOR ^
算子計算兩個short integers
的XOR
。下面是方法 -兩個短整數的異或
short a=197;
short b=341;
short y = (short) (a^b);
然而,XOR總是返回整數,但在我的情況輸入短整型,這就是爲什麼我矮鑄造的XOR輸出。 XOR可以用不同的方式計算(例如:使用BigInteger
等),但性能明智(少時間),對於短整數來說最好?在記住性能的同時,我應該首先使用Integer.toBinaryString(number)
將每個短整數轉換爲二進制數,然後應用按位XOR?
@EricJ .:你還在看看我沒有圓括號的版本嗎?(x^y)?我修復了一段時間:) – 2012-03-24 22:21:25
是的,我看到更新。撤回評論:-) – 2012-03-24 22:22:04
@JonSkeet:「」將每個短整數轉換爲二進制數「」我的意思是我應該首先使用'Integer.toBinaryString(number)'將每個短整數轉換爲二進制字符串,然後應用'按位XOR' ? – 2012-03-25 07:35:53