본문 바로가기

반응형

1. 변수(Variable)란?

하나의 값을 저장할 수 있는 기억 공간입니다.

2. 변수의 타입 (Data Type)

문자 char
숫자 정수 byte, short, int, long
실수 float, double
논리 boolean

기본형 (Primitive type)
- 8개 : boolean, char, byte, short, int, long, float, double
- 실제 값을 저장합니다.
- 분류
   1. 논리형 : true, flase 중 하나를 값으로 갖습니다.(조건식, 논리적 계산에 사용합니다.)
   2. 문자형 : 문자를 저장하는데 사용, 변수 당 하나의 문자를 저장할 수 있습니다.
   3. 정수형 : 정수를 저장하는데 사용됩니다.
       int, long : 주로 사용합니다.
       byte : 이진데이터를 다루는 데 사용됩니다.
       short : c언어와의 호환을 위해 사용됩니다.
   4. 실수형 : 실수를 저장하는데 사용됩니다.

크기 > 1 2 4 8
논리형 boolean      
문자형   char    
정수형 byte short int long
실수형     float double

참조형
- 기본형을 제외한 나머지 입니다. (String, System ... )
- 객체의 주소를 저장합니다. (4 byte, 0x00000000 ~ 0xffffffff)

3. 변수 선언방법

타입 변수명;

int score;
score = 100;
int score = 100;
String str = new String("abc");
str = null;

4. 명명규칙 (Naming convention)

1. 대소문자가 구분되며 길이에 제한이 없습니다.
ex) True ≠ true
2. 예약어(Reserved word)를 사용해서는 안 됩니다.
ex) true(x), True(o)
3. 숫자로 시작해서는 안 됩니다.
ex) top10(o), 0w0(x)
4. 특수문자는 _와 $만을 허용합니다.
ex) $harp(o), S#arp(x)

권장사항
1. 클래스 이름의 첫 글자는 항상 대문자로 합니다.
2. 여러 단어 이름은 단어의 첫 글자를 대문자로 합니다. (카멜 케이스)
3. 상수의 이름은 대문자로 한다. 단어는 _로 구분합니다. (스네이크 케이스)

5. 변수, 상수, 리터럴

변수 (variable) - 하나의 값을 저장하기 위한 공간입니다.
상수 (constant) - 한 번만 값을 저장할 수 있는 공간입니다.
ex) final int MIN = 100; (이후 MIN = 300; 와 같이 수정 불가합니다.)
리터럴 (literal) - 그 자체로 값을 의미하는 것입니다.
ex) int intValue = 100; > 100은 정수(int) 리터럴 입니다.

6. 리터럴과 접미사

boolean isYes = false;
char ch = 't';
char ch = '\u0074';
char tab = '\t';
byte b = 127;
short s = 32767;
int i = 100;
int oct = 0100;
int hex = 0x100;
long l = 100000L;
float f = 3.14f;
float f = 100f;
double d = 3.14d;

반응형

7. 변수의 기본값과 초기화

변수의 초기화 : 변수에 처음으로 값을 저장하는 것입니다.
(지역 변수는 사용되기 전에 반드시 초기화 해줘야 합니다.)

자료형 기본값   초기화
boolean false boolean isGood = false;
char grade = ' '; > 공백
byte b = 0;
short s = 0;
int i = 0;
long l = 0; > 0L로 자동 변환
float f = 0; > 0.0f로 자동 변환
double d = 0; > 0.0으로 자동 변환
String s1 = null;
String s2 = ""; > 빈 문자열
char '\u0000'
byte 0
short 0
int 0
long 0L
float 0.0f
double 0.0d 혹은 0.0
참조형 null

 

8. 문자와 문자열

char ch = 'A';
String s = "ABC"; (char ch = 'ABC'; > 에러)
String s = ""; (char ch = ''; > 에러)

ex)
String s = "A" + "B"; > "AB"
"" + 7 = "" + "7" > "7"
"" + 7 + 7 > "77"
7 + 7 + "" > "14"

9. 정수의 오버플로우 (Overflow)

자료형 byte는 -128 ~ 127의 범위를 가지고 있습니다.
이 때, byte b = 128;을 해주면 에러가 나지만, byte b = 127로 최대값을 선언 해준 뒤, b++을 해주면 b는 -128이 됩니다.
원기둥의 벽면에 적은 것 처럼 말입니다.

ex)
-128 ~ 127 > 127++ > -128
000 ~ 999 > 999+ > 000
부호가 없는 정수 0000 ~ 1111 > 1111++ > 0000
부호가 있는 정수 1000 ~ 0111 > 0111++ > 1000

10. 형변환 (Casting)

형변환이란?
    - 값의 타입을 다른 타입으로 변환하는 것입니다.
    - boolean을 제외한 7개의 기본형은 서로 형변환이 가능합니다.

변환 수식 결과
int > char (char) 65 'A'
char > int (int) 'A' 65
float > int (int) 1.6f 1
int > float (float) 10 10.0f

 

11. 형식화 된 출력 - printf()

println()의 단점 - 출력 형식 지정 불가

실수의 자리수 조절 불가
└ 소수점 n자리만 출력하려면?
System.out.println(10.0/3) > 3.333333333......
🔻
System.out.printf("%.2f", 10.0/3) > 3.33
10진수로만 출력된다.
8진수, 16진구로 출력하려면?
System.out.printf(0x1A) > 26
🔻
System.out.printf("%d", 0x1A) > 26
System.out.printf("%X", 0x1A) > 1A

 

반응형

'스터디 > 자바' 카테고리의 다른 글

[Java] 자바 : 2. 연산자 2  (0) 2024.01.09
[Java] 자바 : 2. 연산자 (Operator) 1  (0) 2024.01.04
[Java] 자바 : 1. 변수 2  (1) 2024.01.04
[Java] 자바 : 개요  (0) 2024.01.02
댓글