读书人

生手求教

发布时间: 2011-12-26 23:09:58 作者: rapoo

新手求教
import java.util.*;

public class TestVector {

public static void main(String[] args) {
// TODO: Add your code here

int b = 0;
Vector v = new Vector();
while(true)
{
try{
b = System.in.read();
}catch(Exception e)
{
e.printStackTrace();
}
if(b == '\r ' || b == '\n ')
{
return;
}
else
{
b = b- '0 ';
v.addElement(new Integer(b));
}
}
Enumeration e = v.elements();
int sum = 0;
while(e.hasMoreElements())
{
Integer intobj = (Integer)e.nextElement();
sum += intobj.intValue();
}
System.out.println(sum);
}
}

编译提示:
无法访问的语句
Enumeration e = v.elements();

作为对普通类型java.util.vectord的成员addElements(E)的调用未经检查,
我应该如果修改??


[解决办法]
如果输入字母会发生什么情况?这个条件要考虑啊!
[解决办法]
while(true)这是个死循环.他以后的语句没有办法访问到.把这个条件给改了吧.
你是在看张教祥的书吧! <JAVA就业培训教程>
[解决办法]
改为:
if(b == '\r ' || b == '\n ')
{
break;
}

[解决办法]
楼上的人瞎话连篇,多了个“}”
[解决办法]
不能到达的位置.

import java.util.*;

public class TestVector {

public static void main(String[] args) {
// TODO: Add your code here

int b = 0;
Vector v = new Vector();
boolean flg = true;
while (flg) {
try {
b = System.in.read();
} catch (Exception e) {
e.printStackTrace();
}
if (b == '\r ' || b == '\n ') {
return;
} else {
b = b - '0 ';
v.addElement(new Integer(b));
}
}
Enumeration e = v.elements();
int sum = 0;
while (e.hasMoreElements()) {
Integer intobj = (Integer) e.nextElement();
sum += intobj.intValue();
}
System.out.println(sum);
}
}
[解决办法]
弄个搞笑的:)
在循环体里面加上:
if(false) break;

读书人网 >J2SE开发

热点推荐