我有两个字节,byte b1
,byte b2
。
b1
的十进制值为44。
b2
的十进制值为1。
我想将字节合并在一起(但不求和),以创建类似441的数字。
我该如何实现?
答案 0 :(得分:3)
数学方法
double digitCount = Math.floor(Math.log10(b2) + 1.0);
int result = b1 * (int) Math.pow(10, digitCount) + b2;
迭代方法(从右到左每次切一位)
int result = 0;
int digit, multiplier = 1;
int base = b2;
while (base > 0) {
digit = base % 10;
base /= 10;
result += digit * multiplier;
multiplier *= 10;
}
base = b1;
while (base > 0) {
digit = base % 10;
base /= 10;
result += digit * multiplier;
multiplier *= 10;
}
简单明了的方法(连接为字符串和解析)
int result = Integer.parseInt("" + b1 + b2);
答案 1 :(得分:1)
您可以将它们转换为字符串,然后连接字符串,然后将其解析为int:
Integer.parseInt(Byte.toString(b1) + Byte.toString(b2))
答案 2 :(得分:0)
科特琳:
val b1: Byte = 44.toByte()
val b2: Byte = 1.toByte()
print("$b1$b2")
Java
byte b1 = (byte)44;
byte b2 = (byte)1;
System.out.print(b1+""+b2);