String类

String类

  • String类代表字符串,提供了开发中常用的字符串处理的方法,如:求字符串的长度,截取字符串,替换字符串字符串是常量,它的值创建之后就不可以再修改了
  • String类常用构造方法:
    1.String()无参构造方法
    2.String(String str)有一个字符串参数的构造方法
    3.String(char[]ch)有一个char类型数组参数的构造方法
    4.String(byte[]b)有一个byte类型数组参数的构造方法

声明和创建字符串对象的方式:

		String s1="s1";//放置于常量池
//		System.out.println(s1);
		String s2=new String();
//		System.out.println(s2);
		String s3="";//常量池
//		System.out.println(s3);
		char[]ch=new char[] {'h','e','l','l','o'};
		String s4=new String(ch);
//		System.out.println(s4);
		byte[]b=new byte[] {99,100};
		String s5=new String(b);
//		System.out.println(s5);
		String s6="2";//常量池,已有相同的字符串,只返回地址
//		System.out.println("s6:hasCode"+s6.hashCode());
//		System.out.println(s2==s3);
//		System.out.println("s2==s6"+s2==s6);
//		System.out.println(s2.equals(s3));

String 常用方法:

public class Demo02Methods {
	public static void main(String[] args) {
//	String 常用方法:
//		1、int length()求字符串值的字符个数
		String s1="dfsas";
		System.out.println(s1.length());
//		2、boolean equals(Object o)比较两个字符串是否相同
		String s2="sajfio";
		System.out.println(s1.equals(s2));
//		3、String replace(char old,char new)字符串替换
		System.out.println(s1.replace('s', 'k'));
//		3.1、String replace(charSequence old,charSequence new)//重载
		System.out.println(s1.replace("df", "am"));
//		4、char charAt(int index)返回指定字符串指定位置的字符
		System.out.println(s1.charAt(3));//从0开始
//		5、int compareTo(String s)按字典顺序比较字符串大小
		System.out.println("hello9980".compareTo("hello9909"));//-1 头减尾 自左向右逐个比较

//		6、boolean endsWith(String s)比较字符串是否以指定的参数结尾
		System.out.println(s2.endsWith("io"));
//		7、boolean startWith(String s)比较字符串是否以指定的参数开头
		System.out.println(s2.startsWith("sajfio"));
//		8、static String valueOf(int i)将基本数据类型转换成字符串
		System.out.println(String.valueOf(10)+5);//105
//		9、boolean isEmpty()判别一个字符串值的长度是否为0
		System.out.println(s1.isEmpty());//false
		System.out.println("".isEmpty());//true
//		10、int indexOf(ch ch)返回指定字符序列在字符串中的索引位置
//		String s1="dfsas";
		System.out.println(s1.indexOf("f"));//返回指定字符的下标//取第一次出现的位置
	    System.out.println("这个"+s1.indexOf("kk"));//返回指定字符串第一个字符的下标
//	    11、int lastIndexOf()返回指定字符序列在字符串中最后出现的索引
	    System.out.println(s1.lastIndexOf("l"));
//	    12、subString(int begin)从指定索引位置截取字符串
	    System.out.println(s1.substring(3));//从下标开始到最后
	    System.out.println(s1.substring(2, 3));//有头没有尾
	}
}

compareTo方法介绍:

  • 返回值是整型,它是先比较对应字符的大小(ASCII码顺序),如果第一个字符和参数的第一个字符不等,
  • 结束比较,返回他们之间的差值,如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的
  • 第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方结束。
  • 如果参数字符串等于此字符串,则返回值 0;如果此字符串小于字符串参数,则返回一个小于 0 的值;
  • 如果此字符串大于字符串参数,则返回一个大于 0 的值。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值