[JAVA] 04. Array (배열)

2017. 7. 31. 23:23·JAVA/개념
728x90
반응형

1.1 배열(array) 이란?

- 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것

- 많은 양의 값(데이터)을 다룰 때 유용하다.

- 배열의 각 요소는 서로 연속적이다.......

int score1=0, scrore2=0, score3=0, score
1
int[] score = new int[5]; //5개의 int 값을 저장할 수 있는 배열을 생성한다.
cs
4=0, score5=0;
 

 

1.2 배열 선언과 생성(1)

- 타입 또는 변수이름 뒤에 대괄호[]를 붙여서 배열을 선언한다.

 선언 방법  선언 예:
 타입[] 변수이름;  int[] score;
 String[] name;
 타입 변수이름[];  int score[];
 String name[];

 

1.2 배열 선언과 생성(2)

- 배열을 선언한다고 해서 값을 저장할 공간이 생성되는 것이 아니라

 배열을 다루는데 필요한 변수가 생성된다.

int[] score; //배열을 선언한다.
score = new int[5]; //배열을 생성한다.
 

 

1.3 배열의 초기화

- 생성된 배열에 처음으로 값을 저장하는 것

int[] score = new int[5];    //크기가 5인 int형 배열을 생성한다.
score[0] = 100;
score[1] = 90;
score[2] = 80;
score[3] = 70;
score[4] = 60;

int[] score = {100, 90, 80, 70, 60};        //1번
int[] score = new int[]{100, 90, 80, 70, 60};    //2번

int[] score;
score = {100, 90, 80,70, 60};    //에러 발생!

int[] score;
score = new int[]{100, 90, 80, 70, 60};    //OK

int add(int[] arr)

int result = add({100, 90, 80, 70, 60})    //에러 발생!
int result = add(new int[]{100, 90, 80, 70, 60}); //OK
 

 

1.4 배열의 활용

▶ 배열에 값을 저장하고 읽어오기

score[3] = 100; //배열 score의 4번째 요소에 100을 저장한ㄷ.
int value = score[3]; //배열 score의 4번째 요소에 저장된 값을 읽어서 value에 저장.
 

▶ '배열이름.length'는 배열의 크기를 알려준다.

int[] score = {100, 90, 80, 70, 60, 50}
for(int i=0; i<6; i++){
    System.out.println(score[i]);
}
for(int i=0; i<score.length; i++){
    System.out.println(score[i]);
}
 

 

1.5 다차원 배열의 선언과 생성

- '[]'의 개수가 차원의 수를 의미한다.

int[][] score = {
                    [100, 100, 100],
                    [20, 20, 20],
                    [30, 30, 30],
                    [40, 40, 40],
                    [50, 50, 50],
};
 

 

1.6 가변배열

- 다차원 배열에서 마지막 차수의 크기를 지정하지 않고 각각 다르게 지정.

int[][] score = {
                    [100, 100, 100],
                    [20, 20],
                    [30],
                    [40, 40, 40, 40],
                    [50, 50, 50],
};

 

1.7 배열의 복사

▶ for문을 이용한 배열의 복사

int[] number = {1,2,3,4,5};
int[] newNumber = new int[10];

for(int i=0; i<number.length; i++){
    newNumber[i] = number[i]; //배열 number의 값을 newNumber에 저장한다.
}
 

▶ System.arraycopy()를 이용한 배열의 복사

System.arraycopy(arr1, 0, arr2, arr1.length);

arr1[0]에서 arr2[0]으로 arr1.length개의 데이터를 복사.
 

728x90
반응형

'JAVA > 개념' 카테고리의 다른 글

[JAVA] 06. OOP2(객체 지향 언어)  (0) 2017.08.01
[JAVA] 05. OOP 1(객체 지향 언어)  (0) 2017.08.01
[JAVA] 03. 조건문, 반복문 (Control Statement)  (0) 2017.07.30
[JAVA] 02. 연산자(Operator)  (0) 2017.07.28
[JAVA] 01. 변수(Variable)  (1) 2017.07.28
'JAVA/개념' 카테고리의 다른 글
  • [JAVA] 06. OOP2(객체 지향 언어)
  • [JAVA] 05. OOP 1(객체 지향 언어)
  • [JAVA] 03. 조건문, 반복문 (Control Statement)
  • [JAVA] 02. 연산자(Operator)
밍글링글링
밍글링글링
mingling - 밍글링, 밍글밍글링. 코드와 어우러지다. IT/ 프로그래밍/소스
    반응형
    250x250
  • 밍글링글링
    mingling
    밍글링글링
  • 전체
    오늘
    어제
    • 밍글링글링 (407) N
      • Flutter (2)
      • 일상생활 (8)
        • 리뷰 (1)
        • 생활정보 (4)
        • 맛집 (0)
        • 여행 (0)
        • 모든정보 (3)
      • JAVA (126)
        • 개념 (6)
        • 예제 (115)
        • Exception (2)
      • C (1)
        • C (1)
        • C++ (0)
        • C# (0)
      • JS (29)
        • JavaScript (18)
        • JQuery (5)
        • AJax (0)
        • NODE.JS (6)
        • Angular.JS 2.0 (0)
      • WEB (87)
        • HTML (6)
        • CSS (61)
        • JSP (20)
        • JSTL (0)
      • FrameWork (8)
        • Spring (8)
        • BootStrap (0)
        • MyBATIS (0)
        • JUnit (0)
      • 외부 라이브러리 (5)
      • 공유 소스 관리 (5)
        • Git (5)
        • SVN (0)
      • 빅데이터 프로그래밍 (37)
        • Python (37)
        • R Programming (0)
      • DB (7)
        • ORACLE (0)
        • MySql (6)
      • Development Tools (7)
        • StarUML (0)
        • eXERD (0)
        • Eclipse (4)
      • SKILL (6)
        • Migration (0)
        • Security (6)
      • MicroSoft (0)
        • Excel (0)
        • Word (0)
      • Android (0)
      • Server (21)
        • Ubuntu (5)
        • Linux (15)
      • IOS (0)
      • XML (0)
      • 미디어 (0)
      • 공지사항 (3)
      • NETWORK (1)
      • 게임 (4)
        • 피파 (1)
        • 리니지M (0)
        • 배틀그라운드 (1)
        • 듀랑고 (2)
      • 세상 이슈 (6)
      • 일렉트론 (0)
      • 대회 소식 (4)
      • 업무 (2)
      • Express, Vue (6)
      • docker (11)
      • svelte (3)
      • 블록체인 (1)
      • IT (10) N
      • Rust (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    svelte
    Java Array
    rust linux
    Extension Bisect
    SSL 인증서
    nginx ssl 적용
    티스토리 자동화
    css transition
    리눅스 설치
    jsp include
    servlet class
    자바 객체 지향
    React Compiler
    css float
    nginx ssl 설정
    jsp parameter
    vue cli
    자바 생성자
    VS Code 팁
    mysql db
    자바 for문
    docker
    러스트
    lang rust
    브라우저 자동화
    클론코딩
    nginx
    spring java
    Node
    자바 클래스
    Rust lang
    vscode
    proxy pass
    gitlab 설치
    css block
    java casting
    API 설계
    ubuntu
    css perspective
    오류
    에디터 팁
    css tb
    프런트엔드
    vue 설치
    자바 배열
    ssl 인증서 발급
    자바 exception
    css table
    css list
    AI 코딩 에이전트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
밍글링글링
[JAVA] 04. Array (배열)
상단으로

티스토리툴바