String在Java中,能表示字符串的类有:String、char[]、StringBuilder、StringBuffer
#字符串长度:length() #获取指定字符的下标索引:string.indexOf(str)返回第一次出现处的索引 #获取指定索引的字符:string.charAt(num)返回指定索引处的字符 #截取字符串:substring(9,11) #转换为字符数组toCharArray() #转换为大写字母:toUpperCase() #转换为小写字母:toLowerCase() #比较字符串内容:equals() #去除两端空白:trim() #忽略大小写比较字符串内容:equalsIgnoreCase() #重写了toString() #分隔符:spilt() #正则匹配:str.matches(regex) #根据正则替换子字符串:replaceAll(regex,"***")StringBuilder
#StringBuilder(缓冲字符串)中的方法
增:append() 删:delete() 改:replace() 插:insert() 反转:reverse()
#注意:StringBuilder并没有重写equals()所以要比较字符串是否相同,要先将StringBuilder转换为String后再比较
if(b1.toString().equals(b2.toString())) {
System.out.println("是回文");
}else{
System.out.println("不是回文");}
StringUtils
#StringUtils工具类中的方法
String repeat = StringUtils.repeat("abc",5); //将给定的字符串重复次数返回
String str = "123,456,789";
String[] array = str.split(",");
String join = StringUtils.join(array,"."); //join()相当于split()反操作。将给定的数组中每一项按照给定的字符串连接在一起
String leftPad = StringUtils.leftPad("12345",10,'#');将给定字符串str左侧添加若干个给定的字符chs以使字符串达到给定的长度size
String相关方法的作用
#长度:String.length() #作用:在循环中当作判断条件,在指定具体字符下标时当作参考点 String str = "123456"; for(int 1=0;i #下标(索引):所有的字符都有下标。索引范围:0~length()-1 #索引获取方式:通过length(),通过indexOf() #作用:通过索引查找字符charAt(),通过索引截取字符串substring()#分隔符:spilt() #作用:将字符串分隔成数组,便于从中获取所需的部分字符串#格式:时间格式,正则格式,json格式,……不同的格式都有其相应的处理方式 String str = "2008-08-08"; String regex = "^(\+86|0086)?\s?\d{11}$"; String json = "{'name':'测试者','age':'13'}";#去除两端空白:trim() 作用:#转换为大小写字母、忽略大小写比较字符串内容 #作用:输入验证字母数字#比较字符串内容:equals() #作用:验证密码对错#正则表达式验证:matches(regex) #作用:验证身份证号码格式;验证手机号码格式;验证邮箱号码格式;…… public static void main(String[] args) { String regex = "^\d{15}(\d{2}[0-9X])?$"; Scanner sc = new Scanner(System.in); while(true) { System.out.println("请输入身份证号码:"); String code = sc.nextLine(); if(code.matches(regex)) { System.out.println("身份证号码:"+code); break; } } }字符涉及到的类:char[]<=>String<=>String[]<=>StringBuilder#String=>String[]=>StringBuilder=>String String str = "123abc"; //String String[] arr = str.split(""); //String[] StringBuffer sb = new StringBuffer(); //StringBuilder for (int i = 0; i < arr.length; i++) { sb.append(arr[i]); // String并不拥有append方法,所以借助 StringBuffer } String sb1 = sb.toString(); //String#String=>char[]=>String String str = "123abc"; //字符串 char[] arr = str.toCharArray(); //char数组 String string = String.copyValueOf(arr);//字符串#String=>double=>BigDecimal String doubleStr = "12.3"; //字符串String double d = Double.parseDouble(doubleStr); //浮点型double BigDecimal d1 = BigDecimal.valueOf(d); //大类型BigDecimal#String=>Date=>Calenda=>Date=>String String str = "2008-08-08 20:08:08"; //时间字符串 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //转换类 Date date = sdf.parse(str); //Date时间 Calendar calendar =Calendar.getInstance(); //Calendar时间 calendar.setTime(date); //Calendar时间 Date date = calendar.getTime(); //Date时间 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒"); //转换类 String str1 = sdf.format(date); //时间字符串



