stringBuffer拼接有规律字符串

1. 拼接结果如下的字符串

  1,2,3,4,5,6,7,8,9,10,11,12,12,12,12,34,234,2134,1234,1324,1234,123

2. 以前是这样想的,但是从效率,速度的方面来说这样做是低效率的

public class StringTest
{
    public static void main(String[] args)
    {
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i <= 10; i++)
        {  
    //以下这个判断对于有强迫症的人来说确实有点不爽,每次循环进来都要进行判断以下,如果循环的次数很多呢,我们都会想到会不会对性能有影响呢?
            if (i != 0)
            {
                sb.append(",");
            }
            sb.append(i);
        }
        System.out.println(sb.toString());
    }
}
3. 首先取出集合的第一个元素,通过构造方法传入第一个元素,这样后面的每一次循环就不需要做判断了。
public class StringTest
{
    public static void main(String[] args)
    {
        StringBuilder sb = new StringBuilder("0");
        for (int i = 1; i <= 10; i++)
        {
            sb.append(",");
            sb.append(i);
        }
        System.out.println(sb.toString());
    }
}
4. stringBuffer中的delete(startIndex,endIndex)方法
public class StringTest
{
    public static void main(String[] args)
    {
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i <= 10; i++)
        {
            sb.append(i);
            sb.append(",");
        }
        sb.delete(sb.length() - 1, sb.length());//这里就看你知不知道这个api接口了
        System.out.println(sb.toString());
    }
}
5. 小结
换一种想法将验证去掉,提高多余判断,提升代码质量。代码越少越好,让电脑越懒越好。
上一篇:salesforce 零基础学习(五十一)使用 Salesforce.com SOAP API 实现用户登录以及简单的增删改查(JAVA访问salesforce)


下一篇:1334: [Baltic2008]Elect