1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 | package com.test; public class A { /** * @param args */ public static void main(String[] args) { //其他进制转10进制 System.out.println( "2转10 :" + Integer.valueOf( "1010" , 2 ).toString()); System.out.println( "8转10 :" + Integer.valueOf( "125" , 8 ).toString() ); System.out.println( "16转10:" + Integer.valueOf( "ABCDEF" , 16 ).toString()); //10进制转其他进制 int a = 11 ; System.out.println( "10转2 :" + Integer.toBinaryString(a)); System.out.println( "10转8 :" + Integer.toOctalString(a)); System.out.println( "10转16:" + Integer.toHexString(a)); //16进制字符串 String hex = "5a5a" ; System.out.println( "16进制字符串转字节数组:" ); int len = hex.length(); byte [] hexbytes = new byte [len / 2 ]; for ( int i = 0 ; i < len; i += 2 ) { //16进制 16位, 字节8位, 所以16进制1位 占 字节的4位, 两位组成8位字节 hexbytes[i / 2 ] = ( byte ) ((Character.digit(hex.charAt(i), 16 ) << 4 ) + Character.digit(hex.charAt(i + 1 ), 16 )); } //字节数组转16进制 System.out.println( "字节数组转16进制:" ); hex = null ; for ( int i = 0 ; i < hexbytes.length; i++) { hex = Integer.toString(hexbytes[i] & 0xff , 16 ); if (hex.length() == 1 ) hex = "0" + hex; System.out.print(hex+ "," ); } //字节 byte b = hexbytes[ 0 ]; char c = ( char ) (((hexbytes[ 0 ] & 0xFF ) << 8 ) | (hexbytes[ 1 ] & 0xFF )); System.out.println(c); byte [] intbytes = { 0x00 , 0x00 , 0x00 , 0x31 }; //高位在前,低位在后 字节8位,int32位,所以4个字节为1个int int chunktype = ( int )(intbytes[ 0 ] & 0xff )<< 24 | (intbytes[ 1 ] & 0xff )<< 16 | (intbytes[ 2 ] & 0xff )<< 8 | (intbytes[ 3 ] & 0xff ); System.out.println( "字节数组转int:" +chunktype); } /** * 自动补零 * @param code * @param num * @return */ private static String autoGenericCode(String code, int num) { // 保留num的位数 // 0 代表前面补充0 // d 代表参数为正数型 code = String.format( "%0" + num + "d" , Integer.parseInt(code)); return code; } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)