亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么我刪除位置2的元素是大數學不是線性數學?

package com.imooc;


import java.util.ArrayList;

import java.util.Arrays;

import java.util.Iterator;

import java.util.List;

//備選課程類

public class ListTest {

//用于存放課程的書架

public List coursesToSelect;

public ListTest(){

this.coursesToSelect = new ArrayList();

}

//用于往課表里添加課程

public void testAdd(){

//創建課程對象,通過add方法添加課程到課程表里

Course cr1 = new Course("1","數據結構");

coursesToSelect.add(cr1);

//

Course temp = (Course)coursesToSelect.get(0);

System.out.println("添加了課程:"+temp.getId() +":"+ temp.getName());

Course cr2 = new Course("2","C語言");

coursesToSelect.add(0, cr2);

Course temp2 = (Course)coursesToSelect.get(0);

System.out.println("添加了課程:"+temp2.getId() +":"+ temp2.getName());

coursesToSelect.add(cr1);

//

Course temp0 = (Course)coursesToSelect.get(2);

System.out.println("添加了課程:"+temp0.getId() +":"+ temp0.getName());

//注釋的方法會引起數組下標越界異常

// Course cr3 = new Course("3","test");

// coursesToSelect.add(3, cr3);

Course[] cr3 = {new Course("3","離散數學"),new Course("4","數學")};

coursesToSelect.addAll(Arrays.asList(cr3));

Course temp3 = (Course)coursesToSelect.get(3);

Course temp4 = (Course)coursesToSelect.get(4);

System.out.println("添加了課程:"+temp3.getId() +":"+ temp3.getName()+

temp4.getId() +":"+ temp4.getName());

Course[] cr4 = {new Course("5","線性數學"),new Course("6","大數學")};

coursesToSelect.addAll(2, Arrays.asList(cr4));

Course temp5 = (Course)coursesToSelect.get(2);

Course temp6 = (Course)coursesToSelect.get(3);

System.out.println("添加了課程:"+temp5.getId() +":"+ temp5.getName()+

temp6.getId() +":"+ temp6.getName());

}


//通過for each方法訪問集合元素

public void testFof(){

System.out.println("有如下課程選擇通過for each訪問:");

for(Object obj : coursesToSelect){

Course cr = (Course) obj;

System.out.println("課程:"+cr.getId()+":"+cr.getName());

}

}

//刪除list中的元素

public void testRemove(){

// Course cr = (Course) coursesToSelect.get(4);

System.out.println("即將刪除4位置上的元素");

coursesToSelect.remove(4);

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

testFof();

//通過removeAll方法刪除元素

Course[] courses = {(Course) coursesToSelect.remove(1)

,(Course) coursesToSelect.remove(2)};

coursesToSelect.remove(Arrays.asList(courses));

System.out.println("即將刪除1和2位置的元素");

testFof();

}

public static void main(String[] args) {

ListTest lt= new ListTest();

lt.testAdd();

// lt.testGet();

// lt.testIt();

// lt.testFof();

// lt.testModify();

lt.testFof();

lt.testRemove();

}

}


正在回答

2 回答

數組排序是從0開始的,你刪除的2位置實際上是第三個數組元素,即大數學。

0 回復 有任何疑惑可以回復我~
#1

yL_human 提問者

我已經解決了,不過也是謝謝
2016-03-21 回復 有任何疑惑可以回復我~

http://img1.sycdn.imooc.com//56ee7b500001cd3104190147.jpg這應該是get()吧!

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么我刪除位置2的元素是大數學不是線性數學?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號