本文目录导读:

我来为您介绍不同编程语言中的进制转换方法。
JavaScript 进制转换
// 任意进制转十进制
let binary = parseInt('1010', 2); // 二进制转十进制: 10
let octal = parseInt('12', 8); // 八进制转十进制: 10
let hex = parseInt('A', 16); // 十六进制转十进制: 10
// 十进制转其他进制
let num = 10;
num.toString(2); // '1010' - 二进制
num.toString(8); // '12' - 八进制
num.toString(16); // 'a' - 十六进制
// 任意进制互转
function convertBase(num, fromBase, toBase) {
return parseInt(num, fromBase).toString(toBase);
}
// 示例:二进制转十六进制
convertBase('1010', 2, 16); // 'a'
Python 进制转换
# 十进制转其他进制
num = 10
bin(num) # '0b1010' - 二进制
oct(num) # '0o12' - 八进制
hex(num) # '0xa' - 十六进制
# 去掉前缀
bin(num)[2:] # '1010'
oct(num)[2:] # '12'
hex(num)[2:] # 'a'
# 其他进制转十进制
int('1010', 2) # 二进制转十进制: 10
int('12', 8) # 八进制转十进制: 10
int('A', 16) # 十六进制转十进制: 10
# 任意进制转换函数
def convert_base(num, from_base, to_base):
# 先转十进制,再转目标进制
decimal = int(str(num), from_base)
if to_base == 10:
return str(decimal)
# 处理目标进制转换
digits = "0123456789ABCDEF"
result = ""
while decimal > 0:
result = digits[decimal % to_base] + result
decimal //= to_base
return result if result else "0"
Java 进制转换
public class BaseConverter {
// 十进制转其他进制
public static void decimalToOthers(int num) {
String binary = Integer.toBinaryString(num); // 二进制
String octal = Integer.toOctalString(num); // 八进制
String hex = Integer.toHexString(num); // 十六进制
}
// 其他进制转十进制
public static void othersToDecimal() {
int binary = Integer.parseInt("1010", 2); // 二进制转十进制
int octal = Integer.parseInt("12", 8); // 八进制转十进制
int hex = Integer.parseInt("A", 16); // 十六进制转十进制
}
// 通用进制转换
public static String convertBase(String num, int fromBase, int toBase) {
return Integer.toString(
Integer.parseInt(num, fromBase),
toBase
).toUpperCase();
}
}
PHP 进制转换
// 十进制转其他进制
$num = 10;
decbin($num); // '1010' - 二进制
decoct($num); // '12' - 八进制
dechex($num); // 'a' - 十六进制
// 其他进制转十进制
bindec('1010'); // 二进制转十进制: 10
octdec('12'); // 八进制转十进制: 10
hexdec('A'); // 十六进制转十进制: 10
// 通用转换函数
function convertBase($num, $fromBase, $toBase) {
return base_convert($num, $fromBase, $toBase);
}
// 示例
echo convertBase('1010', 2, 16); // 'a'
C# 进制转换
// 十进制转其他进制
int num = 10;
Convert.ToString(num, 2); // '1010' - 二进制
Convert.ToString(num, 8); // '12' - 八进制
Convert.ToString(num, 16); // 'a' - 十六进制
// 其他进制转十进制
Convert.ToInt32("1010", 2); // 二进制转十进制: 10
Convert.ToInt32("12", 8); // 八进制转十进制: 10
Convert.ToInt32("A", 16); // 十六进制转十进制: 10
通用的手动转换函数
// 完整的手动进制转换(不依赖内置函数)
function manualConvertBase(num, fromBase, toBase) {
const digits = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
// 任意进制转十进制
function toDecimal(str, base) {
return str.split('').reverse().reduce((acc, digit, index) => {
return acc + digits.indexOf(digit) * Math.pow(base, index);
}, 0);
}
// 十进制转任意进制
function fromDecimal(num, base) {
if (num === 0) return '0';
let result = '';
while (num > 0) {
result = digits[num % base] + result;
num = Math.floor(num / base);
}
return result;
}
const decimal = toDecimal(String(num), fromBase);
return fromDecimal(decimal, toBase);
}
实用技巧
-
常用进制范围:通常处理2、8、10、16进制,但理论上可转换任意进制(2-36)
-
大小写问题:十六进制中,'A'和'a'都表示10,但某些函数区分大小写
-
前缀处理:有些转换结果会带前缀(如0x, 0b),根据需要添加或去除
-
错误处理:转换前验证输入是否在目标进制范围内
需要我针对特定语言或更复杂的转换场景做详细说明吗?
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播