java有个小问题请前辈们指教

来源:4-10 学生选课---应用泛型管理课程 Ⅱ

慕瓜8829151

2017-03-06 19:10

package 调试;


import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;


public class CarList {

public List<Car> CarSelect;// 泛型:< 指定类型>   用了泛型之后可以不用强转而且必须输入指定的类型

public CarList(){

CarSelect=new ArrayList<Car>();

}

public void CarAdd(){

Car t=new Car("100W","机甲");

CarSelect.add(t);

Car t1=  CarSelect.get(0);

Car[] tt={new Car("50W","宝马"),new Car("45w","哈雷")};

CarSelect.addAll(Arrays.asList(tt));

Car tt2= CarSelect.get(1);

Car tt3= CarSelect.get(2);


}

      //查询数据

public void CarGet(){

 int size=CarSelect.size();

 for(int i=0;i<size;i++){

  Car tt4= CarSelect.get(i);

  System.out.println("钱:"+tt4.money+",名字:"+tt4.name);

 

 }

}


     //修改数据

public void CarSet(){

System.out.println("第零位将被修改");

 CarSelect.set(0,new Car("1w","哈哈哈"));

 CarGet();

 CarForeach();

 

}


      public void CarRemove(){

     System.out.println("0位删除数据");

     Car x= CarSelect.get(0);

     CarSelect.remove(x);

     System.out.println("删除成功");

     CarGet();

     CarForeach();

      }

    /* // 在CarSelect中添加非car类型的字符串

      public void test(){

      System.out.println("嫩不能在CarList添加一个字符串尼?");

     CarSelect.add("我只是一个无辜的字符串");

     CarGet();//出现异常,原因:在进行强转时无法将String强转成Car类型,抛出异常

      }

     */ 

      public void  CarForeach(){

        for(Car x:CarSelect){

        System.out.println("用foreach查询数据");

        System.out.println("foreach方法  钱:"+x.money+"foreach方法   名字:"+x.name);

        }

      }

         //泛型集合可以添加泛型子类的对象

      public void fanxingtest(){

    CarSon son=new CarSon();

    son.name="泛型子类";

    son.money="泛型子类测试成功";

    CarSelect.add(son);

    CarForeach();

   

     

      }

       public void 泛型不能使用基本类但能使用包装类(){

      List<Car> ceshi=new ArrayList<Car>();

       }

      

      

      

  public static void main(String[] args) {

CarList gg=new CarList();

gg.CarAdd();

gg.CarGet();

gg.CarSet();

gg.CarRemove();

//gg.test();//调用后会发现报错

gg.fanxingtest();

}

}

这是我看了老师后自己打的,在打的过程中出现了个疑问

老师在打泛型不能使用基本类型只能使用包装类时

 public void 泛型不能使用基本类但能使用包装类(){

      List<Car> ceshi=new ArrayList<Car>();

       }

     这个ceshi没用定义啊? 不应该像第一次定义CarSelect一样,

  public List ceshi();//

List<Car> ceshi=new ArrayList<Car>();//

定义然后初始化,可老师这个好像直接初始化了.为什么?

写回答 关注

1回答

  • 不一样的
    2017-03-06 20:04:09
    已采纳

    定义了,把ceshi定义成了一个List类型

    慕瓜8829...

    非常感谢!

    2017-03-06 20:48:25

    共 3 条回复 >

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题