① 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 類型權