这是一个书上的例子。假设你在键盘上输入一个数字序列并存储在某个数据结构种,最后在屏幕上打印出每个数字相加的结果
程序清单:TestVector.java
import java.util.*;  //下面用到的Vector类和Enumeration接口都在此包中
public class TestVector
{
public static void main(String [] args)
{
int b=0;
Vector v=new Vector();
System.out.println("Please Enter 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();    
while(e.hasMoreElements())
{
Integer intObj=(Integer)e.nextElement();
sum += intObj.intValue();
}
System.out.println(sum);
}
}我把它改写为:public class ReadLine { /**
 * @param args
 */
public static void main(String[] args) {
// TODO 自动生成方法存根
int[] buf = new int[1024];
int pos = 0;
int ch = 0;
int add = 0;
System.out.println("please enter info, input bye for exit:");
while (true) {
try {
ch = System.in.read();
} catch (Exception e) { e.printStackTrace();
} switch (ch) { case '\r':
break; case '\n':
for (int i = 0; i < pos; i++) {
add = add + buf[i];
}
System.out.println(add);
pos = 0;
add = 0;
break;
default:
buf[pos++] = ch - '0'; }
} }}结果一样,区别?哪个好?