23.3.23 목요일 Ch.2-1


컴퓨터 프로그램에서변수는 데이터를 저장합니다.랜덤 액세스 메모리(RAM)공간수단
(CPU, 메모리, 보조기억장치, 입출력장치)

– Java의 기본 데이터 유형
비트는 0.1을 나타냅니다. (8비트 => 1바이트)

데이터 형식 크기 표현
바이트 1바이트(8비트) 존재들
짧은 2바이트(16비트) 존재들
내부 4바이트(32비트) 존재들
8바이트(64비트) 존재들
호버링 4바이트(32비트) 부동 소수점(실수)
더블 8바이트(64비트) 부동 소수점(실수)
부울 (1비트를 나타냄) 부울 논리(참, 거짓)
2바이트(16비트) 소식

– 변수 선언 방법
정수 이름;

내부 성;
데이터 형식 변수명;

– 변수 명명 규칙
문자(한글, 영문 등), _, $, 숫자 가능
하지만! 숫자로 시작할 수 없음 -> 2000name X
대문자와 소문자가 구분됩니다.
길이 제한은 없지만 공백은 허용되지 않습니다.
예약어는 변수 이름으로 사용할 수 없습니다.
(여기서 예약어는 Java에서 이미 특정 목적을 위해 지정된 문자로 데이터 유형을 포함합니다.)
변수 이름 지정은 변수에 대한 정보입니다.
영어 명사형 문자를 지정하는 것은 프로그램 코드의 가독성과 이해에 좋습니다.

사용 가능한 예 사용할 수 없음 예
123name : 숫자를 먼저 사용
$age #key : $ 및 _와 다른 기호인 #을 사용합니다.
_값 this : 예약어 this와 이름이 같습니다.
변하기 쉬운 내 이름: 내와 이름 사이의 공백

– 영구 선언
정수는 기본적으로 int 유형입니다.값의 범위에 따라 byte, short, long 타입을 사용한다.
Long형을 사용할 때는 숫자 뒤에 L 또는 l을 붙여서 Long형임을 나타냅니다.해야한다. (긴 숫자 = 300000000000000000L)
기본적으로 10진수를 사용하지만 2진수, 8진수, 16진수도 저장할 수 있습니다.
이진수: 선행 0b(byte ten2 = 0b1010;)
8진수: 선행 0(짧은 108 = 012;)
16진수: 선행 0x(int ​​ten16 = 0xA;)

– 오류 설명
실수는 부동 소수점 숫자로 표시되며 기본적으로 Double 유형입니다.값의 범위에 따라 float 유형을 사용하십시오.
플로트 유형을 사용하는 경우 숫자 뒤에 F 또는 f를 추가하여 플로트 유형임을 나타냅니다.해야한다. (부동수 = 3.1657f)
실수는 일반 표기법과 지수 표기법 모두에 사용할 수 있습니다.
이중 파이 = 3.14;
더블 케이크 = 314e-2;
=> 3.14

=> 왜 L과 F를 끝에 넣어야 합니까?
https://itbeginner2020.10
(요약하면 정수는 항상 int이고, 실수는 항상 double로 표현되기 때문에 그 뒤에 L이나 F를 지정하지 않으면 자동 타입변환이 안되고 에러가 납니다.)

– 캐릭터 설명
Java의 문자는 유니코드를 사용하고 char 유형을 사용합니다.
0~65535 범위의 정수로 표현할 수 있으므로 일종의 정수형으로 생각할 수 있다. (아래 예시에서 확인 가능)
‘A’, ‘door’, Unicode: ‘\u_ _ _ _'(뒤의 공백은 4자리 16진수)도 변수에 저장할 수 있습니다.
한글의 자음, 모음, 한글의 표기도 가능하며, 숫자로도 표기가 가능합니다.
char는 한 문자만 저장합니다.할수있다.
(“abc”나 “Canada”로 저장하면 에러가 발생하며 프로그램이 동작하지 않습니다.)

공개 클래스 예 {
공개 정적 무효 메인(String() args) {
문자 번호 = 97;
문자 cAlphabet=”a”;
char cUnicode=”\u0061″;
char cHan = ‘한’;
char cYou = ‘ㅠ’;

System.out.println(); 로 발행되는 경우
=>



하나

논리적 값설명
논리 값은 true 및 false 값을 저장하고 부울 유형을 사용하는 데 사용됩니다.
변수 선언 시 데이터 값으로옳고 그름로 저장할 수 있습니다
부울 TRUE = 참;
부울 FALSE = 거짓;
=> 발급시
진실
잘못된

– 숫자 데이터의 최소값과 최대값(.MIN_VALUE, .MAX_VALUE)

데이터 형식 최소값 최대값
바이트 바이트. MIN_VALUE 바이트. MAX_VALUE
짧은 짧은. MIN_VALUE 짧은. MAX_VALUE
내부 정수. MIN_VALUE 정수. MAX_VALUE
긴. MIN_VALUE 긴. MAX_VALUE
호버링 뜨다 MIN_VALUE 뜨다 MAX_VALUE
더블 더블. MIN_VALUE 더블. MAX_VALUE

데이터 영역은 데이터 타입에 따라 변수로 표현할 수 있는 데이터 값을 나타낸다.
데이터 범위를 초과하는 값이 변수에 저장되면 해당 변수는 정보를 제대로 표현할 수 없습니다. =과다

공개 클래스 예 {
공개 정적 무효 메인(String() args) {
바이트 x = byte.MAX_VALUE;
System.out.println(x);

x++;
System.out.println(x);
}
}
=>
127
-128

128 아님 – 128의 이유는 2의 보수와 관련이 있습니다.
쉽게 이해하면 아래 그림과 같습니다. (+1 ~ 최대값은 최소값이고 -1 ~ 최소값은 최대값입니다.)


– 데이터 유형 변환
자바에서숫자 데이터를 저장하는 변수는 서로 유형 변환될 수 있습니다.
정수 계열 형식은 실수 형식으로 변환할 수 있으며 실수 형식도 정수 계열 형식으로 변환할 수 있습니다.
데이터 유형을 변경하려면 변환할 변수 앞에 변환할 데이터 유형을 입력하십시오.()그것을 표시
데이터형 변환에서 데이터형 간 표현값이 많기 때문에,작은 범위의 데이터로 변환 시 오버플로가 발생하여 일부 데이터의 정보가 손실될 수 있습니다.
(= 데이터를 실수형에서 정수형으로 변환할 때 소수점 이하 값에 대한 데이터 정보가 유실될 수 있습니다.)

공개 클래스 예 {
공개 정적 무효 메인(String() args) {
int intNumber = 200;
이중 doubleNumber = 3.141592;

System.out.println((짧은) int 숫자);
System.out.println((바이트)intNumber);
System.out.println((int)doubleNumber);
}
}
=>
200(Short 타입의 표현공간에 있기 때문에 정보의 손실 없이 출력됩니다.)
-56(바이트 타입의 표현 범위가 아니기 때문에 정보를 상실한 상태로 출력된다.)
(실수를 정수로 변환할 때 정보의 유실이 있었고, 소수점은 버리고 출력했습니다.)
실수(표현 범위가 넓음) > 정수(표현 범위가 작음)

공개 클래스 예 {
공개 정적 무효 메인(String() args) {
int intNumber = 3/4;
더블 더블 넘버 = 3/4;

System.out.println(intNumber);
System.out.println(doubleNumber);
}
}
=>
많은 사람들은 결과가 0,0,75일 것이라고 생각했을 것입니다.
그러나 결과는
0 (정수 연산이므로 출력입니다. = 몫)
0.0
이와 같은 출력

이중 숫자 = 3/4; 0.75가 아닌 0.0
int형 3과 int형 4로 나눈 계산 결과가 int형으로 저장되기 때문이다.
값이 0.0이 되도록 두 번 인쇄됩니다.
0.75를 인쇄하려면
1) doubleNumber = 3/4에서 그 중 하나를 3.0 4.0으로 변경합니다.
2) doublenumber = (double)3/4; 또는 3/(더블)4; – ()로 유형 변환

자바에서는 데이터 유형이 다른 여러 숫자를 결합할 때 결과 값이 표현 범위가 더 큰 데이터 유형에 저장됩니다.
(실수와 정수의 연산 -> 값을 실수형으로 저장)
위의 문제는 정수/정수로 계산하여 결과를 정수로 저장하고 이 값을 double로 출력하여 결과가 0,0이 됩니다.
1)과 2)를 사용할 경우 실수/정수로 계산하여 그 결과값을 저장하여 실수로 출력하여 0.75를 준다.