使用矢量来存储Fruit对象,每个对象都有名称、数量和价格。程序如下:import java.util.*;public class Gou{
Vector list;
Fruit f1=new Fruit();
Fruit f2=new Fruit();
Fruit f3=new Fruit(); f1.name="apple";f1.count=1;f1.price=3.5f;
f2.name="peer";f2.count=2;f2.price=4.5f;
f3.name="orange";f3.count=3;f3.price=5.5f;

public Gou(){
  Vector<Fruit> list=new Vector<Fruit>();
  list.add(f1);
  list.add(f2);
  list.add(f3);
  for(Iterator it = list.iterator;it.hasNext;){
Fruit output = (Fruit)it.next();
System.out.println(output);      }
}

}public class Fruit{
        String name;
int count;
float price;
}
public static void main(String[] args){
Gou g = new Gou();
}问题:无法识别f1.name等期待您的回复。

解决方案 »

  1.   


    import java.util.*;public class Gou {
    Vector list;
    Fruit f1 = new Fruit();
    Fruit f2 = new Fruit();
    Fruit f3 = new Fruit(); public Gou() {
    Vector<Fruit> list = new Vector<Fruit>(); f1.setName("apple");
    f1.setCount(1);
    f1.setPrice(3.5f);
    list.add(f1);
    f2.setName("peer");
    f2.setCount(2);
    f2.setPrice(4.5f); 
    list.add(f2);
    f3.setName("orange");
    f3.setCount(3);
    f3.setPrice(5.5f);
    list.add(f3);

    for (Iterator<Fruit> it = list.iterator(); it.hasNext();) {
    Fruit output = (Fruit) it.next();
    System.out.println(output);
    }
    } public static void main(String[] args) {
    Gou g = new Gou();
    }
    }class Fruit {
    private String name;
    private int count;
    private float price; public String getName() {
    return name;
    } public void setName(String name) {
    this.name = name;
    } public int getCount() {
    return count;
    } public void setCount(int count) {
    this.count = count;
    } public float getPrice() {
    return price;
    } public void setPrice(float price) {
    this.price = price;
    } /**
     * 重写toString方法,方便打印
     */
    @Override
    public String toString() {
    return name + ":" + count + ":" + price;
    }


    }帮你改了下,楼主可以看看!
      

  2.   


    public class Gou{
        Vector list;
        Fruit f1=new Fruit();
        Fruit f2=new Fruit();
        Fruit f3=new Fruit();    { //这段代码要么写在代码块里,要么写在方法里,直接写是不符合语法的
            f1.name="apple";f1.count=1;f1.price=3.5f;
            f2.name="peer";f2.count=2;f2.price=4.5f; 
            f3.name="orange";f3.count=3;f3.price=5.5f;
        }    public Gou(){
            Vector<Fruit> list=new Vector<Fruit>();
            //要么就把上面的代码写到这里
            list.add(f1);
            list.add(f2);
            list.add(f3);
            for(Iterator it = list.iterator;it.hasNext;){
                Fruit output = (Fruit)it.next();
                System.out.println(output);
            }
        }
    }
      

  3.   

    f1.name="apple";f1.count=1;f1.price=3.5f;
    f2.name="peer";f2.count=2;f2.price=4.5f; 
    f3.name="orange";f3.count=3;f3.price=5.5f;
    ---这一段写到方法里面去
    import java.util.*;public class Gou{
    Vector list;
    Fruit f1=new Fruit();
    Fruit f2=new Fruit();
    Fruit f3=new Fruit();public Gou(){f1.name="apple";f1.count=1;f1.price=3.5f;
    f2.name="peer";f2.count=2;f2.price=4.5f; 
    f3.name="orange";f3.count=3;f3.price=5.5f;
    Vector<Fruit> list=new Vector<Fruit>();
    list.add(f1);
    list.add(f2);
    list.add(f3);
    for(Iterator it = list.iterator;it.hasNext;){
    Fruit output = (Fruit)it.next();
    System.out.println(output);   }
    }}public class Fruit{
      String name;
    int count;
    float price;
    }
    public static void main(String[] args){
    Gou g = new Gou();
    }
      

  4.   

    for(Iterator it = list.iterator;it.hasNext;){
    Fruit output = (Fruit)it.next();
    System.out.println(output);   }
    这一段也有问题
    建议写成这个样子
    for (Fruit output : list)
            {
                System.out.println(output.name + " " + output.count + " " + output.price);        }
      

  5.   

    重写方法toString后,为何打印结果不变