JAVA Study
1. 변수와 상수
- 변수 (Variable)
: 단 하나의 값을 저장할 수 있는 메모리상의 공간
: 저장된 값이 변경될 수 있음
- 변수의 선언과 초기화
: 선언 방법 - 변수타입 + 변수이름; ( ex. int a; )
: 변수타입은 변수에 저장 될 값의 타입을 지정하는 것
: 변수이름은 변수에 붙인 이름
: 메모리에 변수와 같은 이름으로 지정된 값이 있을 수 있기 때문에 초기화를 해야함
: 초기화란 변수를 사용하기 전에 처음으로 값을 저장하는 것
: 변수에 값을 저장할 때는 '='을 사용 (ex. int a = 398; )
- 변수 값 출력 예제
public class tistory {
public static void main(String[] args) {
int coffee = 3000;
int cake = 5000;
System.out.println(coffee);
System.out.println(cake);
}
}
결과값 3000 / 5000 출력
- 변수 이름 규칙
: 프로그래밍에서 사용하는 모든 이름을 '식별자'라고 함
: 식별자는 같은 영역 내에서 구분가능해야 함
: 대소문자 구분됨, 길이 제한 없음
: 예약어 사용안됨
: 숫자로 시작하면 안됨
: 특수문자는 '_'와 '$'만 허용
2. 변수의 타입
- 자료형은 사용하는 값의 종류에 따라 값이 저장될 공간의 크기와 저장형식을 정의한 것
- 자료형에는 문자형, 정수형, 실수형 등이 있음
- 변수 선언 시 알맞은 자료형을 변수의 타입으로 선택
- 기본형 변수는 실제 값을 저장
: 논리형 (boolean)
: 문자형 (char)
: 정수형 (byte, short, int, long)
: 실수형 (float, double)
- 참조형 변수는 값이 저장된 주소를 저장
- 상수는 한번 저장하면 다른 값으로 변경할 수 없음
- 상수 선언 방법은 변수 타입 앞에 'final'을 붙여줌 ( ex. final int coffee =3000; )
- 상수이름은 암묵적으로 모두 대문자 사용 ( ex. final int COFFEE = 3000; )
- 이름이 여러 단어로 이루어져 있을 때 '_' 사용 ( ex. final int STARBUCKS_COFFEE = 3000; )
- 리터럴 상수와 변수의 값 ( 상수 스타벅스의 리터럴은 3000 )
- 리터럴 타입과 접미사
: 정수형타입과 실수형타입들을 구분하기 위해 리터럴에 접미사를 붙임
: long 타입 리터럴에는 접미사 'L', float 타입 리터럴에는 접미사 'f', double 타입 리터럴에는 접미사 'd'를 붙임
( ex. long cream = 50_000_000_000L; float cream2 = 2.14f; double cream3 = 2,345d; )
- 타입 불일치
: 저장범위가 넓은 타입에 좁은 타입 값을 저장하는 것은 허용됨
- 문자 리터럴 , 문자열 리터럴
: 'A'같이 작은 따옴표로 문자 하나를 감싼 것이 문자 리터럴
: "ABC"두 문자 이상은 큰따옴표 사용한 문자열 리터럴
: ""안에 아무 것도 넣지 않은 빈 문자열을 허용
- printf()
: 지시자를 통해 값을 어떻게 출력할 것인지 지정해주는 역할
( ex. '%d' - 정수형 변수에 저장된 값을 10진수로 출력할 때 )
- Scanner()
: 화면에서 입력받을 때 사용됨
: import.java.util.*; //Scanner 클래스 사용위해 추가
: Scanner test = new Scanner(System.in); //Scanner 클래스 객체 생성
: int num = test.nextInt(); //입력받은 정수를 변수 num에 저장
: 실행 후 콘솔창에 숫자 입력
- 변수 타입에 따른 기본값
자료형 |
기본값 |
boolean |
false |
char |
'\u0000' |
byte, short, int |
0 |
long |
0L |
float |
0.0f |
double |
0.0d 또는 0.0 |
참조형 변수 |
null |
3. 기본형(primitive type)
- boolean (논리형)
: true,false 값만 가지는 변수
: default = false
- char (문자형)
: 단 하나의 문자를 저장
: 특수문자 표현
특수 문자 | 문자 리터럴 |
tab | \t |
backspace | \b |
form feed | \f |
new line | \n |
carriage return | \r |
역슬래쉬(\) | \\ |
작은따옴표 | \' |
큰따옴표 | \" |
유니코드 (16진수) 문자 | \u 유니코드 ( ex. char a='\u0041' ) |
-byte, short, int, long (정수형)
: 정수형 크기 순서 byte < short < int < long
- float, double (실수형)
: 실수형에서는 오버플로우 발생시 변수의 값은 무한대가 됨
: 언더플로우가 발생하면 변수의 값은 0이 됨
4. 형변환 (casting)
- 서로 다른 타입간의 연산을 수행하기 위해 값들의 타입을 일치시키는 것
- 형변환 방법
: 변환하고자 하는 변수나 리터럴 앞에 변환하고자 하는 타입을 작성 ( ex. (타입)피연산자 )
- 자동 형변환
: 기존의 값을 최대한 보존할 수 있는 타입으로 자동 형변환 됨
- boolean을 제외한 나머지 7개의 기본형은 서로 형변환 가능
- 기본형과 참조형은 서로 형변환할 수 없음
- 서로 다른 타입의 변수간 연산은 형변환을 하는 것이 원칙이나, 값의 범위가 작은 타입->큰 타입이라면 생략가능
자바의 정석 저자 강의
- 변수의 선언
- 변수의 타입
- 상수와 리터럴
- printf()와 Scanner ( 형식 출력과 화면 입력 )
'프로그래밍 > JAVA' 카테고리의 다른 글
[JAVA] 4. 조건문과 반복문 ( if, switch, for, while ) (0) | 2017.06.26 |
---|---|
[JAVA] 연산자 예제 (0) | 2017.06.25 |
[JAVA] 3. 연산자 (Operator) (0) | 2017.06.24 |
[JAVA] 1. 자바설치, 이클립스 설치 (0) | 2017.06.21 |
[JAVA의 정석] 목차 (0) | 2017.06.21 |