Educoder–Java高級特性(第二章)- 集合框架【筆記+參考代碼】

Educoder–Java高級特性(第二章)- 集合框架【筆記+參考代碼】


第一關


編程要求
請仔細閱讀右側代碼,根據方法內的提示,在Begin -
End區域內進行代碼補充,創建ArrayList集合並且向集合中添加數據,具體要求如下:

添加字符串類型數據:https:www.educoder.net;

添加double類型數據:2018.423;

在方法中返回你創建的集合對象。


測試說明
補充完代碼後,點擊測評,平臺會對你編寫的代碼進行測試,當你的結果與預期輸出一致時,即爲通過。

預期輸出:

https:www.educoder.net

2018.423



參考代碼

package step1;
// 導包
/********** Begin **********/
import java.util.ArrayList;				
/********** End **********/
						
public class HelloWorld {
    
	@SuppressWarnings("unchecked") 
	public ArrayList getList() {
		/********** Begin **********/
		ArrayList list = new ArrayList();
		list.add("https:www.educoder.net");
		list.add(2018.423);
		return list;
		/********** End **********/
	}
}



第二關


編程要求
請仔細閱讀右側代碼,根據方法內的提示,在Begin - End區域內進行代碼補充,具體任務如下:

刪除集合的第一個和最後一個元素;

添加兩個字符串:hello,educoder至集合中;

修改集合的第三個元素,改爲:list;

輸出集合中所有的元素。


測試說明
補充完代碼後,點擊測評,平臺會對你編寫的代碼進行測試,當你的結果與預期輸出一致時,即爲通過。

測試輸入:

4

張三

李四

王五

趙六

預期輸出:

李四

王五

list

educoder


提示,獲取數組的長度:

ArrayList list = new ArrayList(); list.add(1); list.add(3);
System.out.println(list.size()); 輸出:2



參考代碼

package step2;

import java.util.ArrayList;
import java.util.Scanner;

public class HelloWorld {
	
    @SuppressWarnings("unchecked")
	public static void main(String[] args) {
		//獲取輸入的數據並添加至集合
		Scanner sc = new Scanner(System.in);
		ArrayList list = new ArrayList<>();
        int length = sc.nextInt();
		for(int i =0 ; i< length; i++){
			list.add(sc.next());
		}
		/********** Begin *********/
		list.remove(0);
		list.remove(length-2);
		list.add("hello");
		list.add("educoder");
		list.set(2,"list");
		for(int i=0;i<list.size();i++){
			System.out.println(list.get(i));
		}
		/********** End **********/
	}
}



第三關


編程要求
請仔細閱讀右側代碼,根據方法內的提示,在Begin - End區域內進行代碼補充,具體任務如下:

分別定義HashSet、ArrayList、LinkedList、HashMap集合。並向每一個集合中添加www.educoder.net,Map集合的key設置爲address,最後將每一個集合返回。


測試說明
補充完代碼後,點擊測評,平臺會對你編寫的代碼進行測試,當你的結果與預期輸出一致時,即爲通過。

測試輸入:無

預期輸出:

www.educoder.net

www.educoder.net

www.educoder.net

www.educoder.net



參考代碼

package step3;

import java.util.ArrayList;
import java.util.HashSet;
import java.util.Set;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.Map;

public class HelloWorld {
	
	public HashSet getHashSet(){
		/********** Begin **********/
		HashSet set = new HashSet();
		set.add("www.educoder.net");
		return set;
		/********** End **********/
	}
	
	public ArrayList getArrayList(){
		/********** Begin **********/
		ArrayList list = new ArrayList();
		list.add("www.educoder.net");
		return list;
		/********** End **********/
	}
	
	public LinkedList getLinkedList(){
		/********** Begin **********/
		LinkedList list = new LinkedList();
		list.add("www.educoder.net");
		return list;
		/********** End **********/
	}
	
	public Map getHashMap(){
		/********** Begin **********/
		Map map = new HashMap();
		map.put("address","www.educoder.net");
		return map;
		/********** End **********/
	}	
	
}



第四關


編程要求
請仔細閱讀右側代碼,根據方法內的提示,在Begin - End區域內進行代碼補充,具體任務如下:

創建一個只能存儲String類型數據的List集合;

將程序輸入的數據存入List集合中;

輸出集合中所有的數據。

提示:list.size()方法可以獲取集合的長度。


測試說明
補充完代碼後,點擊測評,平臺會對你編寫的代碼進行測試,當你的結果與預期輸出一致時,即爲通過。

測試輸入:

張三

李四

王五

預期輸出:

集合的第1個數據爲:張三

集合的第2個數據爲:李四

集合的第3個數據爲:王五



參考代碼

package step4;

import java.util.*;

public class HelloWorld {
	
	
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//程序會輸入三次數據
		/********** Begin **********/
		List<String> list = new ArrayList<String>();
		while(sc.hasNext()){
			list.add(sc.next());
		}
		for(int i=0;i<list.size();i++){
			System.out.println("集合的第"+(i+1)+"個數據爲:"+list.get(i));
		}
		/********** End **********/
	}
	
}



第五關


編程要求
請仔細閱讀右側代碼,根據方法內的提示,在Begin - End區域內進行代碼補充,具體任務如下:

向menuDict集合中添加一道菜名lamb,它的價格是50;

獲取menuDict集合中的fish的價格並打印出來;

將menuDict集合中的fish的價格改爲100;

刪除menuDict集合中noodles這道菜;

輸出新的menuDict菜單。


測試說明
補充完代碼後,點擊測評,平臺會對你編寫的代碼進行測試,當你的結果與預期輸出一致時,即爲通過。

pizza

40

noodles

30

carrot

20

turkey

34

fish

37

預期輸出:

37

{pizza=40,turkey=34,fish=100,lamb=50,carrot=20}



參考代碼

package step5;

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

public class HelloWorld {

	public static void main(String[] args) {
		Map<String, Integer> menuDict = new HashMap<>();
		Scanner sc = new Scanner(System.in);
		for (int i = 0; i < 5; i++) {
			menuDict.put(sc.next(),sc.nextInt());
		}
		/********** Begin **********/
		menuDict.put("lamb",50);
		System.out.println(menuDict.get("fish"));
		menuDict.put("fish",100);
		menuDict.remove("noodles");
		System.out.println(menuDict.toString());
		/********** End **********/
	}
}



第六關


1. 在Java中,以下( C )類的對象以鍵值對(key-value)的方式存儲對象

A、java.util.List
B、java.util.ArrayList
C、java.util.HashMap
D、java.util.LinkedList

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章