Java String Concatenate示例
时间:2020-02-23 14:35:12 来源:igfitidea点击:
字符串连接是加入多个字符串以创建大字符串的方法。
我们使用许多地方来做字符串连接。
例如:当我们覆盖对象的ToString()方法时,连接多个属性以创建表示该对象的大字符串。
3种方法连接字符串
- 使用+运算符
- 使用String的Concat方法
- 使用StringBuffer或者StringBuilder
+运算符:虽然Java不支持运算符重载,但我们可以使用+运算符连接两个字符串。
String str1= "Hello"; String str2="theitroad" String result= str1+str2;
其中结果将是"Hellooitoad"。
String的Concat方法:我们可以使用String的Concat方法来连接两个字符串。
String str1= "Hello"; String str2="theitroad" String result= str1.concat(str2);
其中结果将是"Hellooitoad"。
StringBuilder或者StringBuffer:我们可以使用StringBuilder或者StringBuffer的Append方法来连接两个字符串。
String str1= "Hello"; String str2="theitroad" String result= new StringBuffer(str1).append(str2).toString();
它是连接两个字符串的最快方法。
性能比较:
- +运算符不推荐用于大字符串连接,因为它创造了很多临时对象,也有些缓慢。
- 如果我们有很多连接,则建议使用stringBuffer或者StringBuilder,因为它最快。
字符串连接的Java程序:
package org.igi.theitroad; public class StringConcatenateExample { /* * @ Author : igi Mandliya */ public static void main(String args[]) { String str1="hello"; String str2="theitroad"; //Using String's constructor System.out.println("--------------------"); System.out.println("Using + operator"); System.out.println("--------------------"); //Below statement internally calls: //new StringBuffer().append(str1).append(str2) String resultUsingPlus=str1+str2; System.out.println(resultUsingPlus); System.out.println(); //Using String's valueOf method System.out.println("--------------------"); System.out.println("Using String's conat method"); System.out.println("--------------------"); String resultUsingConcat=str1.concat(str2); System.out.println(resultUsingConcat); System.out.println(); //Using iterating char Array System.out.println("--------------------"); System.out.println("Using StringBuffer or StringBuilder"); System.out.println("--------------------"); String resultUsingbuilder=new StringBuffer(str1).append(str2).toString(); System.out.println(resultUsingbuilder); } }
运行上面的程序时,我们将得到以下输出
------------------- Using + operator ------------------- hellotheitroad ------------------- Using String's conat method ------------------- hellotheitroad ------------------- Using StringBuffer or StringBuilder ------------------- hellotheitroad