Java刷题常用API复习总结一

69 阅读3分钟

常用的数字和字符转换的api如下:

    String str2 = String.valueOf('c'); // str的值为c;将char类型转换为String类型
     int i1 = Integer.parseInt(String.valueOf('1')); // 值为1; 将字符转换为数字

   // int i2 =  Integer.parseInt(String.valueOf(ch2)); // 异常NumberFormatException;非数字形式的字符串,不能转换为int类型

    int i3 = Integer.parseInt("10001", 2); // i3值为17,将string类型的radix进制,转换为10进制

    String str3 = Integer.toBinaryString(10); // str3为1010,将int类型的值,转换为二进制的字符串,补码形式

    String str4 = Integer.toString(121); // str4的值为121,将数字转换为字符串

    //‌在Java中,String、StringBuilder和StringBuffer类都实现了CharSequence接口‌

    String[] ans = {"abc","def","ghi"};
    String str5 = String.join(",", ans); // 值为abc,def,ghi;以分割符拼接字符串数组

    String str6 = Arrays.toString(ans); // 值为[abc, def, ghi]; 输出数组,带左右方括号

    String str7 = Integer.toHexString(10); // 值为a,将int类型的值转成16进制字符串

    char ch1 = (char)('c'-1); // 指为b,字符串加减

    //在ASCII码表中,大写字母的A是65,共有26个字符,后边有几个特殊字符,小写字母A是97,和A相差32
    // ASCII的码表中的值:数字<大写字母<小写字母
    int i4 = ('a' - 'A'); // 值为32,小写字母在ASCII码表中排在大写字母的后面

    String str8 = "food";
    char[] chArr = str8.toCharArray(); // chArr = {f,o,o,d};将字符串转换为char类型的数组
    String str9 = str8.substring(1, 3); // 值为oo, [beginIndex,endIndex);左闭右开区间
    int i5 = str8.indexOf('8'); // -1;不存在则为-1
    int i6 =  str8.indexOf('o'); // 1;首个元素出现的位置
    int i7 =  str8.lastIndexOf('o');// 2;最后一个该元素出现的位置

    boolean b1 = Character.isLetter('A'); // 值为true;大写或者小写字符都是true
    boolean b2 = Character.isDigit('9');// 值为true;是否为数字字符
    boolean b3 = Character.isLowerCase('f'); // 值为true;是否为小写字符
    boolean b4 = Character.isUpperCase('F'); // 值为true,是否为大写字符


    
    String str11= "abc123";
    // 需要 import java.util.regex.*;
    Pattern p1 = Pattern.compile("[a-z]");
    boolean b5 =  p1.matcher(str11).find(); // true;字符串中是否有a-z;可配合拆分字符串使用

    String str12 = "W334";
    boolean b6 = str12.matches("[WASD][0-9]{1,2}"); // true;正则匹配,第一个字符是WASD中的任意一个;第二个字符是0-9中的任意一个;且0-9的数字为1个或者两个
    // 中间有n个0, 则有n-1个为空的数组元素
    String[] strArray = "10000001".split("0");

    

正则表达式使用总结

大写字母的为非

  • \s 空白符号;\S非空白符;
  • \d 数字;\D非数组
  • \w词字符号[a-zA-Z0-9];\W非字符

个数限制

? 表示一个或者0个

* 表示0个或者一个或者多个

+ 表示一个或者多个

{n} 表示n个

{n,} 表示至少n个

{n,m} 表示n个 <= 真实个数 <= m个

正则特殊符号拆分

对字符串中的\进行拆分时,需要使用四个反斜杠split("\\\\"); 其余需要转义的特殊符号 . | ? * + ( ) [ ] { } ^ $ \ 等) 需要使用两个反斜杠\来表示一个实际的反斜杠; 空字符串作为分隔符时是split("\\s+")