- 변수: 하나의 값을 저장할 수 있는 메모리 공간
int age; 변수타입 변수이름
- 변수초기화 : 변수 사용전 처음으로 값 저장 int age =25;
지역변수 초기화 필수 클래스변수 인스턴스변수 생략가능
- 변수 명명규칙
- 대소문자 구분 길이 제한 없음
- 예약어 안됨 true
- 숫자 시작 안됨
- 특수문자는 _와 $만 가능
- 그 외 규칙
- 클래스 이름 첫글자는 대문자
- 여러단어 첫글자 대문자
- 상수이름 모두 대문자 여러단어 _로 구분
- 변수 의미 있는 이름
- 변수 타입
- 문자 char
- 숫자
- 정수 byte, short, int(cpu가 가장 효율적으로 처리), long
- 실수 float, double(기본) 정밀도가 높을수록 발생 오차 줄어듦
- 기본형: 실제 값, 논리형, 문자형, 정수형, 실수형
- 참조형: 주소 값, 그 외
클래스이름 변수이름; Date today = new Date();
- 저장 가능한 값의 범위 -2**(n-1)~2**(n-1)-1 (n은 bit수)
- 상수: 변경불가 final int MAX_SPEED = 10; 선언동시에 초기화
- 리터럴: 값
- 문자열+다른타입=문자열
- printf()
int age = 14;
System.out.printf("age:%d", age);
줄바꿈 %n, 불리언 %b, 10진수 %d, 문자열 %s
- 진법: 컴퓨터는 2진수로 저장
- 1비트: 컴퓨터가 값을 저장할 수 있는 최소단위 8bit=1byte 2**n개 값 표현가능
- 워드: cpu가 한번에 처리할 수 있는 데이터의 크기
- 2진수를 8진수로: 뒤에서 3자리씩 끊어 계산
- 실수의 진법변환
- 0.625 2진수로 바꾸기
0.625*2=1.25
0.25*2=0.5
0.5*2=1.0
소수부가 0이될 때까지
정수부를 위에서 부터 0.101(2)
- 0.101(2) =1*2**-1+0*2**-2+1*2**-3
- 2의 보수법: 더했을 떄 2가되는 수, 자리올림이 발생하고 0이되는 수
절대값이 같고 부호가 다른 두10진수를 표현하는 것을 2의 보수법
- 음수를 2진수로: 절대값 2진수 구하고 2의 보수로 변환
- 2의 보수=1의 보수+1
- 기본형
- 논리형 boolean 기본값 false 1byte
- 문자형 char 문자의 유니코드(정수) 저장됨
char ch = 'A';
char ch = 65; 같음
- 오버플로우: 타입이 표현할 수 있는 값의 범위를 넘어서는 것
- 실수형 오버플로우는 무한대
- int 표현형식: 부호, 값
- float 표현형식: 부호, 지수, 가수 / 정밀도 중요 7(7자리의 10진수를 오차없이 저장 1.234567*10**n)
- double 타입은 15자리 정밀도
- 실수형의 저장방식: 부동소수점수 형태 부호1, 지수11, 가수52 =64(8byte)
- 형변환: 변수 또는 상수의 타입을 다른 타입으로 변환하는 것
- 자동형변환 규칙: 기존의 값을 최대한 보존할 수 있는 타입으로 자동 형변환