6월 7일 월요일 (20일차) - 배열만드는방법ㅇ

@_@·2021년 6월 5일
0

Java 1부

목록 보기
15/27

<목차>
(배열 만드는 방법)

ㅇ 배열 선언 후, 값 넣기

  • 배열 선언
  • 값 넣기

ㅇ 배열 선언과 동시에 값 넣기
ㅇ 배열 선언 퀴즈


  • 배열 만들다 보면 많은 에러를 보게 될 거야. 해결 방법 같이 뜨니까 그거 보면서 해결해



ㅇ 배열 만드는 방법 1 : 선언 후, 값 넣기



ㅇ 배열 선언하는 법

ㅇ 배열 만들 때 조건

  • 배열 안에는 동일한 자료형만 들어갈 수 있다.
  • 배열은 길이를 지정하고 나서 값을 넣어야 한다. (무조건 길이가 있어야 한다.)
  • 배열은 변수의 이름을 선언하는 곳이 아닌 값을 할당하는 부분에 길이를 넣어야 한다.


ㅇ 배열 선언

          ↓ 대괄호는 배열을 의미
데이터타입[ ] 변수명 = new 데이터타입[배열크기];
                      ↑ new는 새로 만들겠다.를 의미

예) int[] array = new int[5]; 
   변수명 array인 길이 5인 배열 생성
  • 오른쪽 먼저 (값을 할당)
    • new int[5]; : 5칸짜리 정수형 배열 새로 만들겠다
    • 이걸 보고 램이 자리를 창출
    • 인덱스는 0 부터
  • 그다음 왼쪽(변수 선언)에 대입연산자 : 이걸 array에 넣겠다.
    • array에 배열이 통째로 들어가는 게 아니라
    • array가 이 배열의 주소를 갖겠다!
  • 선언하는 부분과 값 할당하는 부분 나눠 쓰는 것 가능
    • int[] array; -> 배열 선언
    • array = new int[10];  -> 주소 할당 (?)
  • 콜 바이 밸류 : 기본 변수들은 변수 안에 값 자체가 들어갔었는데
    콜 바이 레퍼런스 : 레퍼런스 자료형은 주소를 가지고 있어


ㅇ 배열에 대한 레퍼런스 변수 선언의 다른 방법

  • 변수명 뒤에 넣어도 상관없긴 해. 이 변수는 배열이구나
  • 근데 보통 int 뒤에 넣어. 변수명 뒤에 넣으면 배열임을 맨 마지막에 알게 되니까




ㅇ 배열에 값 집어넣기

array[인덱스] =;
  • 만약 길이를 넘어가면?
    • 값을 넘었는데 빨간 줄은 안 나
    • 근데 실행하면 에러 나 : 메인에서 익셉션이 발생했다.
    • 배열은 주소를 가지고 있는 거라서 컴파일러가 실행했을 때, 길이가 얼마인지 모르는 상태에서 코드를 실행하기 시작
    • 실제로 타고 가봐야만 알 수 있는 거야 => 실행해봐야만 알아
    • array[5]=600; 을 보고 주소를 찾아서 5번째 가려고 하는 순간 공간이 없으니 에러



ㅇ 배열 만드는 방법 2 : 선언과 동시에 값 넣기

  • 이 전에는 배열 만들어 두고, 하나씩 값을 넣었어
  • 이번엔 배열을 만들면서 값을 넣는 방법
    • 중괄호 사용해서 바로 만들 수 있어
    • 꺼내거나 내용을 바꾸는 건 같아
  • 상황에 맞춰서 사용
    • 1번은 배열의 길이를 아는데 내용물은 모를 때
    • 2번은 길이와 내용물까지 다 알 때




(6월 8일)

ㅇ 올바른 배열 선언 찾기

: 다음 배열 선언 중에서 올바른 배열 선언 문장 찾기

1. ⓧ : 변수명 없어 / 서로 자료형 달라 / 소괄호가 아니라 대괄호
2. ⓧ : 오른쪽에 avg가 아니라 int 자료형을 써 줘야 해 ( 내가 자주 하는 실수 )
3. ⓧ : 왼쪽에 숫자 있으면 안 돼. 배열 선언에서 크기 정할 수 없다. / 4 뒤에 컴마하고 뒤에 비워져 있으면 안 돼
4. ⓧ : 앞의 배열 선언은 괜찮아. / 오른쪽에 길이가 없어
5. ⓧ : 맨 오른쪽에 소괄호 쓰면 안 돼
6. ⓞ
7. ⓞ
8. ⓧ : 배열 선언할 때는 크기를 줄 수 없다.



profile
STEP BY STEP

0개의 댓글