zoukankan      html  css  js  c++  java
  • String类的常用方法

    1.String类的常用方法 

    @Test
        public void test01() {
            String a = "abcdefghijk";
            String b = "abcdefghijk";
            System.out.println("字符串的长度:" + a.length());
            System.out.println("比较两个字符串的内容是否相等:" + a.equals(b));
            System.out.println("比较两个字符串的内容是否相等(忽略大小):" + a.equalsIgnoreCase(b));
            System.out.println("把字符串的内容变成大写:" + a.toUpperCase());
            System.out.println("把字符串的内容变成小写:" + a.toLowerCase());
        }
    常用方法

    2.把字符串转换成字符数组输出

    @Test
        public void test02() {
            String a = "abcdefj";
            char[] b = a.toCharArray();
            for (int i = 0; i < b.length; i++) {
                System.out.println(b[i]);
            }
        }
    toCharArray

    3.根据指定的分隔符把字符串拆分成字符串数组

    @Test
        public void test03() {
            String a = "a+b+c+d";
            String[] b = a.split("\+");
            for (int i = 0; i < b.length; i++) {
                System.out.println(b[i]);
            }
        }
    split

    4.查询@在字符串中第一次出现的位置

    @Test
        public void test04() {
            String a = "abind@oandf.doain@aidjf";
            int index = a.indexOf("@");
            System.out.println(index);
        }
    indexOf

    5.查询@在字符串中最后一次出现的位置

    @Test
        public void test05() {
            String a = "abind@oandf.doain@aidjf";
            int index = a.lastIndexOf("@");
            System.out.println(index);
        }
    lastIndexOf

    6.查到@所在的下标后,并截取之后所有的字符串,包含@所在的下标

    @Test
        public void test06() {
            String a = "abind@oandf.doain@aidjf";
            int index = a.indexOf("@");
            String b = a.substring(index);
            System.out.println(b);
        }
    substring

    7.从@符号的下标包含所在的下标,到最后一个@符号(不包含最后一个@符号的下标)之间的所有字符串

    @Test
        public void test07() {
            String a = "abind@oandf.doain@aidjf";
            int index1 = a.indexOf("@");
            int index2 = a.lastIndexOf("@");
            String b = a.substring(index1, index2);
            System.out.println(b);
        }
    substring(int,int)

    8.去除字符串前后两边的空格

    @Test
        public void test08() {
            String a = " IndexOf lastIndexOf ";
            System.out.println("去除空格之前" + a);
            a = a.trim();
            System.out.println("去除空格之后" + a);
        }
    trim

    9.把字符i替换成I

    @Test
        public void test09(){
            String a = "indexOf";
            System.out.println("替换之前:"+a);
            a = a.replace("i", "I");
            System.out.println("替换之后:"+a);
        }
    replace

    10.查询字符串是否以i开始,是否以i结尾

    @Test
        public void test10() {
            String a = "indexOf";
            System.out.println("是否以i开始:" + a.startsWith("i"));
            System.out.println("是否以i结尾:" + a.endsWith("i"));
        }
    startsWith和endsWith

    11.根据下标截取对应的字符

    @Test
        public void test11() {
            String a = "indexOf";
            char b = a.charAt(3);
            System.out.println(b);
        }
    charAt

    12.将字符存储在字节数组中,最后再转换成字节输出

    @Test
        public void test12() {
            String a = "indexOf";
            byte[] bytes = a.getBytes();
            for (byte b : bytes) {
                System.out.println((char) b);
            }
        }
    getBytes

    13.将字符串a和字符串b连接起来

    @Test
        public void test14() {
            String a = "index";
            String b = "Of";
            System.out.println(a + b);
            System.out.println(a.concat(b));
        }
    concat

    14.concat和+的区别

      01.concat只能连接字符串

      02.+可以连接任何类型。+默认是Java的String类的一种重载,将+后面的对象转换成String类型,然后再将字符串拼接,最后产生一个新的对象

    15.查看字符串中是否包含i这个字符

    @Test
        public void test15() {
            String a = "indexOf";
            System.out.println("是否包含i这个字符:" + a.contains("i"));
        }
    contains

    16.String、StringBuffer和StriggBuilder三者的区别

      01.在线程安全方面

        001.String:数据量小的时候使用,线程是安全的

        002.StringBuffer:线程安全

        003.StringBuilder:多线程不安全,适合单线程

      02.是否可变

        001.String:是不可变的,每当我们操作字符串的时候,都会创建一个新的对象。

        002.StringBuilder、StringBuffer:当我们操作字符串的时候,实际上是在操作同一个对象

      03.在执行速度方面

        StringBuilder大于StringBuffer大于String

    17.String的执行速度

    @Test
        public void test16() {
            // 定义一个变量
            String a = "indexOf";
            // 定义操作字符串的次数
            int count = 3000;
            // 设置开始时间
            long beginTime = System.currentTimeMillis();
            for (int i = 0; i < count; i++) {
                a += "indexOf";
            }
            // 设置结束时间
            long endTime = System.currentTimeMillis();
            System.out.println("String的执行时间:" + (endTime - beginTime));
        }
    String

    18.StringBuffer的执行速度

    @Test
        public void test17() {
            // 定义一个变量
            String a = "indexOf";
            StringBuffer buffer = new StringBuffer(a);
            // 定义操作字符串的次数
            int count = 3000;
            // 设置开始时间
            long beginTime = System.currentTimeMillis();
            for (int i = 0; i < count; i++) {
                buffer = buffer.append("indexOf");
            }
            // 设置结束时间
            long endTime = System.currentTimeMillis();
            System.out.println("String的执行时间:" + (endTime - beginTime));
        }
    StringBuffer

    19.StringBuilder的执行速度

    @Test
        public void test17() {
            // 定义一个变量
            String a = "indexOf";
            StringBuilder builder = new StringBuilder(a);
            // 定义操作字符串的次数
            int count = 3000;
            // 设置开始时间
            long beginTime = System.currentTimeMillis();
            for (int i = 0; i < count; i++) {
                builder = builder.append("indexOf");
            }
            // 设置结束时间
            long endTime = System.currentTimeMillis();
            System.out.println("String的执行时间:" + (endTime - beginTime));
        }
    StringBuilder
  • 相关阅读:
    位置定位 api
    代理相关
    手机网页 右边的空白区
    sip介绍
    测试浏览器对html5支持
    sencha touch
    PC上的手机模拟器大全(安卓/苹果/黑莓/塞班/微软)
    测试视频
    android 环境配置 与 运行错误
    android 一年过期
  • 原文地址:https://www.cnblogs.com/milu0620/p/6986969.html
Copyright © 2011-2022 走看看