StringBuffer的使用,判断一个字符串是否对称?
时间: 2024-04-29 16:23:13 浏览: 133
使用StringBuffer可以方便地反转一个字符串,然后再与原字符串比较是否相等,以判断该字符串是否对称。
示例代码如下:
```java
public static boolean isSymmetric(String str) {
// 将原字符串转换为StringBuffer类型
StringBuffer sb = new StringBuffer(str);
// 将StringBuffer反转
sb.reverse();
// 判断反转后的字符串与原字符串是否相等
return sb.toString().equals(str);
}
```
使用示例:
```java
String str1 = "abcba";
String str2 = "abccba";
System.out.println(isSymmetric(str1)); // true
System.out.println(isSymmetric(str2)); // true
```
相关问题
用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类型,最后判断反转前后的字符串是否相等。如果相等,则说明原始字符串是对称字符串,否则不是。
java用String来判断一个字符串是不是对称字符串
在Java中,可以使用String类型来表示字符串。判断一个字符串是否是对称字符串,可以先将该字符串翻转,然后与原字符串进行比较,如果相同,则为对称字符串,否则不是。
以下是一个示例代码:
```java
import java.util.Scanner;
public class Palindrome {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.nextLine();
scanner.close();
String reverseStr = new StringBuilder(str).reverse().toString();
if (str.equals(reverseStr)) {
System.out.println(str + " 是对称字符串");
} else {
System.out.println(str + " 不是对称字符串");
}
}
}
```
注意:在Java中,字符串是不可变的,因此不能直接修改字符串,需要使用StringBuilder或StringBuffer等可变字符串类来进行字符串的翻转等操作。
阅读全文