1. 명명규칙
권장사항
1. 클래스 이름의 첫 글자는 항상 대문자로 한다. -변수와 메서드 이름의 첫 글자는 항상 소문자로 한다
2. 여러 단어 이름은 단어의 첫 글자를 대문자로 한다. -ex) lastIndexOf, StringBuffer
3. 상수의 이름은 대문자로 한다. 단어는 '_'로 구분한다 - PI
- 리터럴 - 그 자체로 값을 의미하는 것
ex) int score = 100;
score = 200;
char ch = 'A';
String str = "abc";
final int MAX = 100; //상수 선언할 때 앞에 final을 붙여주고 변수와 상수 구분하기 위해 대문자로 작성
= 오른쪽에 있는 값 자체를 리터럴이라함.
int score = 100;
score = 200;
char ch = 'A';
String str = "abc";
final int MAX = 100; //상수 선언할 때 앞에 final을 붙여주고 변수와 상수 구분하기 위해 대문자로 작성 = 오른쪽에 있는 값 자체를 리터럴이라함.int score = 100;
score = 200;
char ch = 'A';
String str = "abc";
final int MAX = 100; //상수 선언할 때 앞에 final을 붙여주고 변수와 상수 구분하기 위해 대문자로 작성
= 오른쪽에 있는 값 자체를 리터럴이라함.
2. 변수 - 하나의 값을 저장하기 위한 공간
//변수
int num = 100;
num = 200; //변수 선언/값을 대입 시에 변수에 노란줄 뜨는 이유 : 변수를 사용하지 않아서 (변수 안에 있는 값을 가져올 때가 변수를 사용한다는 의미)
char ch = 'A'; //char ch = ''; - 빈칸으로 초기화 불가 -> char ch = '\0'; 으로 빈칸 초기화 가능 //char ch = ' '; - 스페이스도 문자이므로 공백문자로 초기화 가능
char ch2 = '한';
//char ch3 = 'abc'; //char는 문자형이므로 여러문자 삽입 불가
String str = ""; //변수는 선언 및 빈칸으로 초기화
String str2 = null;
3. 상수 - 한번만 값을 저장할 수 있는 공간
//상수
final float PI;
PI = 4.0f;
//PI = 3.14f;
int a = 10;
float f = a;
System.out.println(f);
float realNumber = 3.14f;
//문법이라서 외워야함) float 변수에 실제 값을 입력할 때는 항상 접미사를 붙여야함 - 접미사 종류는 Hello.java (4. 자료형(데이터타입)의 종류) 참고
System.out.println(realNumber);
//System.out.printf("%f", realNumber);
변수는 값을 계속 바꿔 줄 수 있지만 상수는 한번 값이 삽입되면 이후에 변경이 불가하다.
4. 리터럴 - 그 자체로 값을 의미하는 것
int score = 100;
score = 200;
char ch = 'A';
String str = "abc";
final int MAX = 100;
상수 선언할 때 앞에 final을 붙여주고 변수와 상수 구분하기 위해 대문자로 작성 = 오른쪽에 있는 값 자체를 리터럴이라함.
5. (자료)형변환 - 캐스트연산자
1. 자동형변환 - (암시적/묵시적)형변환
2. 강제형변환 - 명시적형변환
int n1 = 5;
int n2 = 2;
//정수형이므로 나눗셈을 할 경우 소수점 이하의 값은 소실됨.
System.out.println(n1/n2);
float f1 = 3.145f; //자료형이 큰거에서 작은 걸로 변환될 경우 오류 발생
int nf =f1;
float f1 = 3.145f;
int nf = (int)f1; //자료형을 임의로 바꿔주면 오류 해결, 변수가 변하는 것이 아니라 변수 안에 있는 값이 변수에서 꺼내져서 형변환되어 사용되는 것
다른 자료형 간의 연산 :
System.out.println((float)n1/n2);
- 형변환 순서 : n1을 float으로 형변환 -> n2가 자동으로 float으로 형변환 -> 계산값이 출력됨
- n1 = 5.0f; // 변수의 타입이 변환하지는 않는다.
- 자료형 크기순 : 정수 < 실수 < 문자열
3. 숫자의 문자열 변환
- 나쁜예) 아래처럼 숫자에서 문자형으로는 변환 불가
String str3 = "";
int ntoa = 10;
str3 = (String)ntoa;
- String 으로 형변환 하는 방법 : 변수 = 정수 + ""; 이렇게 모두 묶어서 string으로 변환되고 string 변수에 저장됨
String str3 = "abc";
int ntoa = 10;
str3 = ntoa + "";
System.out.println(str3);
4. 다음 중 캐스트연산자의 생략이 가능한 문장은?
int num1 = 10;
1. byte로 변환 : byte b = (byte)num1;
2. double로 변환 : double d = num1;
3. short로 변환 : short s = (short)num1;
4. long로 변환 : long l = num1;
정답)2.4번 - 데이터형의 크기가 더 크기때문에 따로 명시할 필요 없음
6. 오버플로우/언더플로우
byte b = 127;
b++; //오버플로우가 됨 - 자바에서는 기본 'signed char 데이터 형'
System.out.println(b);
'JAVA' 카테고리의 다른 글
JAVA(6) - switch문 계산기 만들기/if문으로 계산기 만들기/switch -> if 변환 (1) | 2020.03.05 |
---|---|
JAVA(5) - 조건문/if/else if/학점변환프로그램/if문 중첩/switch (3) | 2020.03.04 |
JAVA(4) - 계산기/인스턴스/구구단/출력형태바꾸기 (1) | 2020.03.04 |
JAVA(3) - 산술 연산자/증감 연산자/비교 연산자/논리 연산자/조건연산자 (1) | 2020.03.04 |
JAVA(1) - 주석/데이터 종류/메모리/자료형/변수/초기값/줄바꿈/print/println/printf (3) | 2020.03.02 |