将int转换为具有固定位数的二进制
java中最简单的方法是将整数的二进制表示forms作为具有固定位数的二进制数(例如,如果我想用5位转换3,那么结果将是00011)。 在matlab中,我只能指定位数作为参数。
这是一种简单的方法:
String binaryString = Integer.toBinaryString(number); binaryString = binaryString.substring(binaryString.length() - numBits);
其中number是要转换的整数, numBits是您感兴趣的固定位数。
如果要将int
转换为其二进制表示forms,则需要执行以下操作:
String binaryIntInStr = Integer.toBinaryString(int);
如果要获取int
的位数,则需要执行以下操作:
int count = Integer.bitCount(int);
但是你不能将整数的二进制表示forms作为具有固定位数的二进制数 ,例如,7有3位,但是你不能将它的位数设置为2或1.因为你不会得到7来自其二进制表示,具有2或1位计数。
要将n转换为numb的numbOfBits:
public static String intToBinary (int n, int numOfBits) { String binary = ""; for(int i = 0; i < numOfBits; ++i, n/=2) { switch (n % 2) { case 0: binary = "0" + binary; break; case 1: binary = "1" + binary; break; } } return binary; }
- Java中的乘法运算导致负值
- com.google.gdata.client.GoogleService.setUserToken(android.accounts.AccountManager.getAuthToken(???))
- Android Studio无法使用HoloEverywhere和ActionBarSherlock
- 如何在Android Java中了解网页上次修改日期和时间
- NoSuchMethodError:将Firebase与应用引擎应用集成
- android地图,标记和内存泄漏
- 如何在Java中以0.1f的增量在0.1f和1.0f之间进行迭代?
- 远程api gae祖先查询
- EditText on demand小部件