首頁 > Java > java教程 > 主體

Java 字串連接

王林
發布: 2024-08-30 15:34:20
原創
628 人瀏覽過

在這篇文章中,我們將詳細解釋java字串連接。此外,我們還將看到在 java 中連接兩個或多個字串的不同方式。我們還將看到java中字串連接的效能。此外,還會有展示java字串連接的java程式碼範例。

廣告 該類別中的熱門課程 JAVA 掌握 - 專業化 | 78 課程系列 | 15 次模擬測驗

開始您的免費軟體開發課程

網頁開發、程式語言、軟體測試及其他

Java 中連接字串的不同方法

Java 字串連接可以定義為將兩個或多個字串連接在一起形成新字串的過程。以下是java連接字串的不同方式:

  • 使用 + 運算子
  • 使用 String.concat() 方法
  • 使用 StringBuilder 類別
  • 使用 StringBuffer 類別

1.使用 + 運算子

這是連接 java 字串的最簡單方法。使用 + 運算符,我們可以組合多個字串。需要注意的一件重要事情是,使用 + 運算子連接後獲得的 String 將是一個新的 String,指向 java 堆中的新記憶體位置。如果池中存在字串對象,則傳回相同的字串對象;否則,它會建立一個新對象。以下是使用 + 運算子連接字串時要記住的最重要的事情:

  • 在循環中連接字串時避免使用 + 運算符,因為它會產生大量垃圾。
  • 始終儲存對使用 + 運算子連接字串後傳回的物件的參考。
  • + 運算子可用於在 java 中將整數轉換為字串。

2.使用字串緩衝區

這是一種更有效的連接 java 字串的方法。使用字串緩衝區連接字串不會建立結果字串的新物件。與使用 + 運算子相比,使用 String Buffer 可以節省大量記憶體空間。當使用字串緩衝區進行字串連接時,初始化字串緩衝區對象,其指定容量等於最終連接字串中的字元數。這將導致有效的記憶體使用以及節省調整字元大小期間所花費的時間。使用字串緩衝區進行字串連接的唯一缺點是其中涉及的同步開銷,因為字串緩衝區是執行緒安全的。

3.使用字串產生器

這是連接 Java 字串最有效的方法。使用字串建構器連接字串不會建立結果字串的新物件。與使用 + 運算子相比,使用字串產生器可以節省大量記憶體空間。當使用字串產生器進行字串連接時,使用等於最終連接字串中的字元數的指定容量初始化字串產生器物件。這將導致有效的記憶體使用以及節省調整字元大小期間所花費的時間。使用字串產生器被認為比使用字串緩衝區更好,因為使用字串產生器時不涉及同步開銷。

4.使用 String.concat()

這是使用上面描述的字串緩衝區或字串產生器附加方法在內部實現的。

使用Java進行字串連接的效能分析

從前面描述的四字串連接方法來看,當需要連接的字串較少時,首選使用 + 運算子。但隨著要連接的字串數量變大,+ 運算子的效能會下降,並且由於字串不可變性而創建大量物件。當要連接多個字串時,首選字串產生器,因為它提供字串可變性。

文法:

這是java字串連接的基本語法:

1。使用 + 運算子:

// method accepting strings to be concatenated
public String concatString(String s1, String s2){
String s3= s1+s2;   // using + operator
return s3;
}
登入後複製

2。使用 String.concat() 方法:

public String concatString(String s1){
String s= "First";
String s2=s.concat(s1);   // using concat method
return s2;
}
登入後複製

3。使用 StringBuffer:

StringBuffer sb= new StringBuffer(capacity); // create string buffer instance
sb.append("first").append(" ").append("second");    // call append method specifying string to be concatenated
登入後複製

4。 使用 StringBuilder:

StringBuilder sb= new StringBuilder(capacity); // create string builder instance
sb.append("first").append(" ").append("second");    // call append method specifying string to be concatenated
登入後複製

字串連接範例

以下是範例:

範例#1

讓我們來看一個使用 + 運算子和 concat () 方法進行字串連接的基本範例。

代碼:

package com.edubca.stringconcatenation;
public class StringconcatDemo{
public static void main(String args[]){
String s1= "This";
String s2= "Is";
String s3= "Edubca";
String s4="Training";
// Using + operator
String concatenatedstr= s1 + " " + s2 +" " + s3 + " " + s4;
System.out.println("String after concatenation is  :: " + concatenatedstr);
//using concat method
String concatenatedstr1= s1.concat(" ").concat(s2).concat(" ").concat(s3).concat(" ").concat(s4);
System.out.println("String after concatenation using concat method is  :: " + concatenatedstr1);
}
}
登入後複製

輸出:

Java 字串連接

範例#2

在這個例子中,我們將看到如何使用 java 中的字串緩衝區來實現字串連接。

代碼:

package com.edubca.stringconcatenation;
public class StringconcatDemo{
public static void main(String args[]){
String s1= "This";
String s2= "Is";
String s3= "Edubca";
String s4="Training";
// create StringBuffer Instance
StringBuffer sb=new StringBuffer("Edubca");
//call append method for string concatenate
StringBuffer concatenatedstr=sb.append(" ").append("Java").append(" ").append("Training");
System.out.println("Concatenated String using String Buffer is :: " + concatenatedstr );
}
}
登入後複製

輸出:

Java 字串連接

Example #3

In this example, we will see how to string concatenation is achieved using a string builder in java.

Code:

package com.edubca.stringconcatenation;
public class StringconcatDemo{
public static void main(String args[]){
String s1= "This";
String s2= "Is";
String s3= "Edubca";
String s4="Training";
// create StringBuilder Instance
StringBuilder sb=new StringBuilder ("Edubca");
//call append method for string concatenate
StringBuilder concatenatedstr=sb.append(" ").append("Java").append(" ").append("Training");
System.out.println("Concatenated String using String Builder is :: " + concatenatedstr );
}
}
登入後複製

Output:

Java 字串連接

Note: It is important to note that we should prefer StringBuilder over StringBuffer as a String buffer that consumes extra time in synchronization. But in a multithreaded environment, it is advisable to go for StringBuffer.

Conclusion

From the above discussion, we have a clear understanding of string concatenation in java, how it’s achieved, and what are different ways to concatenate java strings. Also, java code examples provide a clear understanding of concatenating strings.

以上是Java 字串連接的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板