혼자 공부하는 자바 13장 컬렉션 프레임 워크 확인 문제

2023. 2. 23. 23:00공부/자바

반응형

 

 
혼자 공부하는 자바
혼자 해도 충분하다! 1:1 과외하듯 배우는 자바 프로그래밍 자습서 (JAVA 8 &11 지원) 이 책은 독학으로 자바를 배우는 입문자가 ‘꼭 필요한 내용을 제대로’ 학습할 수 있도록 구성했다. ‘무엇을’ ‘어떻게’ 학습해야 할지 조차 모르는 입문자의 막연한 마음을 살펴, 과외 선생님이 알려주듯 친절하게, 그러나 핵심적인 내용만 콕콕 집어준다. 책의 첫 페이지를 펼쳐서 마지막 페이지를 덮을 때까지, 혼자서도 충분히 자바를 배울 수 있다는 자신감과 확신이 계속될 것이다! 20명의 베타리더 검증으로, ‘함께 만든’ 입문자 맞춤형 도서 20명의 베타리더와 함께 구성하여 입문자에게 맞는 난이도, 분량, 학습 요소 등을 적극 반영했다. 어려운 용어와 개념은 한번 더 풀어 쓰고, 복잡한 설명은 눈에 잘 들어오는 그림으로 풀어 냈다. ‘혼자 공부해본’ 여러 입문자의 초심과 눈높이가 책 곳곳에 반영된 것이 이 책의 가장 큰 장점이다.
저자
신용권
출판
한빛미디어
출판일
2019.06.10

 

<혼자 공부하는 자바> 신용권 저, 한빛 미디어 출판(2019.06.10)

 

※ 직접 풀이한 문제

 

13-1 확인 문제 579p

13-1-1 맞는 것에 O표, 틀린 것에 X표 하세요.

  1. o
  2. o
  3. o
  4. x - Set은 하나의 null만 저장 가능하나, List은 아니다.

13-1-2 맞는 것에 O표, 틀린 것에 X표 하세요.

  1. o
  2. o
  3. x - ArrayList에서 객체를 삭제하면 뒤에 있는 객체가 당겨진다.
  4. o

13-1-3 맞는 것에 O표, 틀린 것에 X표 하세요.

  1. o
  2. o
  3. o
  4. x - Set 컬렉션에는 하나의 null만 저장이 가능하다.

13-1-4 설명 중 틀린 것은 무엇입니까?

  • ④ - 같은 키는 덮어씌우고, 다른 키는 중복 값을 저장할 수 있다.

13-1-5 가장 적합한 컬렉션을 생성하도록 밑줄 친 부분에 코드를 작성해보세요.

//answer
ArrayList<Board> 변수 = new ArrayList<Board>();

13-1-6 가장 적합한 컬렉션을 생성하도록 밑줄 친 부분에 코드를 작성해보세요.

//answer
HashMap<String, Integer> 변수 = new HashMap<String, Integer>();

13-1-7 BoardDao의 getBoardList() 메소드를 작성해보세요.

//answer - BoardDao.java
package sec01.verify.exam07;

import java.util.ArrayList;
import java.util.List;

public class BoardDao{
	public List<Board> getBoardList(){
		List<Board> list=new ArrayList<Board>();
		list.add(new Board("제목1","내용1"));
		list.add(new Board("제목2","내용2"));
		list.add(new Board("제목3","내용3"));

		return list;
	}
}

13-1-8 Student 클래스에서 재정의해야 하는 hashCode()와 equals() 메소드의 내용을 채워보세요.

//answer - Student.java
package sec01.verify.exam08;

public class Student{
	public int studentNum;
	public String name;
	
	public Student(int studentNum,String name){
		this.studentNum=studentNum;
		this.name=name;
	}
	@Override
	public int hashCode(){
		return studentNum;
	}
	@Override
	public boolean equals(Object obj){
		if(obj instanceof Student){
			Student student=(Student)obj;
			if(student.name.equals(this.name) && (this.studentNum==student.studentNum)){
				return true;
			}
		}
		return false;
	}
}

13-1-9 실행결과와 같이 평균 점수를 출력하고, 최고 점수와 최고 점수를 받은 아이디를 출력해보세요.

//answer - MapExample.java
package sec01.verify.exam09;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class MapExample{
	public static void main(String[] args){
		Map<String,Integer> map=new HashMap<String, Integer>();
		map.put("blue",96);
		map.put("hong",86);
		map.put("white",92);
		
		String name=null;
		int maxScore=0;
		int totalScore=0;
	
		Set<String> keySet=map.keySet();
		Iterator<String> keyIterator=keySet.iterator();
		while(keyIterator.hasNext()){
			String key=keyIterator.next();
			Integer value=map.get(key);
			totalScore+=value;
			if(maxScore<value){
				maxScore=value;
				name=key;
			}
		}
		System.out.println("평균점수: "+(int)(totalScore/map.size()));
		System.out.println("최고점수: "+maxScore);
		System.out.println("최고점수를 받은 아이디: "+name);
	}
}

 

13-2 확인 문제 590p

13-2-1 맞는 것에 O표, 틀린 것에 X표 하세요.

  1. o
  2. o
  3. o
  4. x - Queue의 offer()는 객체를 넣을 때, poll은 객체를 뺄 때 사용한다.

 

 

반응형