String类的20种常见方法及作用

String类的20种常见方法及作用

String类的20种常见方法

和长度有关的方法
  返回类型 方法名 作用 int length() 得到一个字符串的字符个数(一个中文是一个字符,一个英文是一个字符,一个转义字符是一个字符)。

和数组有关的方法
  返回类型 方法名 作用 byte[] getBytes() 将一个字符串转换成字节数组 char[] toCharArray() 将一个字符串转换成字符数组 String[] split(String) 将一个字符串按照指定内容劈开。

和判断有关的方法
  返回类型 方法名 作用:
  boolean equals(String) 判断两个字符串的内容是否一模一样。
  boolean equalsIgnoreCase(String) 忽略大小写的比较两个字符串的内容是否一模一样。
  boolean contains(String) 判断一个字符串里面是否包含指定的内容。
  boolean startsWith(String) 判断一个字符串是否以指定的内容开头。
  boolean endsWith(String) 判断一个字符串是否以指定的内容结尾。

和改变内容有关的方法
  和改变内容有关的方法,都不会直接操作原本的字符串 而是将符合条件的字符串返回给我们,所以注意接收 返回类型 方法名及 作用:
  String toUpperCase() 将一个字符串全部转换成大写。
  String toLowerCase() 将一个字符串全部转换成小写。
  String replace(String,String) 将某个内容全部替换成指定内容。
  String replaceAll(String,String) 将某个内容全部替换成指定内容,支持正则。
  String repalceFirst(String,String) 将第一次出现的某个内容替换成指定的内容。
  String substring(int) 从指定下标开始一直截取到字符串的最后。
  String substring(int,int) 从下标x截取到下标y-1对应的元素。
  String trim() 去除一个字符串的前后空格。

和位置有关的方法
  返回类型 方法名 作用
  char charAt(int) 得到指定下标位置对应的字符。
  int indexOf(String) 得到指定内容第一次出现的下标。
  int lastIndexOf(String) 得到指定内容最后一次出现的下标。

例子:

```java
public class Test01{
    public static void main(String[] args) {
        String str = "吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮";
        //请用N种方法统计 葡萄 出现的次数
        //第一种
        String str1 = str.replace("葡萄"," ");
        char[] data = str1.toCharArray();
        int count = 0; for(char a : data){
            if(a == ' '){
                count++;
            } }
        System.out.println(count);
        // 第二种
        int count1 = 0;
        int x = 0;
        while(x != -1) {
            x = str.indexOf("葡萄");
            if(x != -1){
                count1++;
                str = str.replaceFirst("葡萄","");
            } }
        System.out.println(count1);
        // 第三种
        String strX = "吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮";
        for(int i = 0; i < str.length() ; i++){
            if(strX.contains("葡萄")) {
                strX = strX.replaceFirst("葡萄","");
            }
            else{
                System.out.println(i);
                break;
            } }
        //第四种
        String strY = "吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮";
        String[] datas = strY.split("葡萄");
        if(!strY.endsWith("葡萄")){
            //这里startsWith("葡萄")在split时,会在开头产生空串
            System.out.println(datas.length -1);
        }else{
            System.out.println(datas.length);
        }
        //第五种
        String strm = "吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮";
        int countSo = 0; int j = 0;
        while(j != -1) {
            j = strm.indexOf("葡萄");
            if(j != -1){
                if((j+2) < strm.length()) {
                    strm = strm.substring(j+2);
                }
                countSo++;
            } }
        System.out.println(countSo);
        // 第六种
        String strn = "吃葡萄不吐葡萄皮,不吃葡萄倒吐葡萄皮";
        String str2 = strn.replace("葡萄","");
        System.out.println((strn.length() - str2.length())/2);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值