배열 / 열거타입

Java

목록 보기
6/26
post-thumbnail
  • 처음부터 값 목록과 함께 배열 객체 생성시에는 new를 사용하지 않음.
int[] scores = {100,95,90};
  • 변수 선언 후에 값 목록을 대입할 때 주의할 점🌟
    🌟배열을 초기화 해 놓고 그 다음에 값을 줄 때,
    그냥 값만 주면 안되고 위처럼 new로 객체 생성 후 값을 줘야한다.🌟
    == 배열 변수를 미리 선언한 후, 값 목록들이 나중에 들어오는 경우에는 꼭 new 연산자를 사용해서 값 목록을 대입해야한다.
데이터타입[] 변수;
변수 =new타입[] {0,1,2,3, ...};
String[] names = null;
또는 String []names;
names = new String[] {"김희주", "김자바", "파이썬"};
int add(int[] scores) {...}
-------------------------------------------------
int result = add({95, 85, 90}) ;            >>컴파일 에러
int result = add(new int[] {95, 85, 90});   >>OK
또는
int[] values = {100, 90, 90};
int result = (values);              ✅ 이건 왜 되는거지? 아 나 이해가 안 가네...

왜 new를 안 쓰는지는 직접 써보면 이해가 된다.

  • 다차열 배열
int[][] scores = new int [][]

수학의 행렬 구조를 가지지 않음 >>> 빈 행을 만들고 나중에 길이를 정할 수 있다!

int[][] scores = new int[2][];
scores[0] = new int[2];
scores[1] = new int[3];

배열 복사

  • 배열은 한 번 생성하면 크기를 변경할 수 없다.
  • 더 많은 저장공간이 필요하다면 보다 큰 배열을 새로 만들고 이전 배열로부터 항목 값들을 복사해야한다. ex) 향상된 for문, System.arrayCopy(), Arrays클래스 이용
System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length);
System.arraycopy(원본 배열, 복사 시작 위치, 새 배열, 붙여넣기 시작 위치, 몇개 복사할지);
  • 향상된 for문
for (타입 변수 : 배열) {
실행문
}

열거타입

  • 한정된 값만을 갖는 데이터 타입 ex) week, 로그인 실패 여부(T/F)
  • 객체 단위 저장...인거같음. 일단 그렇게 이해할 것.

열거타입 선언

  • 먼저 열거타입 이름을 소수파일(.java)을 생성해야 함
  • 열거타입 이름은 관례적으로 첫 문자를 대문자로 함
  • 열거타입 변수 값은 열거 상수 중 하나이어야 한다. (ex Week에는 요일밖에 못 넣음)
  • null로 초기화 가능
public enum 열거타입이름 {...}

-> class로 만들지 말고 enum이라는 거 클릭해서 생성!!

Week today = null;
  • 열거 상수는 열거 객체를 참조한다
Week today = Week.SUNDAY;           >>week의 SUNDAY객체를 참조한다.
today == Week.today  >> true    참조하는 객체가 같으므로!
Week week1 = Week.SATURDAY;
Week.week2 = Week.SATURDAY;
week1 == week2       >> true    

++) String -> Char 타입 변환

++) 배열에 저장된 각 문자(열)의 길이 구하기

++) 배열 복사

0개의 댓글