public static void main(String[] args) throws Exception {
    BufferedReader input = new BufferedReader(
        new FileReader("E:/temp.txt"));
    String line;
    ArrayList list = new ArrayList();
    StringTokenizer t;
    ArrayList list2;
    //载入list中,list中含有list类型的元素,每个元素是每行的单词顺序
    while ( (line = input.readLine()) != null) {      t = new StringTokenizer(line);
      list2 = new ArrayList();
      while (t.hasMoreTokens())
        list2.add(t.nextToken());      list.add(list2);    }    ArrayList p;
    int z = list.size();
    for (int j = 0; j < z; j++) {  //大list
      // get ArrayList "list" [?]      p = (ArrayList) list.get(j);      int u = p.size();
      for (int h = 0; h < u; h++) {  //对list的元素list2进行循环(小list)        for (int k = 0; k < u; k++) {
          System.out.print(p.get(k) + " ");
        }
        p.add(p.get(0));
        p.remove(0);
        System.out.println();
      }    }
    System.out.println("下面是排序");
    for (int n = 0; n < z; n++) {
      List myList = (List) list.get(n);
      TreeSet ts = new TreeSet();
      for(int i = 0;i<myList.size(); i++)
      {
        ts.add(myList.get(i));
      }
      for(Iterator it = ts.iterator(); it.hasNext();)
      {
        System.out.print( it.next()  + " ");
      }
      System.out.println();
    }
  }

解决方案 »

  1.   

    你的程序修改如下:
    import java.util.*;
    import java.util.List;
    import java.io.*;public class text extends java.lang.Object 
    {
        public static void main (String args[]) throws Exception 
    {
             BufferedReader input = new BufferedReader(new FileReader(args[0]));
             String line;
             ArrayList list = new ArrayList();
             StringTokenizer t;
    ArrayList list2;
        String[] sa;
             while ((line = input.readLine()) != null) 
    {
                  t = new StringTokenizer(line);
      list2 = new ArrayList();
                  while (t.hasMoreTokens())
                    list2.add(t.nextToken());
                  list.add(list2);
            
             } ArrayList p;

                int z = list.size();

               System.out.println("第一次输出");
    System.out.println("==========");
    for (int j=0; j<z; j++) 
    {  
     p = (ArrayList)list.get(j);
                 int u = p.size();
     for (int h=0; h<u; h++) 
     {  
                   for (int k=0; k<u; k++) 
       {            
      System.out.print(p.get(k) + " ");
       }
       p.add(p.get(0));
       p.remove(0);
       System.out.println();
     } 
    }

    System.out.println("第二次输出");
    System.out.println("==========");
        
    sa=new String[z];

        for(int i=0;i<sa.length;i++)
    sa[i]="";

    for (int n=0;n<z;n++)
    {
     
     p=(ArrayList)list.get(n);
     
     for(int k=0;k<p.size();k++)
    sa[n]=sa[n]+(String)p.get(k)+" ";
        //System.out.println(p.get(k));
    }
          
    Arrays.sort(sa);

    for (int l=0;l<z;l++)
    {
      System.out.println(sa[l]);
    }
             input.close();
         }
    }我测试过,能用祝你好运!
      

  2.   

    第一次输出
    ==========
    Hello World
    World Hello
    I am wac
    am wac I
    wac I am
    第二次输出
    ==========
    Hello World
    I am wac
    输出就是这样的
      

  3.   

    import java.util.*;
    import java.io.*;/**
     * Not good but only to use. 
     * Test pls, :-)
     * Base20030610
     */
    public class Test{
      public Test() {}
      
      public static void main(String[] args) {
        try{
          BufferedReader  input = new BufferedReader(new FileReader("aa.txt"));
          String          line;
          ArrayList       list  = new ArrayList();
          StringTokenizer t;
          ArrayList       list2;
          String[]        sa    = new String[100];        while ((line = input.readLine()) != null) {
            t = new StringTokenizer(line);
            list2 = new ArrayList();
            while (t.hasMoreTokens())
              list2.add(t.nextToken());        list.add(list2);
          }
          input.clese();
          //---------------------
          for (int i=0; i<list.size(); i++){
            ArrayList al  = (ArrayList)list.get(i);
            int       len = al.size();
            for (int j=0; j<len; j++){
              for (int m=j; m<len; m++){
                System.out.print(al.get(m) + " ");
              }
              for (int n=0; n<j; n++){
                System.out.print(al.get(n) + " ");
              }          
              System.out.print("\n");
            }
          }
        }
        catch (Exception ex){
          System.out.println("...." + ex.getMessage());
        }
      }
    }
      

  4.   

    Sorry, 写错了一个单词,在关INPUT的时候,:-(
      

  5.   

    那个sort并不是按字母排的,所以不成
      

  6.   

    import java.util.*;
    import java.io.*;/**
     * 上午粗看一眼下了几个结论,结果全是错的*-_-* 脸红红的啦
     * 这回可以啦,出错的原因在于,sort可以对数组的元素进行排序,而不能对字串内的单词排
     *
     * platform: jdk1.4.1_02
     * Base20030610
     */
    public class Line01{
      public static void main(String[] args) {
        try{
          BufferedReader in   = new BufferedReader(new FileReader("aa.txt"));
          ArrayList      list = new ArrayList();
          String         line;
          // read file and translate every line to array and set it into ArrayList
          while ((line = in.readLine()) != null) {
            String[] sa = line.split(" ");
            list.add(sa);
          }
          in.close();
          //-------------------------
          System.out.println(">>>>>>>>>>>>>>>>>>>> 1");
          print(list);
          //-------------------------
          for (int i=0; i<list.size(); i++){
            String[] sa = (String[])list.get(i);
            Arrays.sort(sa);
            list.remove(i);
            list.add(i,sa);
          }
          System.out.println(">>>>>>>>>>>>>>>>>>>> 2");
          print(list);
        }
        catch (Exception ex){
          System.out.println("...." + ex.getMessage());
        }
      }  static void print(ArrayList list){
        for (int i=0; i<list.size(); i++){
          String[] sa  = (String[])list.get(i);
          int      len = sa.length;
          for (int j=0; j<len; j++){
            for (int m=j; m<len; m++)
              System.out.print(sa[m] + " ");
            for (int n=0; n<j; n++)
              System.out.print(sa[n] + " ");
            System.out.println();
          }  
        }
      }
    }
      

  7.   

    做一个题目受益不浅呵
    all of mine,really