You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Lua中如何将拼接得到的16位二进制串转换为整数?

二进制字符串转整数的实现方法

针对你已经得到16位二进制字符串的场景,主流编程语言都有直接的内置方法可以快速转换,以下是几种常见实现:

Python

直接使用内置的int()函数,第二个参数指定进制为2:

binary_str = "0000000000100000"  # 对应值32的16位二进制
result = int(binary_str, 2)
print(result)  # 输出32

如果还没拼接成字符串,从布尔列表直接转换可以更高效:

bool_list = [False]*11 + [True] + [False]*4  # 对应二进制100000的布尔列表
result = sum(bit << i for i, bit in enumerate(reversed(bool_list)))
print(result)  # 输出32

Java

使用Integer.parseInt()方法(处理有符号整数),如果是无符号16位可以用Integer.parseUnsignedInt():

String binaryStr = "0000000000100000";
int result = Integer.parseInt(binaryStr, 2);
System.out.println(result);  // 输出32

// 无符号场景
int unsignedResult = Integer.parseUnsignedInt(binaryStr, 2);

C#

使用Convert.ToInt32()或针对无符号16位的Convert.ToUInt16():

string binaryStr = "0000000000100000";
int result = Convert.ToInt32(binaryStr, 2);
Console.WriteLine(result);  // 输出32

// 无符号16位
ushort unsignedResult = Convert.ToUInt16(binaryStr, 2);

JavaScript

用parseInt()函数,第二个参数传2:

const binaryStr = "0000000000100000";
const result = parseInt(binaryStr, 2);
console.log(result);  // 输出32

内容的提问来源于stack exchange,提问作者Eozum

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 19:45:33