java实现字符串逆序输出单词方式如下:
实现思路:先将字符串变为字符串数组,然后逆序赋值给另一个字符串数组,最后再利用StringBuffer转变为字符串输出,方法如下:
public class Demo{
public static void main(String[] args){
String str = "I am a student";
String str1 = wordsReverse(str);
//输出为student a am I
System.out.println(str1);
}
public static String wordsReverse(String str) {
//字符串变为字符串数组
String[] strArr = str.split(" ");
String[] strArr1 = new String[strArr.length];
StringBuffer sb= new StringBuffer();
for(int i=0;i//逆序赋值给字符串数组strArr1
strArr1[i]=strArr[strArr.length-i-1];
//如果不是最后一个单词则追加该单词和空格,最后一个则只追加该单词
if(i!=strArr.length-1){
sb.append(strArr1[i]);
sb.append(" ");
}else sb.append(strArr1[i]);
}
return sb.toString();
}
}
public class Test1 {
public static void main(String[] args) {
String s="I am a student";
Test1 t = new Test1();
String newstr = t.descMethod(s);
System.out.println(newstr);
}
public String descMethod(String str){
String[] list = str.split(" "); //获得字符串的单词数组
StringBuffer sb = new StringBuffer(); //用来保存新的字符串
for(int i=0;i
}
return sb.toString();
}
}
自己写的,但是传入的字符串不能有标点符号
String s = "a b c";
String[] contents = s.split(" ");
StringBuffer sb = new StringBuffer();
for (int i = contents.length -1; i >= 0; i--) {
sb.append(contents[i] + " ");
}
System.out.println(sb);