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. 小结
换一种想法将验证去掉,提高多余判断,提升代码质量。代码越少越好,让电脑越懒越好。