第五章java总结

目录

第五章字符串

5.1声明字符串

5.1.2创建字符串用

 5.2 连接字符串

5.3 提取字符串信息 

5.3.3 获取子字符串索引位置 

5.3.6 判断子字符串是否存在 

 5.4字符串的操作

5.4.1 截取字符串

 5.4.2字符串替换

5.4.3字符串分割 

5.4.5去掉空白内容 

 5.4.7格式化字符串​

 5.5可变字符串

5.6 总结


第五章字符串

5.1声明字符串

在 Java 基本数据类型一节中,我们已经知道 Java 中的数据类型:一个是基本数据类型,另一个是引用数据类型。字符串(String)便属于引用数据类型。字符串在 Java 程序中无处不在,其实我们在第一个 Java 程序中就已经使用过了字符串。

5.1.2创建字符串用

字符串变量赋值并输出

package f;

public class a {
	public static void main(String[] args) {
		String a="时间就是金钱,我的朋友。";//直接引用字符串常量
		System.out.println("a="+a);//输出a的值
		String b=new String("我爱清汤小肥羊");//利用构造方法实例化
		String c=new String(b);//使用已用字符串变量实例化
		System.out.println("b="+b);//输出b的值
		System.out.println("c="+c);//输出c的值
		char[] charArray= {'t','i','m','e'};//遍历数组
		String d=new String(charArray);//利用字符串组实例化
		System.out.println("d="+d);//输出d的值
		char[] charArray2= {'时','间','就','是','金','钱'};//遍历数组
		String e=new String(charArray2,4,2);//提取字符串数组部分内容
		System.out.println("e="+e);//输出e的值
	}
}

 5.2 连接字符串

package f;

public class b {
	public static void main(String[] args) {
		String a="abc";//创建字符串
		String b="123";//创建字符串
		String c=a+b+"!";//创建字符串
		String d="拼接字符串";//创建字符串
		d+=c;//给d的赋值
		System.out.println("a="+a);//输出语句
		System.out.println("b="+b);//输出语句
		System.out.println("c="+c);//输出语句
		System.out.println("d="+d);//输出语句
	}

}

5.2.2 连接其他数据类型

package f;

public class c {
	public static void main(String[] args) {
		int booktime=4;//定义int型booktime为4
		float practice=2.5f;//定义float型practice为2.5f
		System.out.println("我每天花费"+booktime+"小时看书;"+practice+"小时上机练习");//输出语句
	}
}

5.3 提取字符串信息 

package f;

public class d {
	public static void main(String[] args) {
		String str="床前明月光,疑是地上霜";//创建字符串
		char chr=str.charAt(4);//将字符串str中索引位置为4的字符赋值给chr
		System.out.println("字符串中索引位置为4的字符是:"+chr);//输出语句chr
	}

}

5.3.3 获取子字符串索引位置 

package f;

public class e {
	public static void main(String[] args) {
		String str="12345abcde";//创建字符串
		int charIndex=str.indexOf("abc");//获取字符串str中"abc"首次出现的索引,赋给charIndex
		if (charIndex !=-1) {//判断index的值不等于-1
			System.out.println("str中存在abc字符串");//输出语句
		}
		else {
			System.out.println("str中没有abc字符串");//输出语句
		}
	}

}

 查找字符串

package f;

public class f6 { 
	public static void main(String[] args) {
		String str="We are the world";//创建字符串
		int firstIndex=str.indexOf("r");//获取字符串中"r"第一次出现的位置
		int secondIndex=str.indexOf("r",firstIndex+1);//从第一次出现的索引位置之后开始查找
		int thirdIndex=str.indexOf("r",secondIndex+1);//从第二次出现的索引位置之后开始查找
		System.out.println("r第一次出现的索引位置是:"+firstIndex);//输出语句
		System.out.println("r第二次出现的索引位置是:"+secondIndex);//输出语句
		System.out.println("r第三次出现的索引位置是:"+thirdIndex);//输出语句
	}

}

查找字符串go最后出现的位置

package f;

public class h {
	public static void main(String[] args) {
		String str="Let it go!Let it go!";//创建字符串
		int gIndex=str.lastIndexOf("g");//返回"g"最后一次出现的位置
		int goIndex=str.lastIndexOf("go");//返回"go"最后一次出现的位置
		int oIndex=str.lastIndexOf("o");//返回"o"最后一次出现的位置
		System.out.println("字符串\"Let it go!Let it go!\"中:\n");//输出语句
		System.out.println("\"g\"最后一次出现的位置是:"+gIndex);//输出语句
		System.out.println("\"o\"最后一次出现的位置是:"+oIndex);//输出语句
		System.out.println("\"go\"最后一次出现的位置是:"+goIndex);//输出语句
				
	}

}

 

 查找字符串a出现的位置

package f;

public class f {  
	public static void main(String[] args) { 
		String str="01a3a56a89";//创建字符串
		int lastIndex=str.lastIndexOf("a");//获取字母a最后一次出现的索引位置
		int fiveBeforeIndex=str.lastIndexOf("a",5);//满足条件的结果集中,返回最大的数字
		int threeBeforeIndex=str.lastIndexOf("a",3);//满足条件的结果集中,返回最大的数字
		System.out.println("字符串\"01a3a56a89\"中:\n");//输出语句
		System.out.println("字母\"a\"最后一次出现的位置是:"+lastIndex);//输出语句
		System.out.println("从索引位置5开始往回搜索,字母\"a\"最后一次出现的位置:"+fiveBeforeIndex);//输出语句
		System.out.println("从索引位置3开始往回搜索,字母\"a\"最后一次出现的位置:"+threeBeforeIndex);//输出语句
}
}

package f;

public class i {
	public static void main(String[] args) {
		String myDream1="我有一个梦想,幽谷上升,高山下降;";//创建字符串
		String myDream2="坎坷曲折之路成坦途,圣光披露,满照人间。";//创建字符串
		System.out.println(myDream1+myDream2+"\n\t\t-马丁.路德金《我有一个梦想》\n");//输出语句
		boolean firstBool=myDream1.startsWith("我有一个梦想");//判断是否是前缀
		boolean secondBool=myDream2.startsWith("我有一个梦想");//判断是否是前缀
		if(firstBool) {
			System.out.println("前半句是以\"我有一个梦想\"开始的。");//输出语句
		}else if(secondBool) {
			System.out.println("后半句是以\"我有一个梦想\"开始的。");//输出语句
		}else {
			System.out.println("没有以\"我有一个梦想\"开始的。");//输出语句
		}
	}

}

查询五言绝句第二行是否以”举“开头

package f;

public class f10 {
	public static void main(String[] args) {
		String str="床前明月光,疑是地上霜。\n举头望明月,低头思故乡。";//创建字符串
		System.out.println("《静夜思》\n"+str+"\n");//输出古诗
		int enterIndex=str.indexOf("\n");//返回换行符所在的位置
		boolean flag=str.startsWith("举",enterIndex+1);//换行符在字符串中只占一个字符所有加1
		if(flag) {
			System.out.println("第二行是以\"举\"开始的");//如果为真输出此举
		}else {
			System.out.println("第二行是以\""+str.charAt(enterIndex+1)+"\"开始的");//反之输出此句
		}
	}

}

 

 字符串是否以句号结尾

package f;

public class f11 {
	public static void main(String[] args) {
		String str1="你说完了吗";//创建字符串
		String str2="我说完了。";//创建字符串
		boolean flag1=str1.endsWith("。");//判断str1是否以“。”结尾
		boolean flag2=str2.endsWith("。");//判断str2是否以“。”结尾
		System.out.println("字符串str1是以句号结尾吗?"+flag1);//输出语句
		System.out.println("字符串str2是以句号结尾吗?"+flag2);//输出语句
	}

}

字符串转换成字符数组

package f;

public class f12 {
	public static void main(String[] args) {
		String str="这是一个字符串";//创建字符数组
		char[] ch=str.toCharArray();//将字符串转换成字符数组
		for(int i=0;i<ch.length;i++) {//遍历字符数组
			System.out.println("数组第"+i+"个元素为:"+ch[i]);//输出语句
		}
	}

}

 

5.3.6 判断子字符串是否存在 

获取字符串内容

package f;

public class f13 {
	public static void main(String[] args) {
		String str="今天的菜单:蒸羊羔,蒸熊掌,蒸鹿尾。烧花鸭,烧雏鸡,烧子鹅,卤煮咸鸭,酱鸡,腊肉,松花小肚。";//创建字符串
		System.out.println(str);//输出字符串
		boolean requesr1=str.contains("腊肉");//判断是否有“腊肉”的字样
		System.out.println("今天有腊肉吗?"+requesr1);//输出语句
		boolean request2=str.contains("汉堡");//判断是否有汉堡的字样
		System.out.println("今天有汉堡吗?"+request2);//输出语句
	}
}

 5.4字符串的操作

5.4.1 截取字符串

package f;

public class f14 {
	public static void main(String[] args) {
		String str="为革命保护视力,眼保健操开始";//创建字符串
		String substr= str.substring(8);//从第8位开始截取字符串
		System.out.println("字符串str的后半句是:"+substr);//输出语句
	}
 
}

 截取指定的字符串

package f;

public class f15 {
	public static void main(String[] args) {
		String str="闭门造车,出门合辙";//创建字符串
		String substr=str.substring(0,4);//输出0到4之间的数
		System.out.println("字符串str的前半句是:"+substr);//输出语句
	}

}

 5.4.2字符串替换

package f;

public class f16 {
	public static void main(String[] args) {
		String str="明月几时有,把酒问青天";//创建字符串
		String restr=str.replace("月","日");//将str中的月换成日
		System.out.println("字符串str替换之后的效果:"+restr);//输出语句
	}

}

 将数字替换成”?“

package f;

public class f17 {
	public static void main(String[] args) {
		String str="0123456789abc\\d";//创建字符串,前十位数字
		String restr=str.replace("\\d","?");//把符号\\d替换成"?"
		String restrAll=str.replaceAll("\\d", "?");//使用replaceAll()将符号\\d替换成"?"
		System.out.println("字符串str:"+str);//输出语句
		System.out.println("使用replace()替换的结果:"+restr);//输出语句
		System.out.println("使用replaceAll()替换的结果:"+restrAll);//输出语句
	}

}

使用replaceFirst的使用方法 

package f;

public class f18 {
	public static void main(String[] args) {
		String str="8I want to marry you,so I need you!";//创建字符串
		String noNumber=str.replaceFirst("\\d","");//将开头的数字替换成两个双引号
		String youToHer=noNumber.replaceFirst("you","her");//将第一次出现的“you”替换成“her”
		System.out.println("替换之后的结果是:"+youToHer);//输出语句
		
	}

}

5.4.3字符串分割 

package f;

public class f19 {
	public static void main(String[] args) {
		String str="从前有座山,山里有座庙,庙里有个小松鼠";//创建字符串
		String[] strArray=str.split(",");//用字符串按照","进行分割
		for(int i=0;i<strArray.length;i++) {//使用for循环,循环所有数字
			System.out.println("数组第"+i+"索引的元素是:"+strArray[i]);//输出语句
		}
	}

}

 根据多个字符分割字符串

package f;

public class f20 {
	public static void main(String[] args) {
		String str="a1a2,c,d e f|gh";//创建字符串
		String[] a1=str.split(",");//使用","分割
		String[] a2=str.split(" ");//使用空格分割
		String[] a3=str.split("\\|");//使用"|"分割
		String[] a4=str.split(" \\d");//使用表达式分割
		String[] a5=str.split(",| |\\||\\d");//同时使用", 空格| 数字分割"连续所有分割
		System.out.println("str的原值:["+str+"]");//显示str的原值
		System.out.print("使用\",\"分割:");//输出语句
		for(String b:a1) {//循环遍历数组
			System.out.print("["+b+"]");//输出语句			
		}
		System.out.println();//换行
		System.out.print("使用空格分割:");//输出语句
		for(String b:a2) {//循环遍历数组
			System.out.print("["+b+"]");//输出语句
		}
		System.out.println();//换行
			System.out.print("使用\"|\"分割:");//输出语句
			for(String b:a3) {//循环遍历数组
				System.out.println("["+b+"]")//输出语句
			}
			System.out.println();//换行
			System.out.print("使用数字分割:");//输出语句
			for(String b:a4) {//循环遍历数组
				System.out.print("["+b+"]");//输出语句
			}
			System.out.println();
			System.out.println("同时使用所有分隔符:");//输出语句
			for(String b:a5) {//循环遍历数组
				System.out.print("["+b+"]");//输出语句
			}
			System.out.println();//换行
	}

}

对字符串进行二次拆分 

package f;

public class f21 {
	public static void main(String[] args) {
		String str="192.168.0.1";//创建字符串
		String[] firstArray=str.split("\\.");//按照"."进行分割
		String[] secondArray=str.split("\\.",2);//按照"."进行两次分割
		System.out.println("str的原值为:["+str+"]");//输出str原值
		System.out.print("全部分割的结果:");//输出语句
		for(String a:firstArray) {//将firstArray的值给a
			System.out.print("["+a+"]");//输出语句
		}
			System.out.println();//换行
			System.out.println("分割两次的结果:");//输出语句
			for(String a:secondArray) {//将secondArray的值给a
				System.out.print("["+a+"]");//输出语句
		}
			System.out.println();//换行
	}

}

package f;

public class f22 {
	public static void main(String[] args) {
		String str="abc DEF";//创建字符串
		System.out.println(str.toLowerCase());//按照小写格式输出
		System.out.println(str.toUpperCase());//按照大写格式输出
	}

}

5.4.5去掉空白内容 

package f;

public class f23 {
	public static void main(String[] args) {
		String str="       abc         ";//创建字符串
		String shortStr=str.trim();//使用trim去掉空格
		System.out.println("str的原值是:["+str+"]");//输出语句
		System.out.println("去掉首尾空白的值:["+shortStr+"]");//输出语句
	}

}

 把空白字符换成空字符

package f;

public class f24 {
	public static void main(String[] args) {
		String str="a b  cd   e    f g    ";//创建字符串
		String shortstr=str.replaceAll("\\s", "");//将字符串空白内容替换成""
		System.out.println("str的原值是:["+str+"]");//输出语句
		System.out.println("删除空内容之后的值是:["+shortstr+"]");//输出语句
	}

}

 比较字符串

package f;

public class f25 {
	public static void main(String[] args) {
		String tom,jerry;//直接引入字符串常量
		tom="I am a student";//赋值
		jerry="I am a student";//赋值
		System.out.println("直接引入字符串常量的比较结果:"+(tom=jerry));//输出语句
		tom=new String("I am a student");//赋值
		jerry=new String("I am a student");//赋值
		System.out.println("使用new创建对象的比较结果:"+(tom=jerry));//输出语句
	}

}

判断两个字符串是否相等

package f;

public class f26 {
	public static void main(String[] args) {
		String str1="Hello";//创建字符串
		String str2=new String("Hello");//创建字符串
		String str3=new String("你好");//创建字符串
		String str4=str2;//给str4赋值
		System.out.println("str1==str2的结果:"+(str1==str2));//输出语句
		System.out.println("str1==str3的结果:"+(str1==str3));//输出语句
		System.out.println("str1==str4的结果:"+(str1==str4));//输出语句
		System.out.println("str2==str4的结果:"+(str2==str4));//输出语句
		System.out.println("str.equals(str2)的结果:"+str1.equals(str2));//输出语句
		System.out.println("str.equals(str3)的结果:"+str1.equals(str3));//输出语句
		System.out.println("str.equals(str4)的结果:"+str1.equals(str4));//输出语句
	}

}

 

 判断两个是否相等

package f;

public class f27 {
	public static void main(String[] args) {
		String str1="abc";//创建字符串对象
		String str2="ABC";//创建字符串对象
		System.out.println("区分大小写的结果:"+str1.equals(str2));//输出语句
		System.out.println("不区分大小写的结果:"+str1.equalsIgnoreCase(str2));//输出语句
		
	}

}

 5.4.7格式化字符串

package f;	
import java.util.Date;//导入java.util.Date类
public class f28 {
	public static void main(String[] args) {
		Date date=new Date();//创建Date对象date
		String year=String.format("%tY",date);//将date进行格式化
		String month=String.format("%tm", date);//将date进行格式化
		String day=String.format("%td",date);//将date进行格式化
		System.out.println("今天是:"+year+"年");//输出信息
		System.out.println("现在是:"+month);//输出语句
		System.out.println("今天是:"+day+"号");//输出语句
	}
}

 

 

package f;
import java.util.Date;
public class f29 {
	public static void main(String[] args) {
		Date date=new Date();//创建Date对象date
		String hour=String.format("%tH",date);//将date进行格式化
		String minute=String.format("%tM",date);//将date进行格式化
		String second=String.format("%tS",date);//将date进行格式化
		System.out.println("现在是:"+hour+"时"+minute+"分"+second+"秒");//输出语句
	}
}

 

package f;
import java.util.Date;
public class f30 {
	public static void main(String[] args) {
		Date date=new Date();//创建Date对象date
		String time=String.format("%tc", date);//将Date格式化
		String form=String.format("%tF", date);//将date进行格式化
		System.out.println("全部的时间信息是:"+time);//输出语句
		System.out.println("年-月-日格式:"+form);//输出语句
	}
}

不同类型数字格式化 

package f;

public class f31 {
	public static void main(String[] args) {
		String str1=String.format("%c", 'X');//输出字符
		System.out.println("字母x大写:"+str1);//输出字符
		String str2=String.format("%d", 1251+3950);//输出数字
		System.out.println("1251+3950的结果是:"+str2);//输出字符
		String str3=String.format("%.2f", Math.PI);//输出小数点后2位
		System.out.println("Π取两位小数点:"+str3);//输出字符
		String str4=String.format("%b", 2<3);//输出布尔值
		System.out.println("2<3的结果是:"+str4);//输出字符
		String str5=String.format("%h", 3510);//输出哈希散列码
		System.out.println("3510的hashCode值:"+str5);//输出字符
		String str6=String.format("%o",33);//输出8进制
		System.out.println("33的8进制结果是:"+str6);//输出字符
		String str7=String.format("%d",33);//输出16进制
		System.out.println("33的16进制结果是:"+str7);//输出字符
		String str8=String.format("%e", 120000.1);//输出科学计数法
		System.out.println("120000.1用科学计数法表示:"+str8);//输出字符
		String str9=String.format("%a", 40.0);//输出带有效位数和指数的16进制浮点值
		System.out.println("40.0的进制浮点值:"+str9);//输出百分号和数字
		System.out.println(String.format("天才是由%d%的灵感,%d%%的汗水。",1,99));//输出语句
	}

}

 使用字符串的输出格式

package f;

public class f32 {
	public static void main(String[] args) {
		String str1=String.format("%5d", 123);//让字符串输出的最大长度的最大长度为5,不足补空格
		System.out.println("输出长度为5的字符串|"+str1+"|");
		String str2=String.format("%-5d", 123);//让字符串左对齐
		System.out.println("左对齐|"+str2+"|");//输出字符
		String str3=String.format("%#o", 33);//在8进制前加一个0
		System.out.println("33进制8进制结果是:"+str3);//输出字符
		String str4=String.format("%#x", 33);//在16进制前加一个0x
		System.out.println("33进制16进制结果是:"+str4);//输出字符
		String str5=String.format("%+d", 1);//显示数字正负号
		System.out.println("我是正数:"+str5);//输出字符
		String str6=String.format("%+d",-1);//显示数字正负号
		System.out.println("我是负数:"+str6);//输出字符
		String str7=String.format("% d", 1);//在正数前补一个空格
		System.out.println("我是正数,前面有空格:"+str7);//输出字符
		String str8=String.format("% d", -1);//在负数前补一个负号
		System.out.println("我是负数,前面有负号:"+str8);//输出字符
		String str9=String.format("%05d", 12);//让字符串输出的最大长度的最大长度为5,不足补0
		System.out.println("前面不够的数用0填充:"+str9);//输出字符
		String str10=String.format("%,d", 123456789);//用逗号分割数字
		System.out.println("用逗号分隔:"+str10);//输出字符
		String str11=String.format("%(d", 13);//正数无影响
		System.out.println("我是正数,我没有括号:"+str11);//输出字符
		String str12=String.format("%(d", -13);//让负数用括号括起来
		System.out.println("我是正数,我有括号:"+str12);//输出字符
	}

}

 5.5可变字符串

package f;

public class f33 {
	public static void main(String[] args) {
		StringBuffer sbf=new StringBuffer("门前大桥下,");//创建StringBuffer对象
		sbf.append("游过一群鸭,");//追加字符串常量
		StringBuffer tmp=new StringBuffer("快来快来数一数,");//追加StringBuffer对象
		sbf.append(tmp);//追加整数变量
		int x=24678;//定义值
		sbf.append(x);//追加整数变量
		System.out.println(sbf.toString());//输出
	}
}

 setCharAt的使用方法

package f;

public class f34 {
	public static void main(String[] args) {
		StringBuffer sbf=new StringBuffer("0123456");//创建StringBuffer对象
		System.out.println("sbf的原值是"+sbf);//输出语句
		sbf.setCharAt(3,'A');//将索引为3的字符改成'A'
		System.out.println("修改后的值是"+sbf);//输出语句
	}

}

字符串反序输出 

package f;

public class f35 {
	public static void main(String[] args) {
		StringBuffer sbf=new StringBuffer("0123456");//创建StringBuffer对象
		System.out.println("sbf的原值为:"+sbf);//输出语句
		sbf=sbf.insert(5,"F");//将索引为5的字符改成'F'
		System.out.println("修改之后的值是"+sbf);//输出语句
	}

}

删除指定字符串内容 

package f;

public class f36 {
	public static void main(String[] args) {
		StringBuffer sbf=new StringBuffer("同一个世界,同一个梦想");//创建StringBuffer对象
		System.out.println("sbf的原值为:"+sbf);//输出语句
		sbf=sbf.reverse();//将字符序号sbf反转
		System.out.println("修改之后的值是"+sbf);//输出语句
	}

}

StringBuffer的使用方法 

package f;

public class f38 {
	public static void main(String[] args) {
		StringBuffer sbf=new StringBuffer("ABCDEFG");//创建字符串序列
		int lenght=sbf.length();//获取字符串序列的长度
		char chr=sbf.charAt(5);//获取索引为5的字符
		int index=sbf.indexOf("DEF");//获取DEF字符
		String substr=sbf.substring(0,2);//截取DEF字符串所在的索引位置
		StringBuffer tmp=sbf.replace(2,5,"1234");//将从索引2开始至5之间的字符序列替换成"1234"
		System.out.println("sbf的原值为:"+sbf);//输出语句
		System.out.println("sbf的长度为:"+lenght);//输出语句
		System.out.println("索引为5的字符为:"+chr);//输出语句
		System.out.println("DEF字符串的索引位置为:"+index);//输出语句
		System.out.println("索引0开始至索引2之间的字符串为:"+substr);//输出语句
		System.out.println("替换成字符串为:"+tmp);//输出语句
		}

}

 StringBuffer的使用方法 

package f;

public class f39 {
	public static void main(String[] args) {
		StringBuffer sbd=new StringBuffer();//创建StringBuffer对象
		System.out.println("sbf的原值为空");//输出语句
		sbd.append("我是StringBuffer类");//输出语句
		System.out.println("sbf追加字符串"+sbd);//输出语句
		int length=sbd.length();//输出sbd的长度
		System.out.println("sbd的长度为:"+length);//输出语句
		sbd=sbd.insert(length-1, "123456");//使用insert长度减一插入"123456"
		System.out.println("插入字符串:"+sbd);//输出语句
		sbd=sbd.delete(sbd.length()-1, sbd.length());//使用delete把sbd长度减1长度不够剪掉最后一个字
		System.out.println("删除最后一个字:"+sbd);//输出语句
		sbd=sbd.reverse();//使用reverse反序输出sbd
		System.out.println("反序输出:"+sbd);//输出语句
	}

}

 5.5.3StringBuffer,StringBuilder,String之间的关系

package f;

public class f40 {
	public static void main(String[] args) {
		String str="String";//创建字符串
		StringBuffer sbf=new StringBuffer(str);//String转换成StringBuffer
		StringBuilder sbd=new StringBuilder(str);//String转换成StringBuffer
		str=sbf.toString();//StringBuffer转换成String
		str=sbd.toString();//StringBuffer转换成String
		StringBuilder bufferToBuilder=new StringBuilder(sbf.toString());//StringBuffer转换成StringBuilder
		StringBuilder builderToBuffer=new StringBuilder(sbd.toString());//StringBuffer转换成StringBuilder
	}

}

验证字符串操作和字符串生成器操作的效率

package f;

public class f41 {
	public static void main(String[] args) {
		String str="";//创建空字符串
		long starTime=System.currentTimeMillis();//定义对字符串执行操作的起始时间
		for(int i=0;i<10000;i++) {//循环10000次循环
			str=str+i;//循环追加字符串
		}
		long endTime=System.currentTimeMillis();//定义对字符串执行操作的时间
		long time=endTime-starTime;//计算对字符串执行操作的时间
		System.out.println("String循环1万次消耗时间:"+time);//输出语句
		StringBuilder builder=new StringBuilder("");//创建字符串生成器
		starTime=System.currentTimeMillis();//定义对字符串执行操作的时间
		for(int j=0;j<10000;j++) {//循环语句
			builder.append(j);//循环追加字符
		}
		endTime=System.currentTimeMillis();//定义操作后的时间
		time=endTime-starTime;//计算对字符串执行操作的时间
		System.out.println("StringBuilder循环1万次消耗时间:"+time);//输出语句
		StringBuilder builder2=new StringBuilder("");//创建字符串生成器
		starTime=System.currentTimeMillis();//定义对字符串执行操作的时间
		for(int j=0;j<50000;j++) {//循环10000次循环
			builder2.append(j);//循环追加字符串
		}
		endTime=System.currentTimeMillis();//定义操作后的时间
		time=endTime-starTime; //追加操作执行的时间
		System.out.println("StringBuilder循环5万次消耗时间:"+time);//输出语句
	}

}

5.6 总结

本章学习了很多字符串的操作,处理字符串的代码在程序占有很大比例,对理解,学习和操作字符串打下基础。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值