① java连接N个相同字符串的函数
java字符串连接一般有三种方式:
直接用+号连接。
用StringBuilder类。
用StringBuffer类。
三种字符串连接的比较:
StringBuffer是线程安全的; StringBuilder不是线程安全的,但性能稍好一些,在不需要线程安全的字符串连接,尽量使用StringBuilder。(大部分情况下都不需要线程安全)jdk1.5的编译器也是把+号编译成StringBuilder来连接字符串的。 +号比想象中的智能,通过反编译发现,在某些情况下可以放心的使用+号连接字符串。
1、对于很长的字符串可以分开用+号连接,不会影响性能。
如: Strings="aa"+"bb";
编译器会自动处理成: Strings="aabb";
2、一条语句中,可以放心使用+号连接,不会影响性能。
如: Stringa="a"+"a"; Strings="a"+"b"+a+"c"+5+"d";
编译器自动处理成:
Stringa="aa";
Strings=newStringBuilder("ab").append(a).append("c").append(5).append("d").toString();
② 请问一下java 中的String 拼接字符串,除了用+还可以用什么方式
String 有一个 concat()方法是连接两个字符串的,专例如:
String s1="aa";
属String s2="bb";
String s3=s1.concat(s2);
System.out.println(s3);
③ java中 string拼接
这个问题的原因在于“==”,你要知道a,b是对象,因为String是个类,而“==”比较的是a和b的引用是否相等,如果你要比较a和b它们的内容是否相等的话,需要用到equals方法,可以肯定a和b的内容是相同的,因此equals方法返回值肯定为true。
你只要记住“==”
(1)如果是对象,则比较的是它们的引用地址
(2)如果是基本类型,比如int,char等类型,则比较的是它们的内容
而“equals”,是针对对象而言的,即比较对象里面的内容是否相同,你以后学深入点,就会掌握“==”和“equals”
如果你想得到true的话,可以用equals,源代码如下:
public class test
{
public static void main(String[] args)
{
String a = "ab";
final String bb = getBB();
String b = "a" + bb;
System.out.println(a == b);
System.out.println(a.equals(b));
}
private static String getBB()
{
return "b";
}
}
④ 在java里面怎样实现两个字符串的连接操作
1.String a = "abc";
String b ="def";
String c = a+b;
2.StringBuffer a =new StringBuffer("acb");
StringBuffer b =new StringBuffer("123");
a.append(b);
3.String a = "abc";
String b ="def";
String c = a.concat(b);
第三种方法,必须是版String 类型权