首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

有关Vector程序的一个有关问题,各位帮小弟我看看

2012-03-12 
有关Vector程序的一个问题,各位帮我看看!程序是从命令行参数接收一些字符串值并将这些值存储在Vector中,倒

有关Vector程序的一个问题,各位帮我看看!
程序是从命令行参数接收一些字符串值并将这些值存储在Vector中,倒序显示和降序显示。降序显示不出来,请帮忙看看,非常感谢!
代码如下:


import   java.util.Vector;
import   java.lang.String;

public   class   VectorTest   {
        Vector   obj;
        VectorTest()
        {
                obj=new   Vector();
        }
        /*输入几个字符串*/
        void   add(final   String[]   str)
        {
                for(int   i=0;i <str.length;i++)
                {
                        obj.addElement(str[i]);
                }
        }
        /*倒须输出*/
        void   daoxu()
        {
                System.out.println( "\n************************* ");
                System.out.println( "倒序显示的内容 ");
                System.out.println( "************************* ");
                for(int   i=obj.size()-1;i> =0;i--)
                {
                        System.out.println(obj.elementAt(i));
                }
        }
        /*降序输出*/
        void   jiangxu()
        {
               
                System.out.println( "*********************************** ");
                System.out.println( "按降序分类的内容 ");
                System.out.println( "*********************************** ");
                while(obj.size()!=0)
                {
                        /*冒泡排序*/
                        for(int   i=0;i <obj.size();i++)
                        {
                                for(int   j=0;j <obj.size()-i-1;j++)
                                {
                                        String   temp;
                                        if(obj.elementAt(j+1).toString().compareTo(obj.elementAt(j).toString())> 0)
                                        {


                                                temp=obj.elementAt(j).toString();
                                                obj.setElementAt(obj.elementAt(j+1).toString(),j);
                                                obj.setElementAt(temp,j+1);
                                        }
                                }
                               
                        }
                       
                        /*for(int   i=0;i <obj.size()-1;i++)
                        {
                                if((obj.elementAt(i+1).toString()).compareTo(obj.elementAt(i).toString())> 0)
                                {
                                        //String   s0=(String)(obj.elementAt(0));
                                        //(obj.elementAt(i)).toString()=obj.elementAt(i+1).toString();
                                        temp=obj.elementAt(i).toString();
                                        obj.elementAt(i+1).toString()=temp;
                                        obj.elementAt(i).toString()=obj.elementAt(i+1).toString();
                                        System.out.println(obj.elementAt(i).toString());
                                }
                        }*/

                }
                System.out.println();
                for(int   i=0;i <obj.size();i++)
                {
                        System.out.println(obj.elementAt(i)+ "   ");
                }


        }
        public   static   void   main(String[]   args)   {
                VectorTest   VectorObj=new   VectorTest();
                VectorObj.add(args);
                VectorObj.daoxu();
                VectorObj.jiangxu();
        }
}


[解决办法]
while(obj.size()!=0)这个条件死循环了,去掉就OK了吧

热点排行