- 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