整形,字符、字符串三者的关系
-
整形与字符串相互转化
1 2 3 4 5 6 7 | int i = 56 ; String str = String.valueOf(i); // 整形--》字符串 int k = Integer.parseInt(str) + 10 ; // 字符串--》整形 // 等价于Integer.parseInt(str,10) 默认是10进制 ,如果str是2进制,就需要设置为2 Integer.parseInt(str, 2 ) 表示将一个 2 进制的字符串,转成整型数字 String hStr = Integer.toHexString(num); // 将一个整型数字转成16进制字符串 String bStr = Integer.toBinaryString(num); // 将一个整型数字转成2进制字符串 |
-
整形与字符相互转化
1 2 3 4 | int m = 65 ; char c = ( char ) m; // 数字--》字符 char c2 = 'H' ; int l = ( int ) c2; //字符--》数字 |
-
字符与字符串相互转换
1 2 3 4 5 6 7 8 9 | char d= 'M' ; String s1=d+ "" ; // 第1种 字符--》字符串 String s2=String.valueOf(d); // 第2种 字符--》字符串 StringBuffer bf= new StringBuffer(); bf.append(d); String s3=bf.toString(); // 第3种 字符--》字符串 String sss= "shdgaj" ; char []ch=sss.toCharArray(); // 字符串--》字符 |
-
判断两个字符串是否只包含相同的字符
解释:这里使用char在ASCII表中,索引值的差值,小写字母一共26个,用当前字母与‘a’作差,‘A’-‘0’表示字符A的ASCII值65与‘0’的ASCII值48的差值为17,boolean类型的初始值是false
1 2 3 4 5 6 7 8 9 10 11 12 13 | //1、判断两个字符串是否只包含相同的字符 public static boolean isSameChar(String s1, String s2) { // 这两个字符串自包含小写字母, boolean [] arr = new boolean [ 26 ]; // 比较包含任意字符的 boolean[] arr = new boolean[128]; for ( int i = 0 ; i < s1.length(); i++) { arr[s1.charAt(i) - 'a' ] = true ; // arr[s1.charAt(i) -'\0'] = true; } for ( int i = 0 ; i < s2.length(); i++) { if (!arr[s2.charAt(i) - 'a' ]) { // if (!arr[s2.charAt(i) - '\0']) return false ; } } return true ; } |
ASCII表0~127,一般我们会初始化一个128大小的数组,
如果想得到某个字符在ASCII中的索引,可用该字符减去空字符(注意java空字符不能直接写成‘’,用‘\0’)
1 2 3 4 5 | public static void main(String[] args) { System.out.println( 'A' - 0 ); //直接减去数字0, 获取A在ASCII中的索引 或者直接强转(int)‘a’ System.out.println( 'A' - '\0' ); //减去数字‘\0’, 获取A在ASCII中的索引 System.out.println( 'A' -‘’); //这种写法会报错 } |
-
快速计算数组的和
1 2 3 | int [] arr = { 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 }; int sum = Arrays.stream(arr).sum(); System.out.println(sum); |
Ayyays.stream()方法返回指定数组作为源的顺序流。对于 int,long,double和object类型,stream方法都有重载方法。再调stream的sum()方法可以快速求和
本文来自博客园,作者:{Justin_Hu},转载请注明原文链接:{https://www.cnblogs.com/gchenghu/}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!