原创

Java复习之-String类常用方法

1.public int length(); 获取一个String对象的字符序列长度

public class TestMain {
    public static void main(String[] args) {
        String china = "我是Java学习爱好者";
        System.out.println(china.length());
    }
}

2.public boolean equals(String str) 比较String对象的字符序列是否相同

public class TestMain {
    public static void main(String[] args) {
        String str1 = "我是Java学习爱好者";
        String str2 = "我是Java学习爱好者";
        System.out.println(str1.equals(str2));
    }
}

3.public boolean startsWith(String str) 判断当前String对象的字符序列前缀是否和指定的String对象相同

public class TestMain {
    public static void main(String[] args) {
        String str1 = "我是Java学习爱好者";
        String str2 = "我是Java";
        System.out.println(str1.startsWith(str2));
    }
}

4.public boolean endsWith(String str) 判断当前String对象的字符序列后缀是否和指定的String对象相同

public class TestMain {
    public static void main(String[] args) {
        String str1 = "我是Java学习爱好者";
        String str2 = "爱好者";
        System.out.println(str1.endsWith(str2));
    }
}

5.public int compareTo(String str) 按字典顺序比较大小,如果相同返回值为0,大于返回正值,小于 返回负值

public class TestMain {
    public static void main(String[] args) {
        String str1 = "abcde";//字符a在Unicode表中排序位置是97,字符b是98
//        String str2 = "爱好者";
        System.out.println(str1.compareTo("abcde"));//结果为0
    }
}
public class TestMain {
    public static void main(String[] args) {
        String str1 = "abcde";//字符a在Unicode表中排序位置是97,字符b是98
//        String str2 = "爱好者";
        System.out.println(str1.compareTo("aba"));//结果为2
    }
}
public class TestMain {
    public static void main(String[] args) {
        String str1 = "abcde";//字符a在Unicode表中排序位置是97,字符b是98
//        String str2 = "爱好者";
        System.out.println(str1.compareTo("b"));//结果为-1
    }
}

6.public int compareToIgnoreCase(String str) 功能同上,忽略大小写

7.public boolean contains(String str) 判断当前String对象是否包含参数str的字符序列

public class TestMain {
    public static void main(String[] args) {
        String str1 = "我是Java学习爱好者";
        String str2 = "爱好";
        System.out.println(str1.contains(str2));
    }
}

8.public int indexOf(String str) String对象的字符序列索引从0开始 从String对象的0索引处开始检索首次出现str的位置,并返回,如 果没有检索到则返回-1

public class TestMain {
    public static void main(String[] args) {
        String str1 = "我是Java学习爱好者";
        String str2 = "爱好";
        System.out.println(str1.indexOf(str2));//结果为8
    }
}

8.1.public int indexOf(String str,int startpoint); startpoint是指开始索引的位置

9.public int lastIndex(String str) 同indexOf(String str)从0开始检索,最后一次出现str的位置 并返回,如果没有检索到则返回-1

public class TestMain {
    public static void main(String[] args) {
        String str1 = "我是Java学习爱好者我是Java学习爱好者";
        String str2 = "爱好";
        System.out.println(str1.lastIndexOf(str2));//结果为19
    }
}

10.public String substring(int startpoint) 获取一个新String对象,从startpoint位置到最后位置上所得的字符序列

public class TestMain {
    public static void main(String[] args) {
        String str1 = "我是Java学习爱好者";
//        String str2 = "爱好";
        System.out.println(str1.substring(1));//结果为:是Java学习爱好者
    }
}

11.public String substring(int start,int end) 同上,从start出,到end-1的位置

public class TestMain {
    public static void main(String[] args) {
        String str1 = "我是Java学习爱好者";
//        String str2 = "爱好";
        System.out.println(str1.substring(1,3));//结果为:是J
    }
}

12.public String trim() 获取一个新String对象,结果为当前String对象去掉前后空格

13.字符串转数值

Integer.parseInt("str");
Long.parseLong("str");
Double.parseDouble("str");
...

14.数组转字符串

"str".valueOf(int i);
"str".valueOf(double i);
...

15.public boolean matches(String regex) 根据正则表达式判断字符串匹配正则表达式

public class TestMain {
    public static void main(String[] args) {
        String regex = "[a-zA-Z|0-9|_]+";
        String str = "0_aA9";
        if(str.matches(regex)){
            System.out.println("true");
        }else {
            System.out.println("false");
        }
    }
}

16.public String replaceAll(String regex,String str) 返回一个新String对象,根据regex正则匹配的字符串替换为str,再 输出结果

public class TestMain {
    public static void main(String[] args) {
        String regex = "[a-zA-Z|0-9|_]+";
        String str = "++++abc+++++";
        System.out.println(str.replaceAll(regex,"你好"));
        //结果为:++++你好+++++
    }
}

17.public String[] split(String regex) 根据正则表达式分割字符串存放到数组中

public class TestMain {
    public static void main(String[] args) {
        String regex = ",";
        String str = "我,今天,去,上学,了";
        String[] strs = str.split(regex);
        System.out.println(strs.length);//结果为:5
        for (String s:strs){
            System.out.println(s);
        }
    }
}
java
  • 作者:兰总(联系作者)
  • 发表时间:2019-08-18 12:00
  • 版权声明:自由转载-非商用-保持署名
  • 公众号转载:请在文末添加作者公众号二维码
  • 评论