当前位置: 首页 > java >正文

Java、Python、PHP 三种语言实现 二进制与十六进制的相互转换


🔁 二进制与十六进制的相互转换


🧱 Java 实现

public class BinHexConverter {// 二进制转十六进制public static String binaryToHex(String binary) {int decimal = Integer.parseInt(binary, 2);return Integer.toHexString(decimal).toUpperCase();}// 十六进制转二进制public static String hexToBinary(String hex) {int decimal = Integer.parseInt(hex, 16);return Integer.toBinaryString(decimal);}public static void main(String[] args) {String binary = "101011";String hex = "2F";System.out.println("二进制 " + binary + " → 十六进制: " + binaryToHex(binary));System.out.println("十六进制 " + hex + " → 二进制: " + hexToBinary(hex));}
}

✅ Java 示例输出

二进制 101011 → 十六进制: 2B
十六进制 2F → 二进制: 101111

🐍 Python 实现

def binary_to_hex(binary_str):decimal = int(binary_str, 2)return hex(decimal)[2:].upper()def hex_to_binary(hex_str):decimal = int(hex_str, 16)return bin(decimal)[2:]# 测试
binary = "101011"
hex_str = "2F"print(f"二进制 {binary} → 十六进制: {binary_to_hex(binary)}")
print(f"十六进制 {hex_str} → 二进制: {hex_to_binary(hex_str)}")

✅ Python 示例输出

二进制 101011 → 十六进制: 2B
十六进制 2F → 二进制: 101111

🐘 PHP 实现

<?phpfunction binaryToHex($binary) {$decimal = bindec($binary);return strtoupper(dechex($decimal));
}function hexToBinary($hex) {$decimal = hexdec($hex);return decbin($decimal);
}// 测试
$binary = "101011";
$hex = "2F";echo "二进制 $binary → 十六进制: " . binaryToHex($binary) . PHP_EOL;
echo "十六进制 $hex → 二进制: " . hexToBinary($hex) . PHP_EOL;?>

✅ PHP 示例输出

二进制 101011 → 十六进制: 2B
十六进制 2F → 二进制: 101111

📌 小结对比

功能JavaPythonPHP
二进制转十六进制Integer.toHexStringhex(int(..., 2))dechex(bindec(...))
十六进制转二进制Integer.toBinaryStringbin(int(..., 16))decbin(hexdec(...))
输出大小写控制.toUpperCase().upper()strtoupper()

希望对你有用

http://www.xdnf.cn/news/9496.html

相关文章:

  • 板凳-------Mysql cookbook学习 (八)
  • Java开发经验——阿里巴巴编码规范实践解析4
  • HTML5 视频播放器:从基础到进阶的实现指南
  • TypeScript 索引签名:灵活处理动态属性对象
  • STM32通过KEIL pack包轻松移植LVGL,并学会使用GUI guider
  • CRM系统的数据库结构详细设计
  • 【大模型原理与技术-毛玉仁】第四章 参数高效微调
  • 基本面高股息策略
  • RabbitMQ 与其他 MQ 的对比分析:Kafka/RocketMQ 选型指南(二)
  • c++结构化绑定
  • Python应用while循环猜数字
  • webpack的安装
  • 签约!京东云与契约锁达成战略合作,携手共推全程数智化解决方案
  • 【计算机网络】IPv6和NAT网络地址转换
  • 【Prometheus+Grafana实战:搭建监控系统(含告警配置)】
  • Vue开发系列——Vue中常见实现区别及Vue.js 模板编译原理
  • EC800GCN 华系列 DTU 开发板介绍
  • 基于 Flink+Paimon+Hologres 搭建淘天集团湖仓一体数据链路
  • 家政小程序开发,开启便捷生活新篇章
  • Visual Studio 的下载安装
  • 常用 Linux 命令---服务器开发和运维相关命令
  • JVM内存溢出:诊断处理与预防全攻略
  • 【pycharm】如何连接远程仓库进行版本管理(应用版本)
  • ModbusTcp协议
  • LiveQing 视频点播流媒体 RTMP 推流服务功能:搭建 RTMP 视频流媒体服务详细指南
  • xcode卡死问题,无论打开什么程序xcode总是在转菊花,重启电脑,卸载重装都不行
  • 设计模式之单例模式
  • MySQL MVCC(多版本并发控制)详解
  • 使用 Frida 增强 FART:实现更强大的 Android 脱壳能力
  • 逛网站看到个场景题,如何防止重复下单