일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 변수초기화
- comparator
- IBatis CRUD
- 동적 문자열
- ListSort
- 동적 데이터
- I/O
- 객체
- 변수선언
- enum
- 고급자바
- 동적 버튼 생성
- io
- IBatis 게시판
- 계산기
- oclick 동적
- 기초
- 변수
- Comparable
- Thread
- 연산자
- 객체지향
- 쓰레드
- 코딩
- 조건문
- iBatis
- 자바
- MAP
- 동적 버튼 onclick
- Today
- Total
Jun's Blog
[Java] 배열 (Array) 본문
1. 배열 (array)이란?
- 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것.
2. 배열의 선언
- 원하는 타입의 변수를 선언하고 변수 또는 타입에 배열임을 의미하는 []를 붙이면 된다.
변수타입[] 변수명; int[] arr; 참조형은 주소를 저장함
변수타입 변수명[]; int arr[];
ex) int[] arr = new int[]{1,2,3,4,5};
int[] arr = {1,2,3,4,5}; // 선언 및 생성이 동시에 될 때
=> 둘 다 같은 의미로 쓰인다
3. 배열의 생성
- 배열을 선언한 다음에는 배열을 생성해야 한다.
- 배열을 생성하기 위해서는 연산자 'new'와 함께 배열의 타입과 크기를 지정해 주면 된다.
ex) 변수명 = new 변수타입[3];
변수명 = new 변수타입[]{10, 20, 30, 40};
4. 배열의 초기화
- 배열은 생성과 동시에 자동적으로 자신의 타입에 해당하는 기본값으로 초기화된다.
ex1) int형 값을 4개 저장할 수 있는 변수 arr을 선언 및 생성하시오
int[] arr = new int[4]; // {0,0,0,0}
System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]);
System.out.println(arr[3]);
// 시작 0 ,끝 3, 증가량 1
for (int num = 0; num < arr.length; num++){
System.out.println(arr[num]);
}
// 출력
0
0
0
0
ex2) 0번 index(방)에 10, 1번 index에 20, 2번 index에 30, 3번 인덱스에 40
ex3) arr의 모든 방의 합계를 구하라
int[] arr = new int[]{1,3,5,7,9}; // =(같다) int[] arr = {1,3,5,7,9};
int sum = 0;
// 시작 : 0, 끝 : 4, 증가량 : 1
// 반복구문 : sum+=arr[num];
for (int num = 0; num < arr.length; num++){
sum += arr[num];
}
System.out.println(sum);
ex4)
1. 6과목의 점수(정수)를 저장할 수 있는 변수 score를 선언 및 생성하시오.
int[] score = new int[6];
2. score 각 방을 0~100 사이의 임의의 정수 값으로 변경하시오
for(int num = 0; num < score.length; num++){
score[num] = (int)(Math.random()*101);
}
3. score의 각 방의 값을 출력하여라.
for(int num = 0; num < score.length; num++){
System.out.println(score[num]);
}
4. 방의 합계를 구하시오
int sum = 0;
for(int num = 0; num < score.length; num++){
sum += score[num];
}
System.out.println(sum);
5. score 값들의 평균. 단 소수점 3번째 자리에서 두 번째 자리까지 반올림해서 표현하시오
float avg = 0f;
avg = (float)sum/score.length;
System.out.println((int)(avg*100+0.5)/100f);
6. score의 값들 중 최댓값과 최솟값을 구하시오.
(단, 최댓값을 0으로 초기화하지 말고 최솟값을 100으로 초기화하지 말 것)
int max = score[0];
int min = score[0];
for(int num = 1; num < score.length; num++){
if(score[num] < max){
max = score[num];
}
if(min < score[num]){
min = score[num];
}
}
System.out.println(max);
System.out.println(min);
'Java' 카테고리의 다른 글
[Java] 객체지향 프로그래밍 - 1 (0) | 2020.09.26 |
---|---|
[Java] 조건문, 반복문 (예제 풀이 및 해답) (0) | 2020.09.18 |
[Java] 반복문 (for문, while문, do-while문) <계산기> (0) | 2020.09.16 |
[Java] 조건문 (if문, switch문) <학점계산기> (0) | 2020.09.12 |
[Java] 연산자(간단 문제) (0) | 2020.09.07 |