Java 如何在颠倒一个单词句子后打印单词之间的空格 publicstaticvoidmain(字符串[]args){ //TODO自动生成的方法存根 String str=“让我们参加LeetCode竞赛”; 反向排列(str); } 私有静态void reverseWords(字符串str){ //TODO自动生成的方法存根 String[]words=str.split(\\s”); 字符串反向=”; 字串=”; ArrayList al=新的ArrayList(); for(int i=0;i=0;j--){ 反向=反向+al.get(i).charAt(j); word=reverse.replaceAll(“…”,“$0”); } } 系统输出打印项次(str); System.out.println(word); }
该代码发出了:“s'teLekatedoCteeLtsetnoc”Java 如何在颠倒一个单词句子后打印单词之间的空格 publicstaticvoidmain(字符串[]args){ //TODO自动生成的方法存根 String str=“让我们参加LeetCode竞赛”; 反向排列(str); } 私有静态void reverseWords(字符串str){ //TODO自动生成的方法存根 String[]words=str.split(\\s”); 字符串反向=”; 字串=”; ArrayList al=新的ArrayList(); for(int i=0;i=0;j--){ 反向=反向+al.get(i).charAt(j); word=reverse.replaceAll(“…”,“$0”); } } 系统输出打印项次(str); System.out.println(word); },java,string,algorithm,data-structures,string-matching,Java,String,Algorithm,Data Structures,String Matching,该代码发出了:“s'teLekatedoCteeLtsetnoc” 但是预期的输出应该被输出:“s'teL ekat edoCteeL tsetnoc”实际上,发布的代码不会产生您声称的输出;它输出“s'te Le ka te do Ct ee Lt se tn oc”。你(出于某种原因)一次颠倒一对字母 有时,最好的方法是尽可能简单易读地编写代码。以下是如何在一行(不太容易理解)中完成此操作: 实际上,发布的代码不会产生您声称的输出;它输出“s'te Le ka te do Ct ee Lt
但是预期的输出应该被输出:“s'teL ekat edoCteeL tsetnoc”实际上,发布的代码不会产生您声称的输出;它输出
“s'te Le ka te do Ct ee Lt se tn oc”
。你(出于某种原因)一次颠倒一对字母
有时,最好的方法是尽可能简单易读地编写代码。以下是如何在一行(不太容易理解)中完成此操作:
实际上,发布的代码不会产生您声称的输出;它输出
“s'te Le ka te do Ct ee Lt se tn oc”
。你(出于某种原因)一次颠倒一对字母
有时,最好的方法是尽可能简单易读地编写代码。以下是如何在一行(不太容易理解)中完成此操作:
私有静态void reverseWords(字符串str){
//TODO自动生成的方法存根
String[]words=str.split(\\s”);
字符串反向=”;
int len=单词长度;
对于(int i=0;iprivate static void reverseWords(String str){
//TODO自动生成的方法存根
String[]words=str.split(\\s”);
字符串反向=”;
int len=单词长度;
对于(int i=0;i公共类反向{
公共静态void main(字符串[]args){
String str=“让我们参加LeetCode竞赛”;
反向排列(str);
}
私有静态void reverseWords(字符串str){
char[]charArray=str.toCharArray();
布尔标志=假;
int start=0;
int end=0;
对于(int i=0;i
公共类反向{
公共静态void main(字符串[]args){
String str=“让我们参加LeetCode竞赛”;
反向排列(str);
}
私有静态void reverseWords(字符串str){
char[]charArray=str.toCharArray();
布尔标志=假;
int start=0;
int end=0;
对于(int i=0;i
你的代码没有输出你声称的内容。它输出你的代码没有输出你声称的内容。它输出你的代码没有输出你声称的内容。它输出你声称的内容。我喜欢注释中逐行的内容。我在一些回答中也使用了这个:)我喜欢逐行评论。我在一些回答中也使用了这一点:)
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "Let's take LeetCode contest";
reverseWords(str);
}
private static void reverseWords(String str) {
// TODO Auto-generated method stub
String[] words = str.split("\\s");
String reverse = "";
String word="";
ArrayList<String> al = new ArrayList<String>();
for(int i=0 ; i < words.length;i++){
al.add(words[i]);
for(int j=al.get(i).length()-1;j>=0;j--){
reverse=reverse+al.get(i).charAt(j);
word= reverse.replaceAll("..", "$0 ");
}
}
System.out.println(str);
System.out.println(word);
}
private static void reverseWords(String str) {
System.out.println(
Arrays.stream(str.split(" ")) // split into words
.map(StringBuilder::new) // use a StringBuilder for each word
.map(StringBuilder::reverse) // reverse each word
.collect(Collectors.joining(" "))); // join em back up with spaces
}
private static void reverseWords(String str) {
// TODO Auto-generated method stub
String[] words = str.split("\\s");
String reverse = "";
int len = words.length;
for(int i=0;i<len;i++){
reverse = reverse+new StringBuilder(words[i]).reverse().toString();
if(i<len-1){
reverse = reverse+" ";
}
}
System.out.println(str);
System.out.println(reverse);
}
public class Reverse {
public static void main(String[] args) {
String str = "Let's take LeetCode contest";
reverseWords(str);
}
private static void reverseWords(String str) {
char[] charArray = str.toCharArray();
boolean flag = false;
int start = 0;
int end = 0;
for (int i = 0; i < str.length(); i++) {
if (charArray[i] == ' ' && !flag) {
flag = true;
end = i - 1;
reverseWord(charArray, start, end);
}
if (charArray[i] != ' ' && flag) {
start = i;
flag = false;
}
}
reverseWord(charArray, start, charArray.length - 1);
System.out.println(str);
System.out.println(String.valueOf(charArray));
}
private static void reverseWord(char[] ch, int i, int j) {
while (i < j) {
char temp = ch[i];
ch[i] = ch[j];
ch[j] = temp;
i++;
j--;
}
}
}