본문 바로가기

5. 참조타입

(9)
5.7.3_열거 객체의 메소드 package sec07.exam01_enum; public class WeekMethodExample { public static void main(String[] args) { //name() 메소드 Week today = Week.SUNDAY; String name = today.name();//String타입 name에 today의 문자열을 입력 System.out.println(name);//SUNDAY출력 //ordinal() 메소드 int ordinal = today.ordinal(); System.out.println(ordinal);//6 출력 //compareTo() 메소드 Week day1 = Week.MONDAY; Week day2 = Week.WEDNESDAY; int result..
5.7.2_열거 타입 변수 열거타입을 선언했다면 이제 열거 타입을 사용 할 수 있다. 열거 타입도 하나의 데이터 타입이므로 변수를 선언하고 사용해야 한다. 열거 타입 변수 선언 열거타입 변수; 예시) 앞의 열거타입 Week로 변수를 선언하면 다음과 같다. public enum Week { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY } 가 이미 선언되었다고 가정하자. Week today; Week reservationDay; 열거타입 상수 저장 열거타입 변수 = 열거타입.열거상수; -열거 상수는 단독으로 사용 할 수는 없고 반드시 열거타입.열거상수로 사용된다. -열거타입 변수값은 열거 상수 중 하나여야 한다. (위의 Week 열거타입을 예로 들자면 월화수목금토일 ..
5.7.1 열거타입 (enumeration type) 열거타입이란 열거타입: 한정된 값만을 갖는 데이터 타입 한정된 값은 열거 상수로 정의한다. 열거상수: 열거 타입의 값 ex)요일에 대한 테이터는 월, 화, 수, 목, 금, 토, 일이라는 일곱개의 열거상수만을 가진다. 계절에 대한 데이터는 봄, 여름, 가을, 겨울이라는 네 개의 값만을 가짐. 5.7.1_열거타입 선언 1. 열거 타입이 이름을 정하고 타입 이름으로 열거타입 소스파일(.java)을 생성해야 한다. -: file-new-Enum -타입 이름 규칙은 클래스 이름 작성법과 동일하다. 2. 소스 파일의 내용으로는 다음과 같이 열거 타입 선언이 온다. public enum 열거타입이름 { 열거상수선언 } -파일 이름과 동일해야 함 -열거 상수는 관례적으로 대문자이다. (상수이기 때문) 예시: publi..
5.6.10_ 향상된 for문 -배열을 반복실행하기 위해 for(int i; i
5.6.8_객체를 참조하는 배열 기본타입(int, double...)배열은 각 항목에 직접 값을 갖고 있지만, 참조타입(클래스, 인터페이스..) 배열은 각 항목에 객체의 번지를 가지고 있다. 예를들어 String은 클래스타입이므로 String[]배열은 각 항목에 문자열이 아니라 String 객체의 주소를 가지고 있다. String 배열을 만들어보자. String[] StrArray = new String[3]; StrArray[0] = "java"; StrArray[1] = "C"; StrArray[2] = "C#"; (예제를 보기전에) 비교 연산자 두 가지 == :참조하는 객체의 주소가 같은지 확인 (= 같은 객체를 참조하고 있는가?) a.equals(b) : 객체a와 b의 문자열이 같은지 확인 (다른 객체를 참조해도 문자열이 같으면..
5.6.7_다차원 배열 자바는 1차원 배열을 이용해서 2차원 배열을 구현한다. 2차원 배열 생성 배열 길이만 입력하고 생성하는 방법 int[][] 배열이름 = new int[길이][길이] 값목록으로 생성하는 방법 타입[][] 변수 = { {값1,값2,...}, {값1, 값2,...} }; 이름이 scores인 2차원 배열을 만들어보자. int[][] scores = new int[2][3] 길이가 다른 배열도 생성 할 수 있다. int[][] scores = new int[2][]; scores[0] = new int[3]; scpres[1] = new int[2]; 배열 변수인 scores는 길이 2인 배열A를 참조한다. 배열A의 scores[0]은 다시 길이 3인 배열B를 참조한다. 배열A의 scores[1]은 다시 길이 ..
5.6.6_커맨드 라인 입력 메인 메서드에 항상 포함되어 있는 이것. public static void main(String[] args) public으로 선언된 이름이 main인 정적 메서드이다. 매개변수는 String을 타입으로 하는 배열 args 이다. main은 컴파일러가 패키지 안에 클래스 중 제일 먼저 찾아가야 하는 메서드라는 의미. "java 클래스"로 프로그램을 실행하면 길이가 0인 String 배열(이름은 args)을 먼저 생성한 후 String[] args = { }; 메서드를 호출할 때 매개 값으로 전달한다. 만약 "java 클래스" 뒤에 공백으로 구분된 문자열 목록을 주고 실행하면, (java 클래스 문자열 0 문자열 1 문자열 2.. 문자열 n-1) 문자열 목록으로 구성된 String [] 배열이 생성되고 메..
5.6.1~5_배열, 배열 선언, 배열길이 배열이란? -같은 타입의 데이터를 연속된 공간에 저장하는 자료구조 -각 데이터에 인덱스(index)를 부여해놓은 자료 구조 예를들어 학생들의 성적은 다음과 같이 배열로 나타 낼 수 있다. 점수 78 49 90 78 99 84 인덱스 0 1 2 3 4 5 -각 데이터 저장 위치는 인덱스를 부여해서 접근 할 수 있다. -배열변수는 참조변수에 속한다. 배열 읽기 배열이름[인덱스] 위의 score 배열을 예시로 들면 score[2]//90을 값으로 가진다. 배열선언 -배열을 사용하기 위해서는 우선 배열을 선언해야 한다. -배열 변수 선언은 다음 두 가지 형태로 작성 할 수 있다. 타입[] 변수; 타입 변수[]; 보통 위의 방법이 일반적이다. int[] intArray; int[] doubleArray; Stri..