JAVA刷题之字符串的一些个人思路
public class Main {
public static void main(String[] args) {
// 示例1:字符串反转
String str = "Hello, World!";
String reversedStr = new StringBuilder(str).reverse().toString();
System.out.println(reversedStr); // 输出:!dlroW ,olleH
// 示例2:字符串移位
String shiftedStr = shiftString("Hello", 2); // 输出:"lloHe"
System.out.println(shiftedStr);
// 示例3:字符串中单词的逆序
String wordReversedStr = reverseWords("Hello World"); // 输出:"olleH dlroW"
System.out.println(wordReversedStr);
}
// 字符串反转函数
public static String reverseString(String s) {
return new StringBuilder(s).reverse().toString();
}
// 字符串移位函数
public static String shiftString(String s, int n) {
char[] charArray = s.toCharArray();
for (int i = 0; i < n % s.length(); i++) {
char temp = charArray[0];
System.arraycopy(charArray, 1, charArray, 0, charArray.length - 1);
charArray[charArray.length - 1] = temp;
}
return new String(charArray);
}
// 字符串中单词的逆序函数
public static String reverseWords(String s) {
return String.join(" ", reverseWordsArray(s.split(" ")));
}
// 辅助函数:将单词数组逆序并返回
public static String[] reverseWordsArray(String[] words) {
for (int i = 0; i < words.length / 2; i++) {
String temp = words[i];
words[i] = words[words.length - 1 - i];
words[words.length - 1 - i] = temp;
}
return words;
}
}
这段代码首先定义了一个主类Main
,在其主方法中演示了字符串反转、字符串移位以及字符串中单词的逆序。代码中使用了StringBuilder
来构建字符串,并通过String.join
和String.split
方法来处理带有空格的字符串。这些操作是常见的字符串处理任务,对于刷题来说是有参考价值的。
评论已关闭