자바에서 배열은 객체(object)입니다.
배열을 생성하기위해 두단계의 절차를 진행합니다.
int[] s;
배얄 참조 변수를 선언했다고 해서 배열이 생성된것이 아닙니다.
변수만 생성되었지만 실제 배열은 new 할당을 받아서 생성해야합니다.
s=new int[10];
변수 s 10개의 배열을 생성했습니다.
즉 배열의 선언할때는
int array[]=new int[5];
이런식으로도 선언할수 있습니다.
그렇다면 무명 배열(anomymous arrays)를 알아보겠습니다.
new int[] {1,2,3,4}
배열에 이름없이 주어진 초기값만으로 배열이 생성할수 있습니다.
이 배열은 딱 한번 참조하며 더이상은 사용되지 않습니다.
sum 이라는 더하기 함수를 사용해보겠습니다.
public class AnonymousArray{
public static void main(String[] args){
System.out.println("숫자들의 합:"+sum(new int[]{1,2,3,4,}));
}
public static int sum(int[] numbers){
int total =0;
for(int i=0;i<number.length;i++){
total=total+numbers[i];
}
return total;
}
}
이런 예시로 사용할수 있습니다.
for -each 루프
jdk 1.5 버전 이상부터 사용하는 방식입니다.
for( 변수: 배열){
}
코드로 확인해보면
public class ArrayTest4{
public static void main(string[] args){
int[] numbers={10,20,30};
for(int value:numbers)
System.out.println(value+"");
}
}
배열 복사
int [] list={10,20,30,40,50};
int [] numbers=list;
이런 방식으로 해주면됩니다.
arry 복사는 copyOf() 메소드를 사용 할 수 있습니다.
int []list_copy=Arrays.copy(list,list.length);
main () 함수 매개 변수
public static void main(String[] args)
메인 함수의 매개변수(파라미터) 문자열 배열입니다.
이 문자열 배열에는 우리가 명령어 프로프트에서 프로그램을 실행시켜주는 인수들이 저장됩니다.
배열 정렬
자료구조에서 배우는 정렬(sort) 이며
여기서 사용되는 sort 메소드는 퀵정렬입니다 .
퀵정렬 관련해선 c++ 나중에 정리해보도록 하겠습니다.
사용방법은
import java.util.Arrays;
public class SortExample{
public static void main(String[] args){
final int Size=10;
int[] numbers=new int[Size];
for(int i=0;i<Size;i++){
int r=(int)(Math.random()*100);
number[i]=r;
}
System.out.println("최소한 리스트:");
for(int r:numbers)
System.out.println(r+"");
Arrays.sort(numers);
for(int r:numbers)
System.out.println(r+"");
}
}
랜덤값을 넣어서 정렬을 한 sort로 정렬을 했습니다.
2차원 배열
이번에는 2차원 배열의 생성을 해보겠습니다.
초기화는
int [][] testArray={
{10,20,30},
{40,50,60},
{70,80,90},
};
선언 방식은
int[][] s= new int[3][5];
2차원 배열을 선언합니다.
다음에는 배열 리스트에 대해 알아보겠습니다.
'프로그래밍언어 > JAVA' 카테고리의 다른 글
JAVA<Class,Object,Method-01> (0) | 2019.11.20 |
---|---|
JAVA <Array-List/래그드 array> (0) | 2019.11.17 |
자바 제어문 /반복문 (0) | 2019.11.13 |
JAVA 기초 개념 (0) | 2019.11.13 |
자바 들어가기전에.. (0) | 2019.11.13 |