Java 之 常用类(一)
1.字符串:
a.分类:String、StringBuffer、StringBuilder
b.特殊:①String是唯一一个可以直接用常量赋值的引用数据类型
②String的常量也是一个对象 (即 "Hello"也是对象)
③String对象内容不可变!!!
④由于③的存在,导致String在做字符串拼接的时候,会有较大的消耗,而StringBuffer、StringBuilder就是用来解决String内容不可变这个问题的
⑤在Java中专门重载了“+”号操作符,用来实现字符串的拼接
c.内存:Java对String常量会在加载期进行预加载,产生到数据段的字符串常量池当中。运行的时候,如果要用到某个String常量,只需直接从常量池取出即可
2.String与数组相关的方法:
str.lengtn() //str的字符串长度 str.toCharArray() // 把str转换成char[]数组 str.charAt(2) // 取对应下标位置的字符 str.indexOf('e') //返回字符在String中首次出现的下标,没出现返回-1 str.lastIndexOf('e') //返回字符在String中最后出现的下标,没出现返回-1
3.String与字母相关的方法:
str3 = str.toUpperCase( ) //得到一个新的全大写的新字符串 str3 = str.toLowerCase( ) //得到一个新的全小写的新字符串 "Yes".equalsIgnoreCase ("yeS") //忽略大小写进行比较 "Yes".compareTo ("no") //按字典顺序比较(得到第一个不同的Aism值的差值,若每个都相同则比较长度差) str0.compareToIgnoreCase (str1) //忽略大小写,字典顺序比较
4.String与内容操作相关的方法:
str2 = str.replace ( 'a' , 'A' ) //将str中的某个子串替换成另一个字符串 str3 = str.replace ( "ll" , " " ) //同上 str.endsWith ("lo") //判断字符串以什么结尾 str.startsWith ("h") //判断字符串以什么开始 str4 = str.substring(0,3) //根据下标位置截取字符串 [前闭,后开) str4 = str.substring(3) //根据下标位置截取字符串到末尾位置 str6 = str.concat("world") //字符串连接,相当于“+”号
5.String最重要的三个方法
a. trim()——去掉字符串前后的空格
★只要接收外部输入的字符串,就应该默认调用一次trim()去掉字符串前后的无效空格,再进行后续操作
b. split()——根据指定的分隔符,做字符串拆分
String birthday = "1992-2-14";
String[] value = birthday.split("-");
c. matches()——正则表达式校验
①正则表达式(regex):字符串内容的匹配模版
②正则表达式特点:正则表达式本身就是一个字符串
[] 表示一个字符,括号里的内容是这个字符有什么选择
{} 表示前面正则表达式出现的次数 {m,n}至少-至多 {m,}至少-无穷 {m}只能
? 相当于 {1,0} *相当于{0,} +相当于{1,}
()表示分组,多选一 (m|n)二选一 (m|n|k)三选一