티스토리 뷰
※대학생이 공부하다가 작성한 글입니다※
※정답이 아닐 수도 있습니다※
⊙ 문제 1
자바의 컬렉션 프레임워크를 설명한 내용으로 틀린 것은?
- 컬렉션 프레임워크는 Collection 인터페이스와 Collection 클래스로 제공한다.
- Vector는 List 인터페이스의 구현 클래스이다.
- HashMap 클래스는 Collection 인터페이스의 구현 클래스이다.
- LinkedList는 Queue 인터페이스의 구현 클래스이다.
⊙ 정답
3번 HashMap 클래스는 Collection 인터페이스의 구현 클래스이다.
※해설: HashMap 클래스는 Map 인터페이스의 구현 클래스이다.
⊙ 문제 2
다음 중 키와 값으로 구성된 객체를 저장하는 자료구조로 적합한 것은?
- Vector
- HashSet
- TreeSet
- Hashtable
⊙ 정답
4번 Hashtable
※해설: 키와 값으로 구성된 객체는 Map이다. 키와 값이 나오면 자동으로 Map을 떠올리자.
⊙ 문제 3
다음 중 올바른 것은?
- Set은 중복된 원소를 가질 수 있다.
- Map은 중복된 키를 가질 수 있다.
- HashSet과 Hashtable은 다른 인터페이스의 구현 클래스이다.
- Vector는 ArrayList와 동일한 구조이지만 스레드에 안전하지 않다.
⊙ 정답
3번 HashSet과 Hashtable은 다른 인터페이스의 구현 클래스이다.
※해설 : Vector는 한 번에 하나의 스레드만 접근이 가능하 안전하다.
⊙ 문제 4
다음 코드를 실행하면 예외가 발생한다. 그 이유는?
public class List1Test {
public static void main(String[] args) {
String[] s = {"사과","바나나"};
List<String> list = Arrays.asList(s);
list.add("컵케익");
list.forEach(v -> System.out.println(v+" "));
}
}
⊙ 정답
일반적인 배열은 크기가 정해져 있기 때문에 크기를 넘어서 추가하면 오류가 발생한다.
※해설 : ArrayList는 크기가 가변적으로 변하는 선형 리스트이다. AraayList를 사용하여 오류를 해결하자. 아래 코드와 같다.
public class List1Test {
public static void main(String[] args) {
String[] s = {"사과","바나나"};
List<String> list = new ArrayList<>();
for(int i=0;i<s.length;i++)
list.add(s[i]);
list.add("컵케익");
list.forEach(v -> System.out.println(v+" "));
}
}
⊙ 문제 5
String 타입의 키와 정수 값이 있는 HashMap 객체를 생성하려고 한다. 다음 코드에서 밑줄 그은 부분에 적합한 내용은?
________ 변수 = new ________;
⊙ 정답
HashMap<String,Integer> 변수 = new HashMap<>();
⊙ 문제 6
다음 코드에서 ① 부분을 forEach() 메서드로 나타내시오.
public class Main {
public static void main(String[] args) {
Stack<Integer> si = new Stack<>();
si.add(10);
si.add(20);
si.add(1,100);
for(int value:si) // ①
System.out.println(value + " "); //
}
}
⊙ 정답
public class Main {
public static void main(String[] args) {
Stack<Integer> si = new Stack<>();
si.add(10);
si.add(20);
si.add(1,100);
si.stream().forEach(x-> System.out.println(x));
}
}
⊙ 문제 7
다음 코드에서 밑줄 그은 부분에 적합한 타입은?
__________ stream = Arrays.stream(new double[] {1.0, 2.0, 3.0});
⊙ 정답
DoubleStream
⊙ 문제 8
영한사전을 도전 과제와 다른 방식으로 만들려고 한다. 영어 단어용 키로 'eng', 한글 단어용 키로 'han'을 사용하며, 키에 대응하는 값을 추가한 후 영한사전을 출력하려고 한다. 다음은 2개의 단어를 포함하는 테스트 프로그램과 실행 결과이다. 밑줄 그은 부분에 적절한 코드를 채워 넣으시오.
public class List2Test {
public static void main(String[] args) {
List<__________> list = new ArrayList<>();
HashMap<__________> map;
map = new __________;
map.put("eng","boy");
map.put("han","머스마");
list.add(map);
map = new __________;
map.put("eng", "girl");
map.put("han", "가시나");
list.add(map);
list.forEach(m-> System.out.println(m.get("eng") + " = " + m.get("han")));
}
}
⊙ 정답
public class List2Test {
public static void main(String[] args) {
List<HashMap> list = new ArrayList<>();
HashMap<String, String> map;
map = new HashMap<>();
map.put("eng","boy");
map.put("han","머스마");
list.add(map);
map = new HashMap<>();
map.put("eng", "girl");
map.put("han", "가시나");
list.add(map);
list.forEach(m-> System.out.println(m.get("eng") + " = " + m.get("han")));
}
}
좋아요는 로그인하지 않아도 누를 수 있습니다!
'쉽게 배우는 자바 프로그래밍 > 연습문제' 카테고리의 다른 글
[쉽게 배우는 자바 프로그래밍] 14장 연습 문제(자바 GUI 기초) - JAVA[자바] (0) | 2021.06.08 |
---|---|
[쉽게 배우는 자바 프로그래밍] 12장 연습 문제(입출력 처리) - JAVA[자바] (2) | 2021.06.08 |
[쉽게 배우는 자바 프로그래밍] 9장 연습 문제(기본 패키지) - JAVA[자바] (0) | 2021.06.08 |
[쉽게 배우는 자바 프로그래밍] 7장 연습 문제(추상 클래스와 인터페이스) - JAVA[자바] (4) | 2021.06.08 |
[쉽게 배우는 자바 프로그래밍] 6장 연습 문제(상속) - JAVA[자바] (8) | 2021.06.08 |
- Total
- Today
- Yesterday
- C++
- 연습문제
- BFS
- java
- 쉽게배우는자바프로그래밍
- 백준
- 쉽게 배우는 자바 프로그래밍
- 쉽게배우는
- Web
- 운영체제
- 답
- 파이썬
- py
- 문자열
- Python
- 그리디
- 자바
- 우종정
- OS
- 해답
- JS
- 정리
- 프로그래머스
- 정답
- 풀이
- 구현
- 정렬
- CPP
- 자바스크립트
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |