首页
社区
课程
招聘
[求助]一个JAVA代码不会弄了谁帮下我
发表于: 2009-8-6 19:05 4301

[求助]一个JAVA代码不会弄了谁帮下我

2009-8-6 19:05
4301
import java.util.*;

public class Testvector1 {

public static void main(String[] args) {
  
  int b=0;
  Vector v=new Vector();
  System.out.println("please enter a number");
  while(true) {
   try {
   b= System.in.read();
   }catch(Exception e) {
    System.out.println(e.getMessage());
   }
  }
  if(b=='\r' || b=='\n')
   break;

   else {
   int num=b-'0';
   v.addElement(new Integer(num));
  }
}
  int sum=0;
  Enumeration e=v.elements();// V的对象不能用,怎么回事啊,eclipse编译器就是通不过,郁闷。谁帮我修改下!谢谢了啊
  
  
  while(e.hasMoreElements()) {
   Integer intobj=(Integer)e.nextElement();
   sum = sum+intobj.intValue();
   
   }
  System.out.println(sum);

}

}

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 213
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
你的帖子肯定发错地方了
2009-8-7 09:37
0
雪    币: 221
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3


你的v貌似在main外面...
2009-8-7 10:40
0
雪    币: 328
活跃值: (39)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
4
给你说一下几个问题

1、代码缩进,就是在论坛发帖子也要注意格式
2、死循环
3、循环中使用try{...}catch 方式
4、输入获取方式不正确
5、错误的break语句
6、根据程序上下文,b变量使用错误
7、针对Enumeration的使用,针对Vector 应该使用 elementAt,如果使用 nextElement会增加代码片断执行时间,尤其是在 J2ME 等受限设备上。
8、针对代码片断功能,这个实现算法过于复杂
9、针对 Vector 的使用,如果是在 JDK1.5之后的,Vector可以使用自动封装和解封,即
     v.addElement(34); 这种,直接被处理成 v.addElement(new Integer(34));
10、针对 1.5之后,可以使用泛型  Vecot<Integer> v = new Vector<Integer>();

import java.util.*;

public class Testvector1 {
    public static void main(String[] args) {
            int b=0;
            Vector v=new Vector();
            System.out.println("please enter a number");

            while(true) {
                   try {
                         b= System.in.read();
                  }catch(Exception e) {
                      System.out.println(e.getMessage());
                  } // try end
            } // while end

            if(b=='\r' || b=='\n')
                 break;      
            else {
                 int num=b-'0';
                 v.addElement(new Integer(num));
            } // else end
    } // main() End

int sum=0;  // 这个被编译成 Testvector1 的成员变量
Enumeration e=v.elements();   // 此处必然找不到 v
  
  
  while(e.hasMoreElements()) {
   Integer intobj=(Integer)e.nextElement();
   sum = sum+intobj.intValue();
   
   }
  System.out.println(sum);
}
}

// 看了一下上面的代码,发现这是一个测试 Vector的例子,可以写成这样

public class TestVector2{
    public static void main(String[] args){
          String line;
          Vector<Integer> v = new Vector<Integer>();
          long sum = 0;
          int b;
          System.out.println("please enter a number");
          try{
              while(true){
                  b = System.out.read();
                  if(b == '\n' || b =='\r'){    // 当输入 回车的时候,退出循环
                       break;
                  }
                  if(b >= '0' && b <= '9'){
                       b = b - '0';
                       v.addElement(new Integer(b));
                  }else{
                        // TODO 此处提示用户,输入的不是数字
                  }
              }
              int sum = 0;
              int size = v.size();
              Integer in;
              for(int i = 0; i<size;i++){
                  in = v.elementAt(i);
                  sum += in. intValue();
              }
              System.out.println(sum);
          }catch(Exception ex){
               System.out.println("出现异常:"+e.getMessage());  
          }
    }
}
2009-8-16 09:32
0
游客
登录 | 注册 方可回帖
返回
//