본문 바로가기
개발 Story/1. 자바 기초 다지기

자바 기초_6 배열

by niee 2015. 8. 19.
반응형

1.배열(Array)

-동질 자료형의 집합체

*******************************************************************

ex)

int a,b,c,d,r;

같은형의 변수를 아래같이 표현할수있음

int a[]=new int[5];

=>아래와 같은 형식으로 저장


 a[0] 

  a[1] 

  a[2]

 a[3]

 a[4]


=>일괄처리에 편리함

 int z[] = {10,20,30};

 for (int i=0;i<z.length;i++)

 {

  System.out.println("Array["+i+"]="+z[i]);  

   

 }//for

*******************************************************************

-배열은 new연산자를 사용하여 생성한다.

-new : heap영역에 클래스 객체를 생성하는 연산자.

-배열 길이는 배열이름.length 로 구한다

-배열 선언 형식

*****************************************************************

ex) 

자료형 [] 배열명 = new 자료형[배열길이];

=>int [] a=new int[3];  

  int a []=new int[3];

자료형 [] 배열명 ={ 초기값 };

=>int a[]={10,20,30};

  a[0]=10; a[1]=20; a[2]=30; 으로 저장됨

=> a=stack에 저장되어 a[0],a[1],a[2] 의 값이 저장된 heap영역의

  주소를 저장

     


 stak영역 a


 heap영역 (length )

 

 a[0]

 10

  a[1] 

 20

  a[2]

 30


******************************************************************

-배열은 자동 초기화가됨

-배열에 배열을 지정가능

=>int A[]=new int[3];

  int b[]=a;


배열관련 유틸 함수들 

1.배열의 복사

System.arraycopy(scrArray,i,desArray,j,n);

scrArray 복사할 배열변수

i        복사할 배열의 위치

desArray 복사를 넣을 배열변수

j        복사를 넣을 배열의위치

n        복사할 배열의 갯수

*************************************************************

ex)

int a[]={1,2,3,4,5,6};

int b[]=new int [a.length];

System.arraycopy(a,2,b,3,2);

//a의 a[2]번째부터 두개를 b[3]번째부터 체워넣어라

//결과 = a= 1 2 3 4 5 6

         b= 0 0 0 3 4 0

************************************************************

2.문자열을 문자배열로 복사

-문자열의 각문자를 배열요소로 분해

-문자열 변수.getChars(srcBegin,srcEnd,destArray,destBegin);

srcBegin 시작문자위치

srcEnd    끝문자위치

destArray 복사저장될 문자배열

destBegin 저장될 문자배열의 복사 시작위치

***************************************************************

ex)

String str="GoodMorning";

char a[]=new char[str.length()];

str.getChars(2,10,a,1);

 for(int i=0;i<a.length;i++)

 {

  System.out.println(i +"  "+ a[i]);

 }//for

/*

str의 저장형식 = " G o o d M o r n i n  g "  

                   0 1 2 3 4 5 6 7 8 9 10

str의 2번째 글자부터 10번째 "직전" 글짜까지 복사해서

char배열변수 a의 a[1]번부터 복사해 넣어라

*/

//결과 = o d M o r n i n

**************************************************************


이건 기존 블로그에서 퍼온거라 내용이 허접하네;;


배열 간단한 사용 소스

반응형