String StringBuffer Arrays 字符串修改 拼接

package Baozhuang;

import java.util.Arrays;
import java.util.Scanner;

public class exe {
    public static void main(String[] args) {
        String s = "27O51I51022I8";
        s = s.replace(‘O‘, ‘0‘);
        s = s.replace(‘I‘, ‘1‘);
        System.out.println(s);

        String s0 = "MY_English_NaMe";
        String[] s1 = s0.split("_");
        s1[0] = s1[0].toLowerCase();
        s1[1] = s1[1].toUpperCase();
        s1[2] = s1[2].toUpperCase();
        //String 拼接
        String s2 =s1[0]+ s1[1]+s1[2];
        String s3 = s1[0].concat(s1[1]).concat(s1[2]);
        System.out.println(s3);
        System.out.println(s2);
        System.out.println(Arrays.toString(s1));
        //StringBuffer拼接
        StringBuffer s4 = new StringBuffer(s1[0]);
        s4 =  s4.append(s1[1]).append(s1[2]);
        System.out.println(s4);

        Scanner input = new Scanner(System.in);
        String word;
        StringBuffer s5 = new StringBuffer();
        do{
            System.out.println("请输入英文单词:");
            word = input.nextLine();
            if (word.equals("end")){
                break;
            }
            s5 = s5.append(word+",");
        }while(true);
        System.out.println(s5);
        String s6 = s5.toString();
        String [] s7 = s6.split(",");
        /*for(int i = 0; i < s7.length ; i++){
            System.out.println(s7[i]);
        }*/
        //for each循环
        for (String s8:s7){
            System.out.println(s8);
        }
        input.close();
    }
}
时间: 2024-11-10 00:08:56

String StringBuffer Arrays 字符串修改 拼接的相关文章

实例的对比String、StringBuilder字符串的连接效率及StringBuilder和StringBuffer线程安全的比较

一.字符串连接的效率问题 使用String连接字符串时为什么慢? 小知识点 java中对数组进行初始化后,该数组所占的内存空间.数组长度都是不可变的. 创建一个字符串,为字符串对象分配内存空间,会耗费掉一定的时间(CPU)与空间(内存)代价,作为最基础的数据类型,大量频繁的创建字符串,极大程度地影响程序的性能. 过多无用的中间对象 每次连接字符串时都会创建一个新的String对象,随着拼接次数的增多,这个对象会越来越大. 如,进行100次拼接需要创建100个String对象才能够达到目的. St

字符串的使用(string,StringBuffer,StringBuilder)

String中==与equals的区别:==比较字符串中的引用相等equals比较字符串中的内容相等(因为字符串有重写equals方法) 例子: /************ String中的equals与== *****************/ /*  * ==比较字符串中的引用相等  * equals比较字符串中的内容相等(因为字符串有重写equals方法)  */// public static void main(String[] args) {//  String s1 = new S

java 创建string对象机制 字符串缓冲池 字符串拼接机制 字符串中intern()方法

字符串常量池:字符串常量池在方法区中 为了优化空间,为了减少在JVM中创建的字符串的数量,字符串类维护了一个字符串池,每当代码创建字符串常量时,JVM会首先检查字符串常量池.如果字符串已经存在池中,就返回池中的实例引用.如果字符串不在池中,就会实例化一个字符串并放到池中.Java能够进行这样的优化是因为字符串是不可变的,可以不用担心数据冲突进行共享.所以,在常量池中的这些字符串不会被垃圾收集器回收 1.String str = new String("hello");此时创建的2个对象

java 创建string对象机制 字符串缓冲池 字符串拼接机制

1.String str = new String("hello"); 创建了2个对象,1.检查常量池中有没有hello,没有的话,创建对象放到常量池中,再创建对象放到堆中.如果常量池有hello对象,则只创建一个对象并放到堆中. 2.字符串常量池在方法区 3.String str = "hello";检查常量池有无hello,如果有,则把指向该对象,如果没有,创建对象放在常量池里. 4.intern()方法.把字符串变成常量池里的字符串:如果常量池中已经包含了等于

String,StringBuffer与StringBuilder的区别??

String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简 要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了

【Java】String,StringBuffer与StringBuilder的区别??

String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以

java String,StringBuffer,StringBuilder的区别

StringBuilder.StringBuffer的方法都会调用AbstractStringBuilder中的公共方法,如super.append(...).只是StringBuffer会在方法上加synchronized关键字,进行同步. 最后,如果程序不是多线程的,那么使用StringBuilder效率高于StringBuffer ? 这句话并不理解. 1 String String:字符串常量,字符串长度不可变.Java中String是immutable(不可变)的. String类的包

String StringBuffer StringBuider

String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以

String,StringBuffer,StringBuilder区别

String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以