Vector输出问题
import java.util.Vector;public class VectorTest
{
public static void main(String[] args)
{
Vector vec = new Vector();
Student st = new Student("name","3232","dfew","");
vec.add(st);
for(int i = 0; i < vec.size(); i++)
{System.out.println(vec.get(i));}
}
}
输出的容易是:Student@c88440
晕。不知是地址还是代码。。。。。。
----------------解决方案--------------------------------------------------------
直接输出对象vec就可以了
----------------解决方案--------------------------------------------------------
..查查API吧,不好 vector是以前的容器了,现在1.5的LIST....找最新的资料看看
----------------解决方案--------------------------------------------------------
怎么能输出对象呢,你应该返回一个对象,然后再调用这个对象的方法。
----------------解决方案--------------------------------------------------------
你输入的时候,调用的是toString方法,你Student 没有重写来自Object类的toString方法
所以会打印出那个样子出来
你应该自己实现一个自己想要的toString方法
声明如下:
public String toString(){
返回你自己想返回的能代表当然对象的字符串
}
----------------解决方案--------------------------------------------------------
不知道对你有没有用,刚刚也在学这东东
[QUOTE]
import java.util.*;
class Student{
public String name;
public String age;
public Student(String name,String age){
this.name=name;
this.age=age;
}
}
class VectorTest
{
public static void main(String[] args)
{
Vector vec = new Vector();
Student st = new Student("name","23");
vec.add(st);
Enumeration e=vec.elements();
while(e.hasMoreElements())
{
Student A=(Student)e.nextElement();
System.out.println(A.name);
System.out.println(A.age);
}
}
}
[/QUOTE]
----------------解决方案--------------------------------------------------------
[CODE]class Student{
public String name;
public String age;
public Student(String name,String age){
this.name=name;
this.age=age;
}
public String toString(){
return "name:"+name+"age"+age;
}
}[/CODE]
加了这个方法以后,就可以直接调用了
System.out.println(A)就可以了
----------------解决方案--------------------------------------------------------
谢谢大家``了解了
----------------解决方案--------------------------------------------------------