我正在参加java训练,以前也有过编程基础,今天课程结束后碰到一个问题,描述如下:
要求从键盘输入一句话,然后按单词反向输出,比如,输入一句:"hello java",则程序执行后输出:"java hello",
再请教各位高手一些学习方法,比如,像这种编程问题是自己想好些,还是想不通直接提出好些.

解决方案 »

  1.   

    public class a{public static void main(String[] args){
    String str = "hello world";
    String s[] = str.split(" ");
    for(int i=s.length-1;i>=0;i--){
    System.out.print(s[i] + " ");
    }
    }
    }大致这个样子,自己在改改
      

  2.   

    第一步:接受键盘输入的数据,存放到一个变量里面哈
    第二步:倒序输出。 String input = "hello java hi c++";
    String[] inputArray = input.split(" ");
    StringBuffer sbuffer = new StringBuffer();
    for (int i = inputArray.length - 1; i >= 0; i--) {
    sbuffer.append(inputArray[i]);
    if (i != 0) {
    sbuffer.append(" ");
    }
    }
    System.out.println(sbuffer);
      

  3.   

    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.util.Scanner;public class Ddsfse { public static void main(String[] args) throws IOException {
    BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
    String str=br.readLine();
    String[] ss=str.split(" ");

    for(int i=ss.length-1;i>=0;i--){
    System.out.print(ss[i]+" ");
    }
    }
    }
      

  4.   

    都太麻烦了吧,StringBuffer类 reverse()方法,只给lz提醒到这了..自己去动手实现吧
      

  5.   

    其实Java在做这方面很简单。
    你要是从C/C++过来,就会感到这些类库真的太好了。
      

  6.   


    简单写下,供楼主参考!
    import java.util.*;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;public class Test {

    public static void main(String args[]) {
    String s = "dfdf,dfd.uuuu/uuu6 iui iu!";
    List str = new ArrayList();
        Pattern p = Pattern.compile("[a-zA-Z]+");
        Matcher m = p.matcher(s);
           while(m.find()) {
         str.add(m.group());
           } 
           
         for(int i = str.size()-1;i >=0;i--) {
         System.out.println(str.get(i));
         }
       }
    }
      

  7.   


    public class a{ public static void main(String[] args){ 
    String str = "hello world"; 
    String s[] = str.split(" "); 
    for(int i=s.length-1;i>=0;i--){ 
    System.out.print(s[i] + " "); 



    还是自己想下找下资料再上来问这样更好一点
      

  8.   

    最终版,奉献给楼主!呵呵
    import java.io.*;
    import java.util.*;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;public class Test {

    public static void main(String args[]) throws IOException {

       BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); 
       String s = br.readLine();
       List str = new ArrayList();
       Pattern p = Pattern.compile("[a-zA-Z]+");
       Matcher m = p.matcher(s);
       while(m.find()) {
      str.add(m.group());
       }
       
       for(int i = str.size()-1;i>=0;i--) {
       System.out.println(str.get(i));
       }
           
       }
    }
      

  9.   

    提示楼主一下,使用 java.util.Scanner,自己想也要有方法,如果实在绞尽脑汁都没思路,可以先看看大家的提示,注意不是具体代码,如果有些思路,先写些验证自己想法的代码,程序是写出来的。
      

  10.   

    我有点走入误区了,我用的是二维数组,然后循环实玩,java api阅读不是太够,再加上是初学,有点看不懂
      

  11.   

    public class a{ public static void main(String[] args){ 
    String str = "hello world"; 
    String s[] = str.split(" "); //s[0]=hello,s[1]=world
    for(int i=s.length-1;i>=0;i--){ 
    System.out.print(s[i] + " "); 



    正解.
      

  12.   

    split(" ")
    把单词分开拆成string[]
    然后倒着输出
      

  13.   

    ding le, it is good!!!