Java
Data Type, n진법
성장코딩
2022. 12. 20. 00:09
< 소스 코드 >
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
public class MainClass {
public static void main(String[] args) {
/*
숫자(상수):
2진수(BIN): 0, 1
8진수(OCT): 0 ~ 7, 8 -> 10으로 취급 10(10진수) -> 12(8진수) -> 012
10진수(DEC) 0 ~ 9
16진수(HEC) 0 ~ 9 A B C D E F이고
A(10) B(11) C(12) D(13) E(14) F(15)
1010 1100 -> 2진수
8421 8421 -> 10진수로 바꿀 때
A C -> 16진수 -> 0xAC (16진수임을 표현할 때 앞에 0x를 붙인다)
0x000000 -> black
0xffffff -> white (ff = 255이므로)
0xE5 -> 16진수
8421 8421 (E 하나에 8421 5 하나에 8421 대응)
1110 0101 -> 2진수
변수(variable):
빈통(메모리 공간)에 데이터를 저장할 수 있는 수
데이터의 종류도 다양하다
*/
// 데이터를 크게 3종류로 나눌 수 있다.
// 숫자
// 정수(byte, short, int, long)
// 자료형(byte) 변수(by) -> 1 byte -> 256개 숫자를 표현
byte by;
// 대입
// A = B는 B를 A에 대입! (<- 방향)
by = 12;
by = 25;
// by = 255; -> error 발생한다! 왜냐하면 byte의 8bit 8개 자리의 맨앞은 부호 의미
// 맨앞이 0이면 양수, 맨앞이 1이면 음수를 표현
by = -128; // 1byte는 -128 ~ 127까지 가능 (255개)
short sh; // 자료형(short) 변수(sh) -> 2byte
sh = 134;
int i; // -> 4byte
i = 12345;
long l; // -> 8byte
l = 1231231231232323L; // L을 붙여줘서 long형으로 인식하게 함
// 실수(소수) (float, double)
float f; // -> 4byte
f = 123.456f; // f을 붙여줘서 float형으로 인식하게 함
double d; // -> 8byte
d = 123.4562312;
// 실무에서는 double을 많이 사용한다.
// 문자열
// 문자(char)
char c; // 2 byte
c = 'A'; // 한 문자만 표현할 때는 작은 따옴표! 큰 따옴표 X
c = '한';
// 문자열(string) -> (wrapper)class
String str;
str = "Hello";
str = "World";
// 논리(true/false) (boolean)
boolean b;
b = false; // false = 0
b = true; // true = 1
// 변수명 규칙
int hH;
int humanHeight;
// 문법상 어긋나는 것은 없으나 유추가 돼야 한다...!
// 불가
// 1. 숫자가 맨 앞에 오면 안된다: int 1abc;
// 2. 변수명은 사용할 수 없다: int char;
// 3. 띄어쓰기 사용해서 사용할 수 없다: int ch sfge;
// 삼가라
// 1. 모두 대문자로 사용하는 것은 안좋다: int ABC;
// 2. 너무 간단한 변수명은 안좋다: int da;
//많이 사용하는 규칙
int charPositionXdot; // camel 기법(중간중간 대문자)
int char_Position_xdot; // _(under bar) 사용 (근데 오류 위험있음)
int charPosXdot; //너무 길지 않은 길이로
System.out.println(by);
System.out.println(sh);
System.out.println("i = " + i);
System.out.println("l = " + l);
System.out.println("f = " + f);
System.out.println("d = " + d);
System.out.println("b = " + b);
}
}
|
cs |
< Console >
Theme. n진법
- 2진법(BIN): 0, 1
- 8진법(OCT): 0 ~ 7, 8은 10으로 취급
- 10진법(DEC) 0 ~ 9
- 16진법(HEC) 0 ~ 9 A(10) B(11) C(12) D(13) E(14) F(15)
1. 8진법, 16진법의 표기
- 10을 8진법으로 나타내면, 012 (0을 맨 앞에 써준다) ( 10 = 8^1 * 1 + 8^0 * 2 )
- 16진법으로 나타낼 때는 앞에 0x를 붙여써준다
2. 2진법과 16진법 사이의 변환
10101100 (2진법)이 있을 때, 4자리씩 16진법으로 변환
즉, 1010 / 1100으로 나눠 변환
1010 1100 (2진법)
8421 8421 (10진법)
A C (16진법) ----> 0xAC !!
Theme. Data Type(자료형)
Data Type | 크기 | |
문자형 | char | 2 byte |
정수형 | byte | 1 byte |
short | 2 byte | |
int | 4 byte | |
long | 8 byte | |
실수형 | float | 4 byte |
double | 8 byte | |
논리형 | boolean | 1 byte |
- 1byte = 8bit이므로 총 256개의 수를 표현할 수 있다. 주의할 것은 그 범위가 -128 ~ 127이라는 것.
- long은 수의 끝에 L을 붙이고, float는 f를 붙여 각각 올바르게 인식되도록 한다.
- char은 작은 따옴표를 사용해야 한다.
Theme. 변수명 규칙
1. 불가능
- 숫자가 맨 앞에 오면 안된다.
- 자료형으로 된 변수명은 사용할 수 없다.
- 띄어쓰기 사용할 수 없다.
2. 권장하지 않음
- 모두 대문자로 사용하는 것
- 너무 간단한 변수명