编写一个java程序,比较String和StringBuffer连接字符串的性能,通过计算运行时间
时间: 2023-03-11 07:11:53 浏览: 98
我可以为你提供一个简单的Java程序示例,用于比较String和StringBuffer连接字符串的性能,例如:public class TestStringBuffer {
public static void main(String[] args) {
long startTime = System.currentTimeMillis();
StringBuffer sb = new StringBuffer("Java");
for (int i=0; i<10000; i++){
sb.append("Tutorial");
}
System.out.println("Time taken by StringBuffer: " + (System.currentTimeMillis() - startTime) + "ms");
startTime = System.currentTimeMillis();
String str = "Java";
for (int i=0; i<10000; i++){
str = str + "Tutorial";
}
System.out.println("Time taken by String: " + (System.currentTimeMillis() - startTime) + "ms");
}
}
相关问题
使用Java编写(2)从键盘录入一个字符串,分别使用String和StringBuffer实现字符串的反转
使用String实现字符串反转:
```java
import java.util.Scanner;
public class StringReverse {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = scanner.nextLine();
String reverse = "";
for (int i = str.length() - 1; i >= 0; i--) {
reverse += str.charAt(i);
}
System.out.println("反转后的字符串为:" + reverse);
}
}
```
使用StringBuffer实现字符串反转:
```java
import java.util.Scanner;
public class StringBufferReverse {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = scanner.nextLine();
StringBuffer stringBuffer = new StringBuffer(str);
System.out.println("反转后的字符串为:" + stringBuffer.reverse());
}
}
```
用String和StringBuffer来实现判断一个字符串是否是对称字符串
可以使用以下代码来判断一个字符串是否是对称字符串:
```
public static boolean isSymmetric(String str) {
if (str == null || str.length() == 0) {
return true;
}
StringBuffer sb = new StringBuffer(str);
return str.equals(sb.reverse().toString());
}
```
这个方法首先会判断输入的字符串是否为空或者长度为0,如果是的话直接返回true,因为空字符串也是对称字符串。接着,使用StringBuffer将输入的字符串反转,然后将反转后的字符串转换为String类型,最后判断反转前后的字符串是否相等。如果相等,则说明原始字符串是对称字符串,否则不是。