package hello;

import java.util.Scanner;

public class 实验五 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        char cc[]={\'a\',\'b\',\'c\',\'d\',\'e\',\'f\'};
        
        //将字符串数组转成string
        String s1 =String.copyValueOf(cc);
        System.out.println(s1); 
        //将string转成StringBuffer
        StringBuffer s2 = new StringBuffer(s1);
        
        //在1这个位置插入z
        s2.insert(1, \'z\');
        System.out.println(s2);
        
        //把第0个位置换成x
        s2.replace(0, 1, "x");
        System.out.println(s2);
        
        //将StringBuffer转成String
        String s3 = s2.toString();
        System.out.println(s3.toUpperCase());
    }

}

1. String和StringBuffer的相互转化:

        String s1 ="cjs_hhh";
        System.out.println("String  "+s1); 
        //将string转成StringBuffer
        StringBuffer s2 = new StringBuffer(s1);
        
        System.out.println("StringBuffer  "+s1); 
        //将StringBuffer转成String
        String s3 = s2.toString();
        System.out.println("String  "+s3);

 

2. 字符数组和String的相互转化:

 

        char cc[]={\'a\',\'b\',\'c\',\'d\',\'e\',\'f\'};    
        //将字符串数组转成string
        String s1 =String.copyValueOf(cc);
        System.out.println("String  "+s1);
        
        //将string转成字符串数组
        char c[]=s1.toCharArray();
        for(int i=0;i<c.length;i++)
        {
            System.out.print(c[i]);
        }

 

3. 字符数组和StringBuffer的相互转化:

1、将StringBuffer转换成字符数组
 
在Java中不支持直接从StringBuffer转换成字符数组。而是先将StringBuffer转换成String,
然后由String调用toCharArray函数转换成字符数组。
StringBuffer stringBuffer = new StringBuffer(“Hello World.”);
String str = stringBuffer.toString();// 先将StringBuffer对象转换成String对象
char[] ch = str.toCharArray();// 再调用String对象的toCharArray函数转换成字符数组
 
2、将字符数组转换成StringBuffer
 
与将StringBuffer转换成字符数组类似,需要先将字符数组转换成String,然后再由String转换成StringBuffer。
char[] data = {\'H\', \'e\', \'l\',\'l\', \'o\', \'d\'};
String str = new String();//或者直接调用构造方法:String str = new String(data);
str = String.valueOf(data);//调用String类的valueOf函数将字符数组转换成String
StringBuffer buffer = new StringBuffer();
buffer = buffer.append(str);//调用append函数将String转换成Stringbuffer

4.StringBuffer的一些方法

 

StringBuffer是字符串缓冲区,是一个容器。 
1、长度是可变化的;(数组长度不变) 
2、可以操作多个数据类型; 
3、最终会通过toString方法变成字符串。

 

1、添加。 
StringBuffer append(); //将指定数据作为参数添加到已有数据结尾处 
StringBuffer insert(index,数据); //可以将数据插入到指定index位置 
2、删除。 
StringBuffer delete(start,end); //删除缓冲区中的数据,包含start,不包含end 
StringBuffer deleteCharAt(index); //删除指定位置的字符 
3、修改。 
StringBuffer replace(start,end,string); //用string字符串替换原有字符串中的数据,包含start,不包含end 
void setCharAt(int index,char ch); //用ch字符替换指定位置的字符(注意:void没有返回值) 
4、获取。 
char charAt(int index); //根据角标获取 
int indexOf(String str); //根据字符串获取位置 
int lastIndexOf(String str); //如果出现字符串参数一次或多次,则返回最后一个这样的字符串的第一个字符的索引返回 
int length(); //获取长度 
String substring(int start,int end); //获取子字符串,包含start,不包含end(注意:访问的是String,不是StringBuffer) 
5、反转。 
StringBuffer reverse(); //返回StringBuffer对象的颠倒顺序 
6、将缓冲区中指定数据存储到指定数组中。 
void getChars(int scrBegin,int scrEnd,char[] dst,int dstBegin); //scrBegin(源开始位),dstBegin(目标开始位)

 

版权声明:本文为caiyishuai原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/caiyishuai/p/9665732.html