ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [JAVA] 배열(array) 대박
    카테고리 없음 2020. 3. 1. 16:31

    >


    배열이란? -자료가연속해서자기열된자료구조를스토리한다(cf자료구조(data structure)는? 데이터를 어떻게 관리해야 하는지 공부하는 학문)


    배열선언과초기화-배열을사용하려면먼저배열을선언해야한다,자료형과함께선언.


    - 새로운 예약어: 배열을 새로 만들어라!


    -배열을 선언하면 선언된 형태로 배열의 길이에 의해서 메모리 할당 ​ 배열 초기화-자바에서는 배열 선언 때, 그와 동시에 각 요소의 값이 초기화됨과 상수는 0, 실수는 0.0객체의 배열은 null로 초기화 선언과 함께 특정 값으로 초기화도 가능.


    배열선언과 초기화를 동시에 진행하지 않으면 새로운 자료형[ ]을 생략할 수 없다.


    배열법


    []은 인덱스 연산자는 배열 요소가 저장된 메모리 위치를 챠쯔옴쵸은눙의 역할-배열 순서는 0부터 시작.


    - 배열 이름에 .length 속성을 쓰면 배열 길이를 뒤집는다.


    (코딩) 배열을 이용하여 알파벳과 아스키 코드의 값(정수)을 출력한다.


    >


    ​​


    배열복사


    src:복사하는 배열 이름 srcPos:복사하는 배열의 1의 위치 dest:복사해서 붙일 대상 배열 이름 destPos:복사한 대상 배열에 바탕을 시작하는 첫번째 위치 Length:scr에서 dest에서 자료를 복사하는 요소 수


    >


    * 단, 복사할 대상 배열의 전체 길이가 복사할 요소 수보다 작을 경우 오류가 발생한다.


    >


    >


    얕은 복사(shallow copy)와 깊은 복사(deep copy) 얕은 복사-System.arraycopy 등을 통해 배열을 복사하는 경우 인스턴스를 따로 발생하는 것이 아니라 기존의 인스턴스 주소 값만 복사하고 결론적으로 복사한 배열과 기존 배열이 같은 인스턴스를 가리킨다.- 기존 배열 또는 복사한 배열의 인스턴스 값이 변경되면 두 배열이 모두 영향을 받아 변경된다.깊은 복사 - 얕은 복사(shallow copy)와 달리 기존의 배열과 복사한 배열의 각 요소가 다른 인스턴스를 가리킨다. 따라서 기존의 배열 혹은 복사한 배열의 요소 값이 변경되어도 영향을 받지 않는다.- 깊은 복사방법 : 직접 인스턴스를 만들고 그 값을 복사해야 합니다.


    Array List 클래스


    ArrayList 클래스는 배열을 좀 더 편리하게 사용할 목적. 기존 배열과 달리 배열 모두 길이를 지정하지 않고 add() 메서드를 통해 생성자만 호출한다.​


    댓글

Designed by Tistory.