JAVA中String类常用方法

JAVA中String类常用方法

1. 判断长度:

int length()

返回字符串长度

String s1 = "helloworld";
System.out.println(s1.length());//返回长度 10

2. 判断索引:

char charAt(int index):

返回某索引出的字符

String s1 = "helloworld";
System.out.println(s1.charAt(1));//返回某索引处的字符 e

3. 判断是否为空字符串:

boolean isEmpty()

String s1 = "helloworld";
System.out.println(s1.isEmpty());//判断是否是空字符串  结果为false

4. 转换为大写

String toUpperCase();

5. 转换为小写

String toLowerCase();

转换为小写

String s1 = "helloworld";
String s2 = s1.toUpperCase();//转大写HELLOWORLD
String s3 = s2.toLowerCase();//转小写helloworld
System.out.println(s1);//s1仍然为原来字符串
System.out.println(s2);
System.out.println(s3);

6. 删除首尾处的空格,字符中间的空格不受影响

String trim():

删除首尾处的空格,字符中间的空格不受影响

String s33 = "   he   llo   wo  rld   ";
String s4  = s33.trim();//删除首尾空格
System.out.println("------"+s33+"------");
//输出:------   he   llo   wo  rld   ------

System.out.println("------"+s4+"------");
//输出:------he   llo   wo  rld------

7. 比较字符串内容是否相同:

boolean equals(Object obj):

比较字符串内容是否相同

String s1 = "HELLOWORLD";
String s2 = "helloworld";

System.out.println(s1.equals(s2));//比较两个字符串是否相等 false

8.忽略大小写情况下字符串内容是否相同:

boolean equalsIgnoreCase(String anotherString):

忽略大小写情况下字符串内容是否相同

String s1 = "HELLOWORLD";
String s2 = "helloworld";

System.out.println(s1.equalsIgnoreCase(s2));//忽略大小写判断是否相等  true

9. 将制定字符串连接到此字符串的结尾

String concat(String str):

将制定字符串连接到此字符串的结尾,等价于用“+”

String s3 = "abc";
String s4 = s3.concat("def");//连接两个字符串
System.out.println(s4);//abcdef

10. 比较大小

int compareTo(String anotherString)

比较大小,返回值是两个字符串的ASCII码值相减的值

String s5 = "abc";
String s6 = "abe";
System.out.println(s6.compareTo(s5));//c:99 e:101  两个字符串的ASCII码值相减 2

11. 取其中一部分字符

String substring(int beginindex):

返回一个新的字符串,他是从beginindex开始取到字符串最后

String s7 = "北京市清华大学";
String s8 = s7.substring(3);//可以取一个子串,从num1,到最后
String s9 = s7.substring(3,5);//可以取一个子串,从[num1,num2)左闭右开
System.out.println(s7);//北京市清华大学清华大学
System.out.println(s8);//清华大学
System.out.println(s9);//清华

12、与判断相关的函数

@Test
public void test3(){
    String str1 = "helloworld";
    boolean b1 = str1.endsWith("ld");//判断是否已指定的字符串为结尾
    System.out.println(b1);//true
    boolean b2 = str1.startsWith("he");//判断是否已指定的字符串为开始
    System.out.println(b2);//true
    boolean b3 = str1.startsWith("wo",5);//判断是否已指定的字符串为指定的索引处开始的字符
    System.out.println(b3);//true

    String str2 = "wo";
    System.out.println(str1.contains(str2));//判断是否包含某一字符串  true

    System.out.println(str1.indexOf("lo")); 
    //判断某一字符串首次出现的位置 没有出现就返回-1 此处结果为3
    System.out.println(str1.indexOf("lo",5)); 
    //判断某一字符串在索引后出现的位置(从5找到最后) 没有出现就返回-1 此处结果为-1
    System.out.println(str1.indexOf("lo",2)); 
    //判断某一字符串在索引后出现的位置(从2找到最后)  没有出现就返回-1 此处结果为3

    String str3 = "hellorworld";
    System.out.println(str3.lastIndexOf("or"));//从右往左找 7
    System.out.println(str3.lastIndexOf("or",5));//从索引值开始,从右往左找(从5找到0) 4

    //什么情况下 indexOf(str) 和 lastIndexOf(str)返回值相同?
    //1:字符串中仅有一个str时 2:字符串中没有str时





}

13、与替换、匹配、切片(将字符串切成若干子字符串,返回字符数组)相关的函数

@Test
public void test4(){
    //替换
    String str1 = "市北京市清华大学";
    String str2 = str1.replace('市','省');//替换某一字符

    System.out.println(str1);//市北京市清华大学
    System.out.println(str2);//省北京省清华大学

    String str3 = str1.replace("北京市","中国");//替换某一字符串
    System.out.println(str3);//市中国清华大学

    //匹配
    //正则匹配
    String str4 = "12hello34world56java7891mysql1456";
    //把字符串中的数字替换成,如果开头结尾有,则去掉
    String string = str4.replaceAll("\\d+",",").replaceAll("^,|,$","");
    //  \\d+ 表示匹配多个数字  ^,表示开头的逗号, ,$  表示结尾有逗号
    System.out.println(string);

    str4 = "12345";
    boolean matches = str4.matches("\\d+");//判断是否都为数字
    System.out.println(matches);

    String tel = "0571-11223344";//判断是否是一个杭州的固定电话
    boolean result = tel.matches("0571-\\d{7,8}");
    System.out.println(matches);

    //切片
    String str = "hello|world|java";
    String[] strs = str.split("\\|");//以某一字符来判断分割某一字符串,返回一个字符数组
    for (int i = 0; i < strs.length; i++) {
        System.out.println(strs[i]);//输出 hello   world   java
    }
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值