기본적이고 간단한 자료구조
1) int[] a = new int[5]; // 주로 이렇게 선언한다.
a[1] = 37;
a[2] = 51;
a[3] = a[1] * 2; // 74를 대입한다.
2) int array[] = new int[5];
이렇게도 생성 가능
1) int[] a = {1, 2, 3, 4, 5}; // 배열 초기화에 의해 생성
2) int[] a = new int[] {1, 2, 3, 4, 5};
3) int[] a = new int[5];
for (int i=0; i<5; i++){
a[i] = i+1;
}
for (int i = 0; i < a.length; i++) {
System.out.println("a[" + i + "] = " + a[i]);
}
int[][] a = new int[5][5];
int array[][] = new int[5][5];
import java.util.Arrays; 패키지를 사용해야 가능한 기능들이 있다.
int[] a = new int[] {1,2,3,4,5}
Arrays.toString(a); 메소드를 사용하여
[1,2,3,4,5]가 출력된다.
Arrays.sort(a);
오름차순 정렬 기능이다.
시간복잡도 : O(nlogn), 최악O(n^2)으로 퀵 정렬보다 빠른 알고리즘을 사용한다.
Arrays.binarySearch(a, 3)
a배열에서 숫자 3이 들어있는 index를 return한다.
Arrays.equals(a, b)
배열 a와 b가 같으면 true, 다르면 false를 return한다.
Arrays.fill(a, 2)
a를 모두 2로 채워준다.
객체 멤버에 대한 접근을 제한, 접근 제한자라고 한다.
접근 제한자의 종류
public: 모든 접근 허용
protected: 같은 패키지(폴더)의 객체, 상속 관계 객체 허용
default: 같은 패키지(폴더)의 객체 허용
private: 현재 객체 안에서만 허용
접근 제한자 사용
클래스 : public, default
생성자 : public, protected, default, private
멤버 변수 : public, protected, default, private
멤버 메서드 : public, protected, default, private
지역 변수 : 접근 제한자를 사용할 수 없다.
import java.util.Random;
Random rand = new Random(); // random함수를 생성한다.
Random rand = new Random(n);
Random클래스의 인스턴스 생성은 둘 중 하나로 수행된다.
for (int i = 0; i< n / 2; i++)
배열을 역순으로 정렬하려면 두 안의 요소를 교환해야 한다.
t = x; x값을 t에 보관한다.
x = y; y값을 x에 대입한다.
y = t; t에 보관한 처음 x값을 y에 대입한다.