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

     
  • 相关阅读:
    笔记:一篇关于容器和虚拟机的对比
    语义化版本说明脑图
    KiCad EDA 5.1.4 发布了
    KiCad 5.1.4 无法覆铜?
    mac 常用的终端命令
    PC 商城扫描二维码登录
    Git的撤销与回滚
    springboot 集成elasticsearch5.4.3
    redis 缓存类型为map
    基于Elasticsearch 5.4.3的商品搜索系统
  • 原文地址:https://www.cnblogs.com/caiyishuai/p/9665732.html
Copyright © 2020-2023  润新知