java实验五——字符数组、String、StringBuffer的相互转化,StringBuffer的一些方法

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(目标开始位)

 

posted on 2018-09-17 23:49  蔡军帅  阅读(134)  评论(0编辑  收藏  举报