[笔记]关于string的操作

String与char转换

1. String s = String.valueOf('c'); //效率最高的方法

2. String s = String.valueOf(new char[]{'c'}); //将一个char数组转换成String

3. String s = Character.toString('c');
// Character.toString(char)方法实际上直接返回String.valueOf(char)

4. String s = new Character('c').toString();

5. String s = "" + 'c';
// 虽然这个方法很简单,但这是效率最低的方法
// Java中的String Object的值实际上是不可变的,是一个final的变量。
// 所以我们每次对String做出任何改变,都是初始化了一个全新的String Object并将原来的变量指向了这个新String。
// 而Java对使用+运算符处理String相加进行了方法重载。
// 字符串直接相加连接实际上调用了如下方法:
// new StringBuilder().append("").append('c').toString();


6. String s = new String(new char[]{'c'});

replace和replaceAll替换字符

public class ReplaceChar {
    public static void main(String[] args) {
        String strTmp = new String("BBBBBBBYYYYYYY");
        strTmp = strTmp.replaceAll ("\\D", "Y"); 
        System.out.println(strTmp);
        strTmp = strTmp.replaceAll ("Y", "N"); 
        System.out.println(strTmp);
        strTmp = strTmp.replace("N", "C");
        System.out.println(strTmp);
        strTmp = strTmp.replaceFirst("\\D", "q");
        System.out.println(strTmp);
    }
}

String与StringBuffer之间的转换

package demo;
/* 
 * String -> StringBuffer
 * 方式一:构造方法
 * 方式二:通过append方法
 * StringBuffer -> String
 * 方式一:通过构造方法
 * 方式二:通过toString方法
 * */
public class StringAndStringBufferSwitch {
    public static void main(String[] args) {
        //String -> StringBuffer
        //创建一个String对象
        String str = "Hi Java!";
        System.out.println(str);
 
        //方式一:构造方法
        StringBuffer buffer = new StringBuffer(str);
        System.out.println(buffer);
 
        //方式二:通过append方法
        StringBuffer buffer2 = new StringBuffer();
        buffer2.append(str);
        System.out.println(buffer2);
 
        //StringBuffer -> String
        //创建一个StringBuffer对象
        StringBuffer buffer3 = new StringBuffer();
        buffer3.append("Happy birthday Java!");
        System.out.println(buffer3);
 
        //方式一:通过构造方法
        String str2 = new String(buffer3); 
        System.out.println(str2);
         
        //方式二:通过toString方法
        String str3 = buffer3.toString();
        System.out.println(str3);
    }
}

Arraylist转string

List<String> get = new ArrayList<String>();
String str = String.join("\n",get);  //以“\n”分隔

String转Arraylist

String str="aaa , bbb , ccc , ddd";

ArrayList list=new ArrayList(Arrays.asList(str.split(",")));

String添加内容1 直接添加

String string = "hello";
string +="world";
System.out.println(string);  //输出helloword

String添加内容2 转为stringbuilder添加
insert(int i,String str)在i前面添加str

StringBuilder stringBuilder = new StringBuilder(content);
stringBuilder.insert(1,"perfect");
System.out.println(stringBuilder);
stringBuilder.insert(stringBuilder.indexOf("Good"),"perfect");
System.out.println(stringBuilder);

原始:“mention”: “Hello"Hi"Nice"mention”: "Good"perfect
第一次输出:“perfectmention”: “Hello"Hi"Nice"mention”: "Good"perfect
第二次输出:“perfectmention”: “Hello"Hi"Nice"mention”: "perfectGood"perfect

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值