String类

作者: Czw_hacker | 来源:发表于2016-10-10 20:13 被阅读20次

String

正则表达式

  • string类型在字符串改变、和字符串连加时性能差
  • Stringbuffer 和StringBuilder连加性能极高
  • Stringbuffer为线程安全的类 StringBuilder为非线程安全的类

Stringbuffer 的用法

    public static void main(String[] args) {

        // StringBuilder用法 比Stringbuffer 更变态

        String str = "abc";
        long startTime = System.currentTimeMillis();
        for (int i = 0; i < 30000; i++) {
            str += "abc";
        }
        long endTime = System.currentTimeMillis();
        System.out.println("the end, time:" + (endTime - startTime));
    }

StringBuilder用法 比Stringbuffer 更快

    public static void main(String[] args) {

        // StringBuilder用法 比Stringbuffer 更变态
        
        StringBuilder str = new StringBuilder("abc");
        long startTime = System.currentTimeMillis();
        for (int i = 0; i < 110000000; i++) {
            str.append("acv");
        }
        long endTime = System.currentTimeMillis();
        System.out.println("the end, time:" + (endTime - startTime));

    }

charAt 用法(返回指定索引处的 char 值) 输出为:c

    public static void main(String[] args) {
        
            String str = "abc"; 
            System.out.println(str.charAt(2));
    }

codepointAt 用法(返回指定索引处的字符(Unicode 代码点))输出为 97

public static void main(String[] args) {

        String str = "abc";
        System.out.println(str.codePointAt(0));
    }

compareTo 用法(按字典顺序比较两个字符串。返回的是 正整数或负整数)
compareToIgnoreCase不区分大小写比较和compareTo相同
==IgnoreCase是指不区分大小写 在很多地方都有用==

    public static void main(String[] args) {
        String Str = "abc";
        String str = "bcd";
        System.out.println(str.compareTo(Str));
    }

concat用法将指定字符串连接到此字符串的结尾。

public static void main(String[] args) {
        String str = "abc";
        String str1 = str.concat("xyz");
        System.out.println(str1);
    }

contains用法(当且仅当此字符串包含指定的 char 值序列时,返回 true。)

public static void main(String[] args) {
        String str = "我贩卖枪支弹药";
        System.out.println(str.contains("枪支"));
    }

endsWith 测试此字符串是否以指定的后缀结束

    public static void main(String[] args) {
        String str = "www.google.com";
        System.out.println(str.endsWith("com"));
    }

startsWith测试此字符串是否以指定的前缀开始

    public static void main(String[] args) {
        String str = "www.google.com";
        System.out.println(str.startsWith("www"));
    }

equals将此字符串与指定的对象比较。
equalsIgnoreCase将此 String 与另一个 String 比较,不考虑大小写(==IgnoreCase再次出现==)

public static void main(String[] args) {
        String str = "abc";
        String str1 = "Abc";
        System.out.println(str.equals(str1));
        System.out.println(str.equalsIgnoreCase(str1));
    }

indexOf返回指定字符在此字符串中首次出现处的索引。lastIndexOf返回指定字符在此字符串中最后出现处的索引

    public static void main(String[] args) {
        String str = "abcba";
        System.out.println(str.indexOf("a"));
        System.out.println(str.lastIndexOf("a"));
    }

length()返回字符串的长度,

isEmpty 当且仅当 length() 为 0 时返回 true,结果为 5 和 true

    public static void main(String[] args) {
        String str = "abcba";
        System.out.println(str.length());//str长度为5
        System.out.println("".isEmpty());//""空字符串调用isEmpty返回为true
    }

replaace使用指定的字面值替换序列替换此字符串所有匹配字面值目标序列的子字符串。

    public static void main(String[] args) {
        String str = "fuck you";
        System.out.println(str.replace("fuck", "f***"));
    }

split 根据字符来分割字符串,结果为数组

    public static void main(String[] args) {
        String name = "tom,jock,rose,lili";
        String[] names = name.split(",");
        for (String na : names) {
            System.out.print(na+"\t");
        }
    }
    运行结果为:tom   jock    rose    lili    

subString 截取字符串

public static void main(String[] args) {
        String email = "lilei@kaishengit.com";
        String name= email.substring(0, email.indexOf("@"));
        System.out.println(name);
    }
    运行结果为 lilei

toLowerCase将此 String 中的所有字符都转换为小写。

toUpperCase将此 String 中的所有字符都转换为大写

    public static void main(String[] args) {
        String str = "Abc";
        System.out.println(str.toLowerCase());
        System.out.println(str.toLowerCase());
    }
    运行结果为  abc
    运行结果为  ABC

trim 返回字符串的副本,忽略前导空白和尾部空白。

    public static void main(String[] args) {
        String name = "     jock   ";
        System.out.println(name.trim());
    }
    运行结果为  jock

相关文章

  • String

    1.String类2.String类和常量池3.String类常用的方法 1.String类 1.String类又...

  • String

    String UML类图 String 被 final 修饰,String 类不可被继承,不可变类。 String...

  • Java之String类

    String 1. String类基本特性 String类再Java类中也是一个很重要的类,String类的对象是...

  • string类

    string类 1. string类常用方法 2. string类常用方法2 3. string类的查找 判断字符...

  • 二十五、String与StringBuffer/StringBu

    一、 String类 1. String类概述 查阅API中的String类的描述,发现String 类代表字符串...

  • String类概述及其构造方法

    构造方法 String类的判断功能 String类的获取功能 String的转换功能 String类的其他功能

  • Java String总结

    Java String总结 String 类 String类定代码如下: 从代码看有两点需要注意: String类...

  • 8.2-全栈Java笔记:字符串相关类(String/Strin

    字符串相关类(String/StringBuilder /StringBuffer) String类 String...

  • 10.常用API—String

    常用API(String,ArrayList) String String类概述 String类定义的变量可以用于...

  • 第四章 复合类型(3)string类简介

    (三)string类简介 1.string类的优势: 使用string类的时候,必须在头文件中包含string,...

网友评论

      本文标题:String类

      本文链接:https://www.haomeiwen.com/subject/zhsvyttx.html