[Java] 배열

2023. 2. 9. 01:05·Java/Base
728x90
728x90

배열 (Array)

  - 연관된 데이터들을 하나의 변수에 모아서 통으로 관리하기 위해 사용하는 리스트 자료 구조

  - 여러 개의 데이터를 하나의 변수에 저장하기 위한 것

 

1
2
3
4
5
6
7
8
9
10
11
12
// 배열 선언 (메모리 영역에 공간만 할당함, 값 X)
값자료형[] 배열명 = new 값자료형[배열크기]; // ex) int[] arr = new int[3];
값자료형 배열명[] = new 값자료형[배열크기];
 
// 배열 값 초기화 (인덱스 연산 값 할당)
배열명[인덱스] = 값;
 
// 배열 선언과 초기화
값자료형[] 배열명 = {요소1, 요소2, 요소3, ...};
 
// 배열 값 확인
System.out.println(배열명[인덱스]);
cs

 

  - '배열'의 자료형과 '배열 값'의 자료형은 다름  ex) (배열 값 자료형 int) != (배열 자료형 int[])

      → 변수 자료형이나 반환 자료형 등을 입력할 때는 '배열'의 자료형을 입력해야 함 

  - 배열 선언 시, 자동으로 자료형의 기본값에 따라 초기화됨

      → int : 0 // double : 0.0 // boolean : false // 참조자료형(String 등) : null

 

  - 기본 자료형 배열은 선언과 동시에 배열 크기 만큼의 메모리가 할당됨

  - 객체 배열의 메모리 공간에는 heap 메모리에 대한 주소 값이 할당됨

 

// for 문을 활용한 객체 배열 생성 형식
for (int i = 0; i < 개수; i++) {
    배열명[i] = new 클래스명(매개변수);
}

#  인덱스

  - [] : 인덱스 연산자 

  - 배열 크기가 n일 때, 인덱스는 0부터 (n-1)까지 생성됨

#  배열의 길이 반환

  - 배열명.length

  - 배열의 길이와 실제 요소의 개수는 다를 수 있음

      → 값이 부여되지 않은 인덱스의 값에 접근하려고 하면 NullPointerException 에러 발생

 

 


이중 배열

1
2
3
4
5
6
7
8
9
// 선언과 동시에 초기화
String[][] 배열명 = {
    {값1, 값2, ...},
    {값1, 값2, ...},
    ...
};
 
// 배열 요소에 접근
배열명[i][j]
cs

 

 


기타 메모

- 배열 사용 시 런타임 에러가 잦으므로, null 값을 배제하는 방어적 코드 활용하기

 

320x100
반응형
저작자표시 비영리 변경금지 (새창열림)

'Java > Base' 카테고리의 다른 글

[Java] 상속 관계의 다형성과 참조형 형 변환  (0) 2023.02.09
[Java] 상속 관계와 메서드 오버라이드  (0) 2023.02.09
[Java] static 키워드  (0) 2023.02.09
[Java] this 키워드와 super 키워드  (0) 2023.02.08
[Java] 배열 - 도서 정보 등록·조회·삭제 프로그램 구현  (0) 2023.02.08
'Java/Base' 카테고리의 다른 글
  • [Java] 상속 관계의 다형성과 참조형 형 변환
  • [Java] 상속 관계와 메서드 오버라이드
  • [Java] static 키워드
  • [Java] this 키워드와 super 키워드
스응
스응
    반응형
    250x250
  • 스응
    이서영의 개발 블로그
    스응
  • 전체
    오늘
    어제
  • 글쓰기 관리
    • 분류 전체보기 (384)
      • Java (134)
        • Base (54)
        • Spring Boot (37)
        • JSP (16)
        • Swing (GUI) (20)
        • Design Pattern (7)
      • C# (13)
      • PHP (18)
      • SQL (27)
      • Vue.js (9)
      • Tailwind CSS (4)
      • TypeScript (7)
      • HTML & CSS (27)
      • JavaScript (26)
      • jQuery (10)
      • Android (3)
      • - - - - - - - - - - - - - - (0)
      • Hotkeys (5)
      • CS (30)
      • etc. (13)
      • Error Note (16)
      • Team Project (24)
        • Airlines Web Project (12)
        • University Web Project (6)
        • Strikers 1945 GUI Project (6)
      • My Project (18)
        • Library Web Project (8)
        • Pet Shopping Mall GUI Project (10)
  • 블로그 메뉴

    • Home
    • Write
  • 링크

    • 깃허브
  • 공지사항

  • 인기 글

  • 태그

    vuejs
    zapier
    SpringBoot
    php
    errorNote
    Wordpress
    jsp
    tailwindcss
    SEO
    typeScript
    git
    Hotkeys
    면접
    오블완
    C#
    개발일지
    java
    Android
    Codeigniter
    SWAGGER
    SQL
    HTML
    Swing
    js
    jQuery
    티스토리챌린지
    http
    CSS
    cs
  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.0
스응
[Java] 배열
상단으로

티스토리툴바