為什么這樣會出現(xiàn)錯誤
public void testType() {
? ? ? ? System.out.println("能否往List中添加一些奇怪的東西呢?");
? ? ? ? ? ? coursesToSelect.add("我不是課程,我只是一個無辜的字符串??!");
? ? ? ? }
在add哪里有下劃線顯示報錯
public void testType() {
? ? ? ? System.out.println("能否往List中添加一些奇怪的東西呢?");
? ? ? ? ? ? coursesToSelect.add("我不是課程,我只是一個無辜的字符串??!");
? ? ? ? }
在add哪里有下劃線顯示報錯
2018-08-06
舉報
2018-08-15
public
?List<Course>?coursesToSelect;
this
.coursesToSelect?=?
new
?ArrayList<Course>();//題主這句沒加泛型,會有警告的
上面兩句就規(guī)定List集合只能存放Course類型的對象。你添加String類型肯定報錯啊
2018-08-08
這個為什么又能 賦值成功了?已經(jīng) 超出了我現(xiàn)在的水平
那為什么 添加的時候是按照定義的 類型來算,而不是按照賦值的類型來算呢??
2018-08-08
這個是個具體的 類型 而不是泛型?
他的定義才是一個泛型
特此糾正
2018-08-08
你這句話已經(jīng)定義了一個泛型。?
2018-08-06
2018-08-06
package com.imooc;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
public class ListTest {
public List<Course> coursesToSelect;
public ListTest() {
this.coursesToSelect = new ArrayList();
}
public void testAdd() {
//創(chuàng)建一個課程對象,并通過調(diào)用add方法,添加到備選課程List中
Course cr1 = new Course("1","數(shù)據(jù)結(jié)構(gòu)");
coursesToSelect.add(cr1);
Course temp = (Course)coursesToSelect.get(0);
System.out.println("添加了課程:"+temp.id+":"+ temp.name);
Course cr2 = new Course("2","C語言");
coursesToSelect.add(0, cr2);
Course temp2 = (Course)coursesToSelect.get(0);
System.out.println("添加了課程:"+temp2.id+":"+temp2.name);
coursesToSelect.add(cr1);
Course temp0= (Course)coursesToSelect.get(2);
System.out.println("添加了課程:"+temp.id+":"+ temp.name);
//Course cr3 = new Course("3","Test");
//coursesToSelect.add(4, cr3);
Course[] course = {new Course("3","離散數(shù)學"),new Course("4","匯編語言")};
coursesToSelect.addAll(Arrays.asList(course));
Course temp3 = (Course)coursesToSelect.get(2);
Course temp4 = (Course)coursesToSelect.get(3);
System.out.println("添加了兩門課程:"+temp3.id+":"+temp3.name+";"+temp4.id+":"+temp4.name);
Course[] course2 = {new Course("5","高等數(shù)學"),new Course("6","大學英語")};
coursesToSelect.addAll(2,Arrays.asList(course2));
Course temp5 = (Course)coursesToSelect.get(2);
Course temp6 = (Course)coursesToSelect.get(3);
System.out.println("添加了兩門課程:"+temp5.id+":"+temp5.name+";"+temp6.id+":"+temp6.name);
}
? ? public void testGet() {
? ? int size = coursesToSelect.size();
? ?
? ? System.out.println("有如下課程待選:");
? ? for(int i=0;i<size;i++) {
? ? Course cr = (Course)coursesToSelect.get(i);
? ? System.out.println("課程:"+cr.id+":"+cr.name);
? ? }
? ? }
? ? ? ? public void testIterator() {
? ? ? ? Iterator it = coursesToSelect.iterator();
? ? ? ? System.out.println("有如下課程待選(通過迭代器訪問):");
? ? ? ? while(it.hasNext()) {
? ? ? ? Course cr = (Course)it.next();
? ? ? ? System.out.println("課程:"+cr.id+":"+cr.name);
? ? ? ? }
? ? ? ? }
? ??
? ? public void testForEach() {
? ? System.out.println("有如下課程待選(通過for each訪問):");
? ? for(Object obj:coursesToSelect) {
? ? Course cr = (Course)obj;
? ? System.out.println("課程:"+cr.id+":"+cr.name);
? ? }
? ? }
? ? ? ??
? ? ? ? public void testModify() {
? ? ? ? coursesToSelect.set(4,new Course("7","毛概"));
? ? ? ? }
? ??
? ? ? ??
? ? ? ? public void testRemove() {
? ? ? ? //Course cr = (Course)coursesToSelect.get(4);
? ? ? ? System.out.println("即將刪除4位置上和5位置上的課程!");
? ? ? ? Course[] courses = {(Course)coursesToSelect.get(4),(Course)coursesToSelect.get(5)};
? ? ? ? coursesToSelect.removeAll(Arrays.asList(courses));
? ? ? ? //coursesToSelect.remove(4);
? ? ? ? System.out.println("成功刪除課程!");
? ? ? ? testForEach();
? ? ? ? }
? ? ? ??
? ? ? ? public void testType() {
? ? ? ? System.out.println("能否往List中添加一些奇怪的東西呢?");
? ? ? ? ? ? coursesToSelect.add("我不是課程,我只是一個無辜的字符串!!");
? ? ? ? }
? ? ? ??
? ? ? ?
public static void main(String[] atgs) {
ListTest lt = new ListTest();
? ? lt.testAdd();
lt.testType();
? ? //lt.testGet();
//lt.testIterator();
//lt.testForEach();
//lt.testModify();
//lt.testForEach();
//lt.testRemove();
}
}