본문 바로가기
  • soobinhand의 기술 블로그
728x90

자바 프로그래밍 언어22

[자바 프로그래밍 언어] 10장 흐름제어 10.1 문장과 블록 없음 10.2 if-else 없음 10.3 switch switch ( 표현식 ) { case n : statements case m : statements default : statements } 표현식은 정수 타입이나 enum 타입 중 하나여야 한다. switch 문의 몸체는 switch 블록이라 하며 case 라벨을 포함할 수 있다. case 라벨은 정수 또는 enum 상수이다. switch 표현식이 case 라벨의 값과 일치한다면 제어는 해당 라벨의 첫 번째 문장으로 이동하고 일치하는 case 라벨을 찾지 못한 경우에는 default 라벨의 첫 번째 문장으로 이동한다. default 라벨도 존재하지 않는다면 switch 문은 종료된다. break 문이 없다면 실행은 defau.. 2021. 12. 29.
[자바 프로그래밍 언어] 9장 연산자와 표현식 9.1 산술 연산 + - * / % 정수 나눗셈은 실수 부분을 잘라버린다. 7/2 = 3이다. 0으로 나누거나 0으로 나머지를 구하는 것은 ArithmeticException을 발생시킨다. NaN - Not a Number 숫자가 아님을 의미. 부동 소수점 산술 연산은 엄격한 방식과 비엄격한 방식 중 하나로 실행. 엄격한 부동 소수점 코드를 실행하면 모든 자바 가상 머신에서 정확히 동일한 결과를 얻을 수 있다. 하지만 비엄격은 규칙이 느슨하게 적용된다. 비엄격은 float나 double이 허용할 수 있는 범위보다 큰 값을 가지는 표현식의 중간 결과를 허용한다. 9.2 일반 연산자 ++i는 i의 값을 미리 증가시켜 17로 만든 후에 값을 사용함. i++은 i의 현재 값을 사용한 후에 증가시킴. 등호 연산자.. 2021. 12. 28.
[자바 프로그래밍 언어] 8장 기본 타입과 래퍼 클래스 8.1 공통 필드와 메소드 자바는 기본 타입과 이에 대응하는 래퍼 클래스간의 변환을 자동으로 해줌. Integer value = 3; 이게 가능하다. 박싱 변환 : 기본 값을 래퍼 객체로 변환 ( wrap과 box는 거의 비슷한 의미) 언박싱 변환 : 래퍼 객체에서 기본 값을 추출하는 것 래퍼 클래스는 감싸고 있는 기본 값을 불변 객체로 정의한다. new Integer(1)로 생성된 객체는 항상 1을 가지며 이 값을 수정할 수 없다. 래퍼 클래스는 다음과 같은 메소드를 가진다. public static Type valueOf(Type t) t 값을 가지는 지정된 Type의 객체를 반환한다. public static Type valueOf(String str) str를 변환한 값을 가지는 지정된 Type의.. 2021. 12. 27.
[자바 프로그래밍 언어] 7장 토큰, 값, 변수 7.1 어휘적 요소 컴파일의 첫 번째 단계는 어휘적 요소를 토큰으로 스캐닝하는 것이다. 이 단계에서 화이트스페이스와 주석이 무시된다. 주석은 프로그래머의 편의를 위한 것이다. 토큰은 언어의 기본 단어이다. 파서는 소스 코드를 토큰으로 분리하고 문장, 식별자, 기타 등등을 판별한다. 식별자는 변수, 상수, 라벨에 선언된 이름을 말하며 이 이름은 문자와 숫자로 구성할 수 있다. 다만 이름의 첫 글자는 문자여야 한다. 키워드는 자바에서 특별한 의미를 갖기때문에 식별자로 사용할 수 없다. 7.2 타입과 리터럴 타입은 기본 타입과 참조 타입으로 분류할 수 있다. boolean, char, byte, short, int, long, float, double 각각의 기본 데이터 타입과 대응하는 클래스 타입이 java.. 2021. 12. 27.
728x90