- Java 程序示例
- 示例 - Home
- 示例 - Environment
- 示例 - Strings
- 示例 - Arrays
- 示例 - Date & Time
- 示例 - Methods
- 示例 - Files
- 示例 - Directories
- 示例 - Exceptions
- 示例 - Data Structure
- 示例 - Collections
- 示例 - Networking
- 示例 - Threading
- 示例 - Applets
- 示例 - Simple GUI
- 示例 - JDBC
- 示例 - Regular Exp
- 示例 - Apache PDF Box
- 示例 - Apache POI PPT
- 示例 - Apache POI Excel
- 示例 - Apache POI Word
- 示例 - OpenCV
- 示例 - Apache Tika
- 示例 - iText
- Java 教程
- Java - Tutorial
- Java 有用的资源
- Java - 快速指南
- Java - 有用的资源
在 Java 中如何优化字符串连接
问题描述
如何优化字符串连接?
解决方案
以下示例展示了使用 + 运算符和 StringBuffer.append() 方法连接的性能。
public class StringConcatenate { public static void main(String[] args) { long startTime = System.currentTimeMillis(); for(int i = 0; i < 5000; i++) { String result = "This is" + "testing the" + "difference"+ "between" + "String"+ "and"+ "StringBuffer"; } long endTime = System.currentTimeMillis(); System.out.println("Time taken for string" + "concatenation using + operator : " + (endTime - startTime)+ " ms"); long startTime1 = System.currentTimeMillis(); for(int i = 0; i < 5000; i++) { StringBuffer result = new StringBuffer(); result.append("This is"); result.append("testing the"); result.append("difference"); result.append("between"); result.append("String"); result.append("and"); result.append("StringBuffer"); } long endTime1 = System.currentTimeMillis(); System.out.println("Time taken for String concatenation" + "using StringBuffer : " + (endTime1 - startTime1)+ " ms"); } }
结果
上述代码示例将产生以下结果。结果可能有所不同。
Time taken for stringconcatenation using + operator : 0 ms Time taken for String concatenationusing StringBuffer : 22 ms
问题描述
如何连接字符串?
解决方案
以下示例展示了连接字符串。此方法返回一个 String,其值为传递给方法的 String,附加到 String 的末尾,用于调用此方法。
public class HelloWorld { public static void main(String []args) { String s = "Hello"; s = s.concat("word"); System.out.print(s); } }
结果
上述代码示例将产生以下结果。结果可能有所不同。
Helloword
java_strings.htm
Advertisements