首页 > 其他 > 详细

String StringBuffer StringBuild的特点及用法

时间:2021-06-02 22:49:30      阅读:29      评论:0      收藏:0      [点我收藏+]

String及其用法

java中对字符串的操作真的太多了,用法及其重要

String的用法

String data = "";
            String data2 = null;
            String data3 = "nihk";
            //新建的字符串为空,与data相同
            String data4 = new String();
            //bytes里面的数字会被转化为相应的码表字符-abc
            byte[] bytes = new byte[]{97,98,99};
            String data5 = new String(bytes);

            //常用的方法
            //字符串拼接,和+的用法一样,必须重新赋值或者写在一起
            String test = "abcde".concat("你好");
            test = test.concat("ef|abcde");

            //判断字符串末尾字符
            Boolean boo = test.endsWith("f");
            Boolean boo1 = test.startsWith("a");

            //不为 null,并且是表示与此对象相同的字符序列的 String 对象时,结果才为 true
            Boolean boo2 = test.equals("abcde你好ef|");

            //吧字符串放到一个byte数组中
            byte[] bytes1 = test.getBytes();

            //返回字符串第一次出现位置的索引,没有则返回-1
            int index = test.indexOf("你好");
            //从指定索引位置开始搜索,结果也是在整个字符串中第一次出现位置的索引
            int  index2 = test.indexOf("你好",3);
            //返回最后一次出现位置的索引
            int index3 = test.lastIndexOf("a");

            //字符串的长度
            int length = test.length();

            // 通知此字符串是否匹配给定的正则表达式。
            String regex = "YY^[n]12";
            boolean boo3 = test.matches( regex);
            //返回一个新的字符串,test2代替test
            String test2 ="新的字符串";
            test = test.replace(test,test2);

            //从哪里开始截取
            test = test.substring(3);
            //从哪里截取到哪里[),从1,开始截取2-1的长度。
            test2 = test2.substring(1,2);

            //大小写转换,字符串中的字母全部转
           /* String test3 = "ABCDabcd";
            test3 = test3.toLowerCase();
            System.out.println(test3);
            test3 = test3.toUpperCase();
            System.out.println(test3);*/

            //除去空格字符串前面和末尾的空格
            String test4 =""+"aa aa aa "+"";
            System.out.println(test4);
            test4 = test4.trim();
            System.out.println(test4);

            //返回参数的字符串的表现形式--把不同类型数据转为字符串
            //"true" "a" "abc" "88"
            String a = String.valueOf(true);
            String b = String.valueOf(‘a‘);
            String c = String.valueOf(new char[]{‘a‘,‘b‘,‘c‘});
            String d = String.valueOf(88);

StringBuffer

线程安全的可变字符序列。一个类似于 String 的字符串缓冲区

 /**
     * 缓冲字符串
     * @param args
     */
    public static void main(String args[]){
            //线程安全,初始容量为16
            StringBuffer buffer = new StringBuffer();
            StringBuffer buffer1 = new StringBuffer("abcd");

            //拼接,不需要 像str = str +"aaa""重新赋值。
            buffer.append("aaa");//buffer="aaa"

            //得到当前容量 16,20
            int length = buffer.capacity();
            int length1 = buffer1.capacity();

            //移除子字符串
            buffer.delete(0,buffer.length());

            //字符串第一次出现的位置
            int firstIndex =  buffer.indexOf("a");
            int lastIndex =  buffer.lastIndexOf("a");


        }

StringBuilder

一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候(这种情况很普遍)。如果可能,建议优先采用该类,因为在大多数实现中,它比 StringBuffer 要快。

用法基本上和StringBuffer相同,但是更快。推荐使用

String StringBuffer StringBuild的特点及用法

原文:https://www.cnblogs.com/xshu/p/14839312.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!