Java自学笔记④

字符串

String自带的concat()方法可以实现将指定字符串连接到此字符串结尾的功能。语法:
//a.concat(str)
//a:原字符串
//str:原字符串末尾拼接的字符串
   public class Test5 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String a="人世间";
		String b="耀如红日";
		String c=a.concat(b);
		System.out.println(c);//输出结果人世间耀如红日
	}

}
字符串在计算公式中的先后顺序会影响运算结果
String a="1"+2+3+4	->"1234"	//碰到字符串后,直接输出后面内容
String b=1+2+3+"4"	->"64"		//碰到字符串前,先做运算,后输出内容
String c="1"+(2+3+4) ->"19"		//碰到字符串后,先运算括号中的值,后输出内容
获取字符串长度
//str.length()
String num="01234 56789";
int size=num.length();//size的值为11
获取指定的字符
//str.charAt(index);
public class Test5 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String str="化身太阳照耀大地";
		char chr=str.charAt(5);//将字符串str中索引位置为5的字符赋值给chr
		System.out.println(chr);//输出结果为耀
	}

}
获取子字符串索引位置

indexOf()方法返回的是搜索的字符或字符串首次出现的位置。

lastIndexOf()方法返回的是搜索的字符或字符串最后一次出现的位置。

如果未检索到,返回值为-1.

//a.indexOf(substr);
String str="we are the champin";
int size=str.indexOf("e");//size的值为1
int size1=str.lastIndexOf("e");//size1的值为9
判断字符串首尾内容
//str.startsWith(prefix)
//str:任意字符串
//prefix:作为前缀的字符串
boolean bool=str.startWith("喵");
//str.endWith(suffix)
//str:任意字符串
//suffix:指定的后缀字符串
boolean bool=str.endWith("汪");
获取字符数组
//str.toCharArray();
public class Test8 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String str="这是一个字符串";
		char[] str1=str.toCharArray();
		for(char x:str1){
			System.out.println(x);
		}
	}

}
判断子字符串是否存在
//str.contains(string)
//str:任意字符串
//string:查询的子字符串
boolean request=str.contains("人");       
字符串替换
//str.replace(oldstr,newstr);返回一个新的字符串
public class Test9 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String str="明月几时有,一刀断水流";
		String restr=str.replace("月", "日");
		System.out.println(restr);//输出:明日几时有,一刀断水流                               
	}
}
//注意:replace方法会将所有的oldstr全部替换为newstr
replace()和replaceAll()方法的区别
public class Test10 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//"\\d"成为正则表达是的元字符之一,表示数字0-9中的任何一个
		String str ="0123456789abd\\d";
		String restr=str.replace("\\d", "?");
		String restrAll=str.replaceAll("\\d", "?");
		System.out.println("原字符串str"+str);
		System.out.println("用replace()替换原字符串str"+restr);
		System.out.println("用replaceAll()替换原字符串str"+restrAll);
        //结果为
        //原字符串str0123456789abd\d
		//用replace()替换原字符串str0123456789abd?
		//用replaceAll()替换原字符串str??????????abd\d
		//说明replace()方法不知道"\\d"的含义而relaceAll()方法知道。
	}
}

replaceFirst(String regex,String replacement)

该方法可以实现将第一个指定的字符串替换成新的字符串,支持正则表达式。返回一个新的字符串

//str.replaceFirst(regex,replacement);
//str:任意字符串
//regex:第一个被替换的字符串
//replacement:替换后的字符串

split(String regex,limit)

//str.split(regex,limit)
//limit为限定的分割次数
//实则为分为几个部分。如limit=2,则将字符串分为两个部分

public class Test11 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String str="hhtp\\:www.mingri.com:192.168.1.1:2025";
		String[]a2=str.split("\\.", 4);
        //若同时想用多个分隔符,用|隔开
        //String[]a3=str2.split("2| |:", 3);
		for(String x:a2){
			System.out.print(x+"  ");
            //输出结果:hhtp\:www  mingri  com:192  168.1.1:2025  
		}
	}
}
大小写转换

toLowerCase();toUpperCase()

//str.toLowerCase();
//str.toUpperCase();
//有变化返回新字符,无则返回原字符。
去除字符串中所有空白内容
//利用正则表达式"\\s"
public class Test13 {
	public static void main(String[] args){
		String str=" a   b   d    c   d ";
		String shortstr=str.replaceAll("\\s", "");
		System.out.println(shortstr);
	}
}
可变字符串StringBuffer
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值