(1)String类部分方法
public class StringDemo2 {
public static void main(String[] args) {String domainName = "https://www.bytecollege";//trim() 去除字符串前后的空格System.out.println(" xyz ".trim());//xyzSystem.out.println("--------------");//trim() 去除字符串前的空格System.out.println(" xyz ".stripLeading());//xyz System.out.println("--------------");//trim() 去除字符串前的空格System.out.println(" xyz ".stripTrailing());// xyzSystem.out.println("--------------");//repeat(int count) 重复字符串若干次System.out.println("xyz".repeat(3));//xyzxyzxyzSystem.out.println("--------------");//replace(String string) 返回一个新的字符串,它是通过用 `newChar` 替换此字符串中出现的所有 `oldChar` 得到的System.out.println(domainName.replace("http://","https://"));//https://WWW.baidu.comSystem.out.println("--------------");//split(String string) 分割字符String testString = "testName.jpg";String[] testStrings = testString.split("\\."); for(String s1:testStrings) {System.out.println(s1);/*** testName* jpg*/}System.out.println("--------------");String testString1 = "abc";String[] testStrings1 = testString1.split("a");for(String s2:testStrings1) {System.out.println(s2);}System.out.println("分割后的字符个数为:"+testStrings1.length);/*** * bc* 分割后的字符个数为:2*/System.out.println("--------------");String[] testStrings2 = testString1.split("c");//自动省略字符串后边的空格for(String s3:testStrings2) {System.out.println(s3);}System.out.println("分割后的字符个数为:"+testStrings2.length);/*** ab* 分割后的字符个数为:1*/System.out.println("--------------");//split(String string,int limit) 分割,保留末尾的空字符System.out.println("");String [] time = "2022-7-27 ".split("-",0);for(int i=0;i<time.length;i++) {System.out.println(time[i]);/*** * 2022* 7* 27*/}System.out.println("--------------");//join(String s,str1,str2....) 以s为连接符,连接字符串System.out.println(String.join(".", "www","baidu.com"));//www.baidu.comSystem.out.println("--------------");//concat(String string) 将指定字符串连接到此字符串的结尾。System.out.println(domainName.concat(".com"));//baidu.comSystem.out.println("--------------");//char[] toCharArray 将字符串转换为字符数组char [] chars=domainName.toCharArray();System.out.println(Arrays.toString(chars));//[h, t, t, p, s, :, /, /, w, w, w, ., b, y, t, e, c, o, l, l, e, g, e]System.out.println("--------------");//isEmpty() 判断某个字符串是否为空字符串 数组长度是length属性,字符串长度是length方法System.out.println(domainName.isEmpty());//falseSystem.out.println("--------------"); }
} (2)StringBuilder和StringBuffer
构造器:StringBuilder():创建了一个空的StringBuilder对象,底层通过创建数组实现,根据不同的字符编码,长度为16或者32。StringBuilder(String str)和 StringBuilder(Charsequence str):根据str字符串创建一个StringBuilder对象该参数长度+16,或者(参数长度+16)<< 1作为底层数组的初始化长度将参数放置到数组中StringBuilder(int capacity):指定底层数组的初始化容量 方法:
/**
-
StringBuilder练习
-
@author Ray * */ public class StringBuilderDemo {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder("华为技术有限公司"); //容量和长度 System.out.println("底层字符串容量是:"+sb.capacity());//16+5=21 System.out.println("字符串长度是:"+sb.length());//5 // StringBuilder append(String str) 将str插入到当前字符串的末尾位置; System.out.println(sb.append("!")); // StringBuilder delete(int start ,int end)将当前字符串中从start(包含)开始到end(不包含)之间的内容移除; System.out.println(sb.delete(2, 4)); // StringBuilder deleteCharAt(int index) 删除索引处字符 System.out.println(sb.deleteCharAt(6)); // StringBuilder replace(int start , int end , String str)将当前字符串中start到end之间的内容全部用str的内容替换; System.out.println(sb.replace(2, 5, "通讯科技")); // substring(int start) 从start处截取到末尾 System.out.println(sb.substring(2)); // String substring(int start, int end) 从start处截取到end System.out.println(sb.substring(0,2)); //StringBuilder insert(int offset,String str) 将str插入到当前字符串中offset指向的位置上; System.out.println(sb.insert(2,"-")); // indexOf(String str)字符串str第一次出现的位置 System.out.println(sb.indexOf("华")); // StringBuilder reverse() 实现字符串的反转; System.out.println(sb.reverse());
} }