java16进制计算

📅 发布时间:2026/7/6 22:54:26 👁️ 浏览次数:
java16进制计算
1先把16进制字符串转为10进制long num1 Long.parseLong(hex1, 16);2计算10进制结果转为16进制/** * 短16进制数相加使用Long类型适用于8位以内16进制数 * param hex1 第一个16进制字符串大小写均可 * param hex2 第二个16进制字符串大小写均可 * return 相加后的16进制字符串大写 */publicstaticStringaddHexWithLong(Stringhex1,Stringhex2,Stringhex3,Stringhex4,Stringhex5,Stringhex6,Stringhex7){try{// 1. 将16进制字符串转为10进制长整型longnum1Long.parseLong(hex1,16);longnum2Long.parseLong(hex2,16);longnum3Long.parseLong(hex3,16);longnum4Long.parseLong(hex4,16);longnum5Long.parseLong(hex5,16);longnum6Long.parseLong(hex6,16);longnum7Long.parseLong(hex7,16);// 2. 数值相加longsumnum1num2num3num4num5num6num7;// 3. 转回16进制字符串大写去掉前缀0XreturnLong.toHexString(sum);}catch(NumberFormatExceptione){// 处理无效16进制字符串或数值超出Long范围的情况System.err.println(错误16进制数格式无效或超出Long范围);returnnull;}}全代码// 测试示例两个16进制字符串相加Stringhex1f0;// 十进制6719Stringhex204;// 十进制11150Stringhex384;// 十进制11150Stringhex400;// 十进制11150Stringhex506;// 十进制11150Stringhex600;// 十进制11150Stringhex700;// 十进制11150// 场景1短16进制数相加Long类型适用于≤8位16进制数Stringresult1addHexWithLong(hex1,hex2,hex3,hex4,hex5,hex6,hex7);