그림으로 배우는 자바,
파트1: 입문!
배열
참고 사이트:
배열, 여러 값들을 하나로 묶기!
< 배열 >
: 타입의 일종으로
여러 데이터를 하나로 묶은 것
(책꽂이)
데이터들이 정리되지 않은 채
변수화만 되어있다면
사용하기 불편하기 때문에
=> 배열을 이용
- 배열생성방법 -
1) 중괄호로 감싸서
그 값들을 담아둔다
컴퓨터 메모리에는
아래와 같은 값들이 생겨나게 된다
2) 해당 값들에 대한 이름을 정해준다
(변수명)
ex) students
3) 타입을 정해준다
단순히 int 가 아닌
int 의 배열이므로
대괄호를 넣어서
배열임을 나타내준다
배열을 만들었으니
반복문을 통해 출력을 해본다
10명 학생의 점수를 출력할 것이기에
for문을 사용하면,
(students 에 i 번째 위치 값을 가져다 사용함)
i 가 0번 위치일 땐 88점
1번 위치일 땐 98점
9번위치 일땐 68점
첫 시작 위치가
0번 부터인 것을 주의하기
- 배열 특징 -
1) 모두 타입이 같아야 함
2) 순서가 있다
배열은 index 라는 순서가 존재
= 시작 위치가 0부터
배열의 생성과 사용
- 배열의 생성 -
중괄호 안에다가 원하는 값들을
콤마(,) 로 구분지어서
담은 상태로 배열을 만듦
만든 배열을 score 라는 변수에 대입함
타입만들 때 주의하기:
int 타입인데 배열이라는 것을 나타내기 위해서
[] 대괄호를 사용한다
문자열 배열도 마찬가지로 사용해준다
이렇게 만든 배열은 인덱스를 통해서 사용이 가능
인덱스: 배열의 위치 정보
배열과 반복문
- 총합을 구하는 예제 -
배열은 반복문이랑 같이 활용되기도 한다
1) 변수 생성
총합 변수 sum이 초기값으로 0을 담고있음
2) 반복문 사용해서 합 계산
i 가 0 일 때
scores 에 0 번째 인덱스인 88을 더해준다
sum에다가 더해줌
sum += scores[i];
그럼 sum 이 88 이되고
i ++되면
인덱스 1번인 76을 가리키게 된다
인덱스 1번인 76을
sum 에다가 넣으면
86 에다가 76이 더해지게 된다
86 + 76
이게 반복돼서 6번째 인덱스까지 오면
82까지 더해지게 된다
그래서 총합인 Sum 의 값은 509가 나오게 됨
- 반복문 사용하는 예제 -
1) 변수생성
월화수목금 시간이 담긴
runningMinutes 라는 배열이 만들어져있음
총합을 구하기 위한 sum 도 확인 가능
int sum = 0;
2) for 문을 사용해서 총합 계산
인덱스가 0 ~ 4까지니까
i는 0 부터 5보다 작을 때까지로 설정해준다
(5는 배열의 갯수로 보면 됨)
sum을 runningMinutes 의 i 번째 값을 더해서 넣어줌
반복해서 더해주다가 끝나면 반복문을 탈출해서
average를 계산하게 된다
3) 평균값 구하기
= 총합 / 개수
5로 나누면 소숫점 이하가 버려지기 때문에
5.0으로 나눠준다
< 배열의 길이 >
배열의 길이는 length 라는 키워드를 사용
courses 라는 문자열 배열의 길이는 3이다
courses라는 배열에다가
length라는 키워드를 사용하면
길이 3 을 구할 수 있음
length 키워드는 모든 배열을 순회할 때
즉, 반복문을 사용해서 순회할 때 활용 가능
length 라는 키워드를 사용해서 3을 넣지 않고도
직접 배열의 갯수를 파악하지 않더라도
자동적으로 파악할 수 있게 된다
벗어난 인덱스, 배열과 파라미터
배열의 타입이 int
길이가 5이기 때문에
마지막 인덱스의 번호는
5-1 (N-1) 이돼서
4가된다
배열의 범위를 벗어나지 않도록 주의해야한다
총 인덱스는 3 까지이다
인덱스는 3까지밖에 없는데
문제를 보면
names[-1] 하고
names[4]를 출력하고 있다
인덱스의 시작은 0 부터임
이렇게 3까지 출력해야 함
- 두 번째 예제 -
배열 또한 파라미터로 전달될 수 있음
average 메소드에서 파라미터 타입을
배열로 선언해줘야한다
'> 프로그래밍 언어 > JAVA' 카테고리의 다른 글
[그림으로 배우는 자바, part2]: 02 생성자 (0) | 2023.02.27 |
---|---|
[그림으로 배우는 자바, part2]: 01 객체지향 프로그래밍 (0) | 2023.02.26 |
[그림으로 배우는 자바, part1]: 07 반복 (0) | 2023.02.20 |
[그림으로 배우는 자바, part1]: 06 조건문 (0) | 2023.02.19 |
[그림으로 배우는 자바, part1]: 05 메소드 (0) | 2023.02.06 |