배열(Array)

나르·2021년 1월 26일
0
post-thumbnail
  1. 같은 데이터형의 여러변수를 하나로 묶어서 관리하는 기능
      ==========   ======= 여러개의 변수를 한개의 이름 통일 (구분:인덱스)
                   arr[0],arr[1]
                      ===
                      인덱스 번호 (인덱스번호는 0부터 시작)
                      *** 배열의 인덱스번호를 초과하면 에러발생 
                          ArrayIndexOutOfBoundsException
 
	 = 정수,실수,문자열의 연속적인 메모리 구조
 	 = 단점 : 크기 고정 
     		==> 프로그램상에서 변경할 수는 있다: 가변(컬렉션 클래스)
                                        
  
   2. 배열 선언 
   
   데이터형[] 배열명; , 데이터형 배열명[];   
    
    
    예)
         int[][] arr : 자바 => int[] arr[]
         int arr[][] : c언어
         int arr[,] : c#
    
   3. 배열초기화 ==> 배열,클래스 ==> 저장되는 위치 (heap) , 일반 데이터(스택)
 	1) 생성과 동시에 초기화 
         int[] arr={10,20,30,40,50};
         
  	2) 생성하고 나중에 값을 채우는 방법 
         int[] arr=new int[크기]; ==> new를 사용하면 자동으로 0
 	           ===
    	        동적메모리 할당 (메모리 생성)  ==> malloc(),free()
                                                
                arr[0]  arr[1] arr[2] arr[3] arr[4] new      
===arr===       =================================
279f2327         100      0      0      0     500
=========      |=======|======|======|======|======
            279f2327
             
             arr[0]  arr[1] arr[2] arr[3] arr[4] => 일반변수와 동일하게 사용
             
             ==> 읽기 , 쓰기 
             쓰기 => arr[0]=100
                    arr[4]=500
             읽기 => System.out.println(arr[0])
             
             예)
                 int[] arr=new int[5]; 저장 갯수를 알고 있는 경우
                 int[] arr;
                 arr=new int[5];  =========> 메모리에 연속적으로 20byte를 만들어 달라 
                            === 저장할 갯수 (저장갯수를 알수 없는 경우)
                 arr[0] 
                    === 데이터가 저장된 위치 (배열은 0부터 시작)
                    
       int[] score=new int[5];
       =====           ======
       
                      score[0]
                           ===
                           배열의 인덱스(배열첨자)
       ===score===   =======================================
                        0       0      0       0       0
       ===========   =======================================
                     =======
                     배열의 요소
profile
💻 + ☕ = </>

0개의 댓글