Java字符串知识点集合

一. String类
1.声明字符串:String str;
String指定该变量为字符串类型
str任意有效的标识符,表示字符串变量的名称
注意:声明字符串变量必须让经过初始化才能使用,否则编译器会报出“变量未被初始化错误”
2.创建字符串
(1)String(char a[])//用字符数组a创建String对象
eg:

char a[] = {‘g’, ‘o, ‘o’, ‘d’};
String s = new String(a);
String s = new String{“good”};

(2)String(char a[],int offset,int length)
offset:表示开始截取字符串的位置
length:表示截取字符串的长度
eg:

char a[]={‘s’,‘t’,‘u’,‘d’,‘e’,‘n’,‘t’,};
			String s= new String(a,2,4);
			String s = new String(“uden”);

(3)String(char[] vaule)
eg:

char a[] = {‘s’,‘t’,‘u’,‘d’,‘e’,‘n’,‘t’};
			String s = new String;
			String s = new String(“student”);

eg:

String str1,str2;
			str1 = “We are students”;
			str 2 = “We are students”;

二. 连接字符串
可以使用+运算符可以实现连接多个字符串的功能
注意:java中一句相连的字符串不能分开在两行中写。
如果需要分两排写,需要使用+将两个字符串连起来
eg:

System.out.println(“I like”+
“java”)

只要使用+运算符的一个操作数是字符串,编译器就会出现将另一个操作符转换成字符串形式

三. 获取字符串信息
1.str.length();//获取字符串长度
eg:

String str = “We are students”;
int size = str.length();

2.str.indexOf(substr)//字符串查找(搜索该字符首次出现位置)
substr:要搜索的字符串
eg:

String str = “We are students”;
		int size = str.indexOf(“a”);//变量size是3

str.lastIndexOf(substr) //字符串查找(搜索该字符末次出现位置)
注意:没有搜索到对应字符,返回值是-1
如果搜索的是空格,字节输入“”(中间不打空格)

3.str.charAt(int index)//获取指定位置的字符
intdex:整值型,用于指定要返回字符的下标
eg:

String str = “hello world”;
	char mychar = str.charAt(6);//输出第六个字符:w

三.获取字符串
1.str.suberstring(int beginIndex)//截取字符串从指定的开位置到结尾
beginIndex:指定从某一索引除开始截取字符
String substr = str substring(6)//按照上面的hello world应该输出:world
注意:在字符串空格占用一个索引位置
substring(int beginIndex,int endIndex)//截取字符串选定位置.

2.str.trim()//去除空格
eg:

String str = “   java    class;
	System.out.println(“字符串原来的长度”+str.length());//16
	System.out.println(“去掉空格后的长度”+str.trim.length());//9

3.str.replace(char oldChar,char newChar)//字符串替换
oldChar:要替换的字符或字符串
newChar:替换原来字符串的内容
eg:

String str = “address”;
	String newstr = str.replace(“a”, “A”);//输出Address
注意:所有相同字符全部都会被替换。

4.str startsWith(String prefix)//判断当前字符串的前缀是否为参数指定字符串
str.endWith(String suffix)//判断当前字符串后缀是否为参数指定字符串
注意:这两个方法的返回值都为boolean

String tom = new String(“I am a student”);
		String jerry = new String(“I am a student”);
		boolean b = (tom == jerry);//比较两个字符串是否相同

6.str.equals(String otherstr);//返回结果为boolean
str、otherstr是要比较两个字符串对象
str.equalsIgnoreCase(String otherstr);//返回结果为boolean
str、otherstr是要比较的两个字符串对象(忽视字母的大小写)
eg:

String s1 = new String(“abc”);
			String s2 = new String(“ABC”);
			boolean b = s1.equals(s2);//输出的值为false
			boolean b1 = s1.equalsIgnoreCase(s2);//输出的值为true

7.str.compareTo(String otherstr);//按字典顺序比较两个字符串
eg:

String str = new String(“b”);
			String str2 = new String(“a”);

System.out.println(str.compareTo(str2));//结果为1(以str2为参数字符)
注意:结果:以上面为例str在str2前面为负数,后面为正数,一样位置为0

8.str.toLowerCase();//大写字母转小写
str.toUpperCase();//小写字母转大写
eg:

String str = new String(“ABCdef”);
String newstr = str.toLowerCase();

9.str.split(String sign);//字符串分割
split:为分割字符串的分割符
注意:如果想定义多个分割符,可以使用“|”“,|=”表示分割符为“,”和“=”
str.split(String sign,int limit);
sign:分割字符串的分割符,也可以使用正则表达式
limit:限制的分割次数
eg:

String str =192.65.34.0”`
			String[] fristArray = str.split(“\\.);//按照“.”进行分割,使用转义字符
			String[] sceondArray = str.split(“\\.,2);//按照“.”进行分割2次
			for(String a:fristArray){
				System.out.println([+a+]);//[192][65][34][0]
			}
	//用for遍历数组:for(元素变量a:遍历对象)
			for(String a:secondArray){
		System.out.println([+a+]);//[192][65.34.0]
		}

四. 格式化字符串
str.format(String format,Object…args);// str.format(某种格式,执行对象);
format:格式字符串
args:格式字符串中由格式说明符引用的参数。如果还有格式说明符以外的参数胡,则忽略这些额外参数,此参数的数目是可变的,也可以为0.
format(Local 1,String format,Object…args);
eg:

Date date = new Date();
	String year = new Date(%tY”,date);
	String month= new Date(%tB”,date);
	String date = String.format(%td”,date);
	System.out.println(year); 

五. 正则表达式
在正则表达式中“.”代表任何一个字符,因此在正则表达式中如果想使用普通意义的点的字符“.”就必须使用“、”。

String regex = “\\w+@\\w+(\\.\\w{2,3})*\\.\\w{2,3}”
	String str1 = “aaa@”
	if(str1.matches(regex)){//判断字符串变量是否于正则表达式匹配
		System.out.println();
}

解释:\w+@\w+(\.\w{2,3})\.\w{2,3}
“\w:表示任意字符
+表示该字符可以出现一次或者多次
(\.\w{2,3})
:表示形如.com格式的字符串可以出现0或多次
\.\w{2,3}”:用于匹配E-mail地址中结尾字符“.com”

六. 字符串生成器
append(content)//增加
append:附加,增加
content:内容(任何数据类型或者其他对象)
insert(int offset arg)//插入
offset:字符串生成器的位置,该参数必须>0,且小于等于此序列的长度
delete(int start,int end)//删除
eg:

StringBuilder bf = new StringBuilder(“hello”);
		bf.insert(5, “world”);
		//bf. delete(2,3);
		System.out.println(bf.toString());//hello world
		System.out.println(bf.toString());//heo
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值