상수의 사용
변수에 상수를 대입하는 것과 변수에 배열을 대입하는 것을 비유를 통해 알아보자.
1학년 1반에 16명에 학생들이 있다. ( * 반장)
이름 : 박자바 |
|||
* 이름: 이클립 |
|||
이름 : 김코딩 |
1반 전체를 프로그램이라고 했을때, 박자바/ 김코딩은 ' 상수' 이며, 이클립은 반장인 '변수'이다.
반장에 이름을 누군지 몰라도, " 반장 인사시켜" 라는 식으로 지시를 내릴 수 있다.
7-1. 배열이란 ?
자바학교 | |||||
1학년 | 2학년 | 3학년 | |||
1반 | 2반 | 1반 | 2반 | 1반 | 2반 |
1. 박자바 2. 김코딩 . . |
1. 박이클 2. 김립스 . . |
1. 박생활 2. 김코딩 . . |
1. 박비전 2. 김공자 . . |
1. 박부트 2. 김캠프 . . |
1. 박기록 2. 김공부 . . |
학교에 10,000이 되는 학생을 관리 할때, 반이라는 개념이 없이 관리하게 되면 어려운 부분이 있어 반을 나눠 관리를 한다.
박자바/ 김코딩 등등에 학생이 상담이 필요한 경우한명씩 호명을 하는게 아니라
"1학년 1반 학생들 상담 받으러 오세요." 라고 하면 된다.
즉
1학년 1반 = {'박자바',------'김코딩'}
1학년 1반은 변수고, 박자바 김코딩 외 50명의 학생은 이 변수에 소속된 상수가 되는 것이다.
∴ 배열은 연관된 데이터를 모아서 관리하기 위해서 사용하는 데이터 타입이다.
그렇다면 실제 쓰여지는 예제를 보면,

String [ ] classGroup =
: classGroup이라는 변수에는 문자열(String) 에 구성되어 있는 배열 [ ]이 담긴다라는 뜻이다.
0 , 1 , 2, 3 = index(색인)
박자바 , 김코딩, 하비전, 강공자 = element (원소)
0 = 박자바
1 = 김코딩
2 = 하비전
3 = 강공자가 출력된다.
컴퓨터는 0 , 1로 구성되어 있길래 박자바를 노출하고 싶다면 0부터 시작하면 된다.

String [ ] classGroup = new String [5]
ㄴ classGroup에 담겨있는 배열은 문자열이고 5개의 값을 가질 수 있라는 의미이다.
다시 정리해보면, classGroup[1]은 김코딩이고 여기서 1은 김코딩을 식별하는 인덱스이다.
또한 이 배열에 담을 수 있는 원소의 개수를 length라고 하며,
배열에 담긴 원소의 숫자가 아니라 배열을 선언할 때 지정한 배열이 담을 수 있는 크기를 말한다.
< length : 5 >
박자바 | 김코딩 | 하비전 | 강공자 | e l ement |
0 | 1 | 2 | 3 | i ndex |
1) 배열 선언하기
자료형 [ ] 배열이름 = new 자료형 [개수];
int [] arr = new int[10];
* 배열은 몇개를 쓸지 선언을 하고 사용해야한다.*
2) 배열 초기화하기
배열은 선언과 동시에 초기과할 수 있으며 초기화할때는 배열의 개수를 명시하지 않아도 된다.
int [] arr = new int [] {1,2,3} // 개수는 생략함
int [] arr = new int [3] {1,2,3} // 오류발생
int [] arr = {1,2,3} // int 형 요수가 3개인 배열 생략
3) 배열사용하기
[ ] : 배열의 위치를 지정하여 자료를 가져오며 모든 배열의 순서는 0부터 시작
n개 배열은 0부터 n-1 위치까지 자료만 존재
7-2. 반복문과 배열
위에서 알아 본 1학년1반 학생들이 상담을 받는다고 했을때 다음과 같은 절차가 함축되어 있다.
1. 1반 학생들을 번호순으로 정렬해서 줄을 세운다.
2. 상담 받은 학생의 숫자를 기록한다.
3. 대기중인 학생과 상담을한다.
4. 상담받은 학생의 수를 증가시킨다.
5. 총원보다 상담받은 학생의 수가 적다면 3번 절차로 돌아간다
총원과 상담받은 학생의 수가 같다면 상담을 종료하고 업무를 계속한다.

반복문 + 배열 결합을 할 수 있으며, 위에 코드를 보면
반복문을 이용해서 배열 classGroup의 내용을 하나씩 꺼낸 후 상담 결과를 화면에 출력하고 있다.
우리는 classGroup 배열에 담겨 있는 값을 하나씩 꺼내서 처리하고 싶은데, 그렇게 하기위해서는
배열에 가지고 있는 값의 수( i < classGroup.length ;) 를 알아야하며, 반복되기 위한 int = i 값을 지정해야하고 또 반복이 종료하기 위해서 i++값 조건을 실행하는것은 매우 귀찮은 일이다.
여기서 우리는 while에서 for가 나온 것 처럼 반복+배열이 같이 자주 쓰여지면서 나타난 for -each문을 알아보자.
7-3. for - each문이란?

기존에 classGroups를 이용해서 i로 초기화시킨 후 귀찮은 작업으로 반복 + 배열을 이용했다면,
그게 아닌 for(String e : classGroup)에
classGroup 담겨 있는 값을 반복문이 동작할때마다 하나씩 꺼내서 변수 e에 담아서 나타나게끔 약속이 되어 있다.
7-4. 오류

배열에 인덱스가 3까지만 존재하는데 4를 불러오라고 하였기 때분에 오류가 발생한다.
(이것은 오류가 아니라 예외지만, 예외를 배우지 않았기에 오류라고 표현한다.)

3개만 데이터가 있다고 지정했으나, 총 4개의 배열을 가지려고 하니 오류가 발생한다.
'ON > 국비 전 독학' 카테고리의 다른 글
[복습] 반복문으로 구구단을 만들자 (0) | 2023.03.21 |
---|---|
8. 메소드란 ? (0) | 2023.03.17 |
05. 조건문이란? (0) | 2023.03.11 |
04. 연산자란 ? (0) | 2023.03.10 |
03.데이터 크기 및 타입 (0) | 2023.03.09 |
상수의 사용
변수에 상수를 대입하는 것과 변수에 배열을 대입하는 것을 비유를 통해 알아보자.
1학년 1반에 16명에 학생들이 있다. ( * 반장)
이름 : 박자바 |
|||
* 이름: 이클립 |
|||
이름 : 김코딩 |
1반 전체를 프로그램이라고 했을때, 박자바/ 김코딩은 ' 상수' 이며, 이클립은 반장인 '변수'이다.
반장에 이름을 누군지 몰라도, " 반장 인사시켜" 라는 식으로 지시를 내릴 수 있다.
7-1. 배열이란 ?
자바학교 | |||||
1학년 | 2학년 | 3학년 | |||
1반 | 2반 | 1반 | 2반 | 1반 | 2반 |
1. 박자바 2. 김코딩 . . |
1. 박이클 2. 김립스 . . |
1. 박생활 2. 김코딩 . . |
1. 박비전 2. 김공자 . . |
1. 박부트 2. 김캠프 . . |
1. 박기록 2. 김공부 . . |
학교에 10,000이 되는 학생을 관리 할때, 반이라는 개념이 없이 관리하게 되면 어려운 부분이 있어 반을 나눠 관리를 한다.
박자바/ 김코딩 등등에 학생이 상담이 필요한 경우한명씩 호명을 하는게 아니라
"1학년 1반 학생들 상담 받으러 오세요." 라고 하면 된다.
즉
1학년 1반 = {'박자바',------'김코딩'}
1학년 1반은 변수고, 박자바 김코딩 외 50명의 학생은 이 변수에 소속된 상수가 되는 것이다.
∴ 배열은 연관된 데이터를 모아서 관리하기 위해서 사용하는 데이터 타입이다.
그렇다면 실제 쓰여지는 예제를 보면,

String [ ] classGroup =
: classGroup이라는 변수에는 문자열(String) 에 구성되어 있는 배열 [ ]이 담긴다라는 뜻이다.
0 , 1 , 2, 3 = index(색인)
박자바 , 김코딩, 하비전, 강공자 = element (원소)
0 = 박자바
1 = 김코딩
2 = 하비전
3 = 강공자가 출력된다.
컴퓨터는 0 , 1로 구성되어 있길래 박자바를 노출하고 싶다면 0부터 시작하면 된다.

String [ ] classGroup = new String [5]
ㄴ classGroup에 담겨있는 배열은 문자열이고 5개의 값을 가질 수 있라는 의미이다.
다시 정리해보면, classGroup[1]은 김코딩이고 여기서 1은 김코딩을 식별하는 인덱스이다.
또한 이 배열에 담을 수 있는 원소의 개수를 length라고 하며,
배열에 담긴 원소의 숫자가 아니라 배열을 선언할 때 지정한 배열이 담을 수 있는 크기를 말한다.
< length : 5 >
박자바 | 김코딩 | 하비전 | 강공자 | e l ement |
0 | 1 | 2 | 3 | i ndex |
1) 배열 선언하기
자료형 [ ] 배열이름 = new 자료형 [개수];
int [] arr = new int[10];
* 배열은 몇개를 쓸지 선언을 하고 사용해야한다.*
2) 배열 초기화하기
배열은 선언과 동시에 초기과할 수 있으며 초기화할때는 배열의 개수를 명시하지 않아도 된다.
int [] arr = new int [] {1,2,3} // 개수는 생략함
int [] arr = new int [3] {1,2,3} // 오류발생
int [] arr = {1,2,3} // int 형 요수가 3개인 배열 생략
3) 배열사용하기
[ ] : 배열의 위치를 지정하여 자료를 가져오며 모든 배열의 순서는 0부터 시작
n개 배열은 0부터 n-1 위치까지 자료만 존재
7-2. 반복문과 배열
위에서 알아 본 1학년1반 학생들이 상담을 받는다고 했을때 다음과 같은 절차가 함축되어 있다.
1. 1반 학생들을 번호순으로 정렬해서 줄을 세운다.
2. 상담 받은 학생의 숫자를 기록한다.
3. 대기중인 학생과 상담을한다.
4. 상담받은 학생의 수를 증가시킨다.
5. 총원보다 상담받은 학생의 수가 적다면 3번 절차로 돌아간다
총원과 상담받은 학생의 수가 같다면 상담을 종료하고 업무를 계속한다.

반복문 + 배열 결합을 할 수 있으며, 위에 코드를 보면
반복문을 이용해서 배열 classGroup의 내용을 하나씩 꺼낸 후 상담 결과를 화면에 출력하고 있다.
우리는 classGroup 배열에 담겨 있는 값을 하나씩 꺼내서 처리하고 싶은데, 그렇게 하기위해서는
배열에 가지고 있는 값의 수( i < classGroup.length ;) 를 알아야하며, 반복되기 위한 int = i 값을 지정해야하고 또 반복이 종료하기 위해서 i++값 조건을 실행하는것은 매우 귀찮은 일이다.
여기서 우리는 while에서 for가 나온 것 처럼 반복+배열이 같이 자주 쓰여지면서 나타난 for -each문을 알아보자.
7-3. for - each문이란?

기존에 classGroups를 이용해서 i로 초기화시킨 후 귀찮은 작업으로 반복 + 배열을 이용했다면,
그게 아닌 for(String e : classGroup)에
classGroup 담겨 있는 값을 반복문이 동작할때마다 하나씩 꺼내서 변수 e에 담아서 나타나게끔 약속이 되어 있다.
7-4. 오류

배열에 인덱스가 3까지만 존재하는데 4를 불러오라고 하였기 때분에 오류가 발생한다.
(이것은 오류가 아니라 예외지만, 예외를 배우지 않았기에 오류라고 표현한다.)

3개만 데이터가 있다고 지정했으나, 총 4개의 배열을 가지려고 하니 오류가 발생한다.
'ON > 국비 전 독학' 카테고리의 다른 글
[복습] 반복문으로 구구단을 만들자 (0) | 2023.03.21 |
---|---|
8. 메소드란 ? (0) | 2023.03.17 |
05. 조건문이란? (0) | 2023.03.11 |
04. 연산자란 ? (0) | 2023.03.10 |
03.데이터 크기 및 타입 (0) | 2023.03.09 |