일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 이노베이션캠프
- 이것이 자바다
- 스프링 입문강의
- JAVA 기초
- 이것이 자바다 확인문제
- 자료구조
- ArrayList 개념
- 자바의 정석 6장
- 웹개발 기본지식
- 챗GPT 명령어 작성팁
- Java
- 객체지향
- Til
- dfs
- ChatGPT
- 이것이 자바다 13장
- 인프런
- 백준
- 조건문과 반복문
- 이것이 자바다 연습문제
- Comparable과 Comparable
- 트리 지름 구하기
- 3장 확인문제
- 채팅GPT
- 자바
- 이노베이션캠프 동북
- 이노캠
- BFS
- 이노베이션 캠프
- 자바 언어 기초
- Today
- Total
기록공간
[JAVA] 이것이 자바다 5장 확인 문제 (참조 타입) 본문
1. 참조 타입에 대한 설명으로 틀린 것은 무엇입니까?
1) 참조 타입에는 배열,열거,클래스,인터페이스가 있다.
2) 참조 타입 변수의 메모리 생성 위치는 스택이다.
3) 참조 타입에서 ==, != 연산자는 객체 번지를 비교한다.
4) 참조 타입은 null값으로 초기화 할 수 없다.
답: 4) 참조 타입은 변수는 heap 영역에 객체를 참조하지 않는 뜻으로 null값을 초기화 할 수있다.
2. 자바에서 메모리 사용에 대한 설명으로 틀린 것은 무엇입니까?
1) 로컬 변수는 스택 영역에 생성되며 실행 블록이 끝나면 소멸된다.
2) 메소드 코드나 상수, 열거 상수는 정적(메소드) 영역에 생성된다.
3) 참조되지 않는 객체는 프로그램에서 직접 소멸 코드를 작성하는 것이 좋다.
4) 배열 및 객체는 힙 영역에 생성된다.
답: 3) 어떤 변수에서도 객체를 참조하지 않으면 해당 객체는 프로그램에서 사용할 수 없는 객체가 된다. 즉 힙 메모리에는 있지만, 위치 정보를 모르기 때문에 사용할 수 없게 된다. 자바는 이러한 객체를 쓰레기 취급하고, 쓰레기 수집기(Garbage Collector)를 실행시켜 자동으로 제거한다.
3. String 타입에 대한 설명으로 틀린 것은 무엇입니까?
1) String은 클래스이므로 참조 타입이다.
2) String 타입의 문자열 비교는 ==를 사용해야한다.
3) 동일한 문자열 리터럴을 저장하는 변수는 동일한 String 객체를 참조한다.
4) new String("문자열")은 문자열이 동일하더라도 다른 String 객체를 생성한다.
답: 2) String 타입의 문자열 비교는 equals 메소드를 사용해야한다. == 기호는, 참조 변수가 가리키는 객체가 같은지를 확인하는 기호이다.
4. 배열을 생성하는 방법으로 틀린 것은 무엇입니까?
1) int[] array = { 1,2,3};
2) int[] array; array = {1,2,3};
3) int[]array = new int[3];
4) int[][] array = new int[3][2];
답: 2) 배열 변수를 미리 선언한 후에는 값 목록을 변수에 대입할 수 없다. 배열 변수를 선언한 시점과 값 목록이 대입되는 시점이 다르다면, array = new int[] { 1, 2, 3} 처럼 new 타입[]을 중괄호 앞에 붙여주면 된다.
5. 배열의 기본 초기값에 대한 설명으로 틀린 것은 무엇입니까?
1) 정수 타입 배열 항목의 기본 초기값은 0이다.
2) 실수 타입 배열 항목의 기본 초기값은 0.0f 또는 0.0이다.
3) boolean 타입 배열 항목의 기본 초기값은 true이다.
4) 참조 타입 배열 항목의 기본 초기 값은 null이다.
답: 3) boolean 타입 배열 항목의 기본 초기값을 False이다.
6. 다음은 배열 길이를 출력하는 코드입니다. 실행 결과를 작성해보세요.
1
2
3
4
5
6
7
8
|
int[][] array = {
{95, 86},
{83, 92, 96},
{78, 83, 93, 87, 88}
};
System.out.println(array.length);
System.out.println(array[2].length);
|
cs |
답: 3
5
7. 주어진 배열 항목에서 최대값을 출력하는 코드를 작성해보세요.(for 문 이용).
1
|
int[] array = { 1, 5, 3, 8, 2};
|
cs |
1
2
3
4
5
6
7
8
9
10
11
12
13
|
public class Example {
public static void main(String[] args) {
int[] array = { 1, 5, 3, 8, 2};
int Max = 0;
for(int i=0; i<array.length; i++) {
if(Max < array[i])
{Max = array[i]}
}
}
}
|
cs |
8. 주어진 배열 항목의 전체 합과 평균을 구해 출력하는 코드를 작성해보세요.( 중첩 for문 이용 ).
1
2
3
4
5
|
int[][] array = {
{95, 86},
{83, 92, 96},
{78, 83, 93, 87, 88}
};
|
cs |
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
|
public class Example {
public static void main(String[] args) {
int[][] array = {
{95, 86},
{83,92,96},
{78, 83, 93, 87, 88}
};
int sum = 0;
double avg = 0;
int count=0;
for (int i=0; i<array.length; i++){
for(int j=0; j<array[i].length; j++)
{ sum += array[i][j]
count++; }
}
avg = (double) sum /count;
System.out.println("sum : " + sum);
System.out.println("avg : " + avg);
}
}
|
cs |
9. 학생들의 점수를 분석하는 프로그램을 만들려고 합니다. 키보드로부터 학생 수와 각 학생들의 점수를 입력받고 while 문과 Sccaner의 nextLine() 메소드를 이용해서 최고 점수 및 평균 점수를 출력하는 코드를 작성해보세요.
|
|
|
|
|
|
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
import java.util.Scanner;
public class Example {
public static void main(String[] args) {
boolean run = true;
int[] scores = null;
int studentNum;
Scanner sc = new Scanner(System.in);
while(run) {
System.out.println("----------------------------------------------------");
System.out.println("1.학생수 | 2.점수입력 | 3.점수리스트 | 4.분석 | 5.종료");
System.out.print("선택>");
int selectNo = sc.nextInt();
if(selectNo == 1) {
System.out.print("학생수>");
studentNum = sc.nextInt();
scores = new int[studentNum];
}
else if(selectNo == 2) {
for (int i=0; i<scores.length; i++)
{
System.out.print("scores["+i+"]>");
scores[i] = sc.nextInt();
}
}
else if(selectNo == 3) {
for(int i=0; i<scores.length; i++) {
System.out.println("scores["+i+"]: "+scores[i]);
}
}
else if(selectNo == 4) {
int Max=0;
int sum=0;
double avg;
for(int i=0; i<scores.length; i++) {
if(Max<scores[i]) {
Max = scores[i];
}
sum += scores[i];
}
avg = (double)sum/scores.length;
System.out.println("최고 점수: "+ Max);
System.out.println("평균 점수: "+ avg);
}
else if(selectNo == 5) {
run = false;
}
}
System.out.println("프로그램 종료");
sc.close();
}
}
}
|
cs |
'JAVA & Spring' 카테고리의 다른 글
[JAVA] 이것이 자바다 확인 문제 7장 (상속) (0) | 2023.01.03 |
---|---|
[JAVA] 이것이 자바다 확인문제 6장 (클래스) (0) | 2023.01.02 |
[JAVA] 이것이 자바다 확인 문제 4장 (조건문과 반복문) (0) | 2022.12.29 |
[JAVA] 이것이 자바다 확인 문제 3장 (연산자) (0) | 2022.12.29 |
[JAVA] 이것이 자바다 확인 문제 2장 (변수와 타입) (0) | 2022.12.29 |