StringBuilder===练习

public class StringDemo9{
    public static void main(String[]args){
        int [] arr={21,43,56,2567,43};
        /**将int数组变成字符串*/
        String s=method1(arr);
        String s1 = method2(arr);
        System.out.println(s);
        System.out.println(s1);
    }
    public static String method1(int[]arr){
        String str = "[";
        for(int x = 0;x<arr.length;x++){
            if(x!=arr.length-1){
                str=str+(arr[x]+",");
            }else{
                str=str+(arr[x]+"]");
            }
        }
        return str;
    }
    public static String method2(int[]arr){
        StringBuilder s = new StringBuilder();
        s.append("[");
        for(int x = 0;x<arr.length;x++){
            if(x!=arr.length-1){
            s.append(arr[x]+",");
            }else{
                s.append(arr[x]+"]");
                }

        }
        return s.toString();
    }
}
时间: 2024-08-09 17:13:23

StringBuilder===练习的相关文章

java stringBuilder的用法

String对象是不可改变的.每次使用 System.String类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间.在需要对字符串执行重复修改的情况下,与创建新的 String对象相关的系统开销可能会非常昂贵.如果要修改字符串而不创建新的对象,则可以使用System.Text.StringBuilder类.例如,当在一个循环中将许多字符串连接在一起时,使用 StringBuilder类可以提升性能. (一)设置容量和长度 虽然 StringBuilder对象是

6-探秘Java中的String、StringBuilder以及StringBuffer

相信String这个类是Java中使用得最频繁的类之一,并且又是各大公司面试喜欢问到的地方,今天就来和大家一起学习一下String.StringBuilder和StringBuffer这几个类,分析它们的异同点以及了解各个类适用的场景.下面是本文的目录大纲: 一.你了解String类吗? 二.深入理解String.StringBuffer.StringBuilder 三.不同场景下三个类的性能测试 四.常见的关于String.StringBuffer的面试题(辟谣网上流传的一些曲解String类

String stringbuffer StringBuilder

最近指导几位新人,学习了一下String,StringBuffer和StringBuilder类,从反馈的结果来看,总体感觉学习的深度不够,没有读出东西.其实,JDK的源码是越读越有味的.下面总结一下我读这些源码的收获吧.注意:虽然源码的版本是JDK6,但是个人觉得学习这个版本的源码对于理解数据结构非常有帮助,因为String就是一个数据结构,它是char []的封装,实现了很多对char []的操作 第一部分:String源码解析 (1)String实现了CharSequence接口,这个接口

StringBuilder、StringBuffer、String比较

1. String 类 String的值是不可变的,这就导致每次对String的操作都会生成新的String对象,不仅效率低下,而且大量浪费有限的内存空间. String a = "a"; //假设a指向地址0x0001 a = "b";//重新赋值后a指向地址0x0002,但0x0001地址中保存的"a"依旧存在,但已经不再是a所指向的,a 已经指向了其它地址. 因此String的操作都是改变赋值地址而不是改变值操作. 2. StringBuf

java字符串拼接技巧(StringBuilder使用技巧)

在平时的开发中,我们可能会遇到需要拼接如下格式的字符串(至少我是遇到了很多次): 1,2,3,4,5,6,7,8,9,10,11,12,12,12,12,34,234,2134,1234,1324,1234,123 这个字符串的特点:多个数据之间通过某一个特殊符号分割. 以前我都是这样想的,我相信很多的people也是这样想的: public class StringTest { public static void main(String[] args) { StringBuilder sb

从为什么String=String谈到StringBuilder和StringBuffer

前言 有这么一段代码 1 public class TestMain 2 { 3 public static void main(String[] args) 4 { 5 String str0 = "123"; 6 String str1 = "123"; 7 System.out.println(str0 == str1); 8 } 9 } 运行结果是什么?答案当然是true.对,答案的确是true,但是这是为什么呢?很多人第一反应肯定是两个“123”的Stri

Java字符串的String、StringBuilder、StringBuffer三者特性详解

一.不可变String类型 字符串是计算机程序设计中的,最常见行为,Java的字符串操作最主要的类是String,并且String对象是不可变的(Immutable),即对象一旦创建在内存中,那么它的内容就不再改变.虽然String类中提供很多方法看起来像是可以修改String对象,比如trim().subString()等等,但是实际上它们并没有改变原来的字符串对象,这些方法传递的只是引用的一个拷贝,所以重新创建了一个String类型的对象,并且有了新的引用. 例如下面一段代码可以说明Stri

C#String &amp; StringBuilder

在看J2SE的时候,再次看到了String这个字眼,其实在C#系统实践的过程中就多次使用了: 对于String和StringBuilder最大的区别就是可变不可变的问题,其实这个在数据类型中是存在多对对比并行存在的,就比如Char和Varchar的完美对比. String: 在机房收费系统又或者学生信息管理系统中,由于整个系统相对来说就是小型化的,所以我们最多就是使用了String类型,来完成我们对于字符串的定义.其实String就是一个字符串常量,是不可改变的,就Java内存分析角度来说,就是

从String类型字符串的比较到StringBuffer和StringBuilder

1. String类型 String类源码 为了从本质上理解String类型的特性所在,我们从String类型的源码看起,在源码中String类的注释中存在以下: /**Strings are constant; their values cannot be changed after they * are created. String buffers support mutable strings. * Because String objects are immutable they ca

String类和StringBuilder

1,首先,明确一点,String对象是不可变的,这个不可变的意思是说:任何看起来修改String值的方法,实际上都是创建了一个新的String对象. 2,String对+号操作符进行了重载,而这个重载在本质上是使用了StringBuilder,证据如下: 源程序 public class TestJava { public static void main(String[] args) { String mongo = "mongo"; mongo = mongo+"test