[JAVA] short 타입과 byte 타입을 연산하면 어떤 결과가 나올까? [Java 연산 처리 최소 단위와 산술 변환]
·
◎ Java/Java☕
- short 타입과 byte 타입을 연산하면 어떤 결과가 나올까? Java에서 short나 byte와 같은 작은 정수형 타입은 산술 연산을 수행할 때 int 타입으로 자동으로 형변환된다. (정수형 연산 시 발생하는 오버플로우(overflow)나 언더플로우(underflow)를 방지하기 위한 것) 예를 들어, short 타입 변수 s1과 s2를 더하면 결과는 int 타입으로 자동 형변환되며, 그 결과를 다시 short 타입 변수에 대입하려면 명시적인 형변환을 수행해야 한다. [JAVA] 산술 변환(usual arithmetic conversion) [피연산자 타입 일치를 위한 자동 형변환] 1. 산술 변환(usual arithmetic conversion) 이항 연산자는 두 피연산자의 타입이 일치해야 연..
[JAVA] 산술 변환(usual arithmetic conversion) [피연산자 타입 일치를 위한 자동 형변환]
·
◎ Java/Java☕
1. 산술 변환(usual arithmetic conversion) 이항 연산자는 두 피연산자의 타입이 일치해야 연산이 가능하기에, 피연산자의 타입이 서로 다르면 연산 전에 형 변환 연산자로 타입을 일치시켜야 한다. 이를 '산술 변환(usual arithmetic conversion)'이라고 한다. 산술 변환(usual arithmetic conversion) : 두 피연산자의 타입 중 더 큰 타입으로 일치시키는 것 int i = 10; float f = 20.0f; float result = f + (float)i; // 형변환으로 두 피연산자의 타입을 일치 float result = f + i; // 산술변환으로 형변환 연산자 생략 가능 2. 산술 변환의 규칙 1. 두 피연산자의 타입을 일치시킨다.(..
[JAVA] 정수형과 실수형 간의 형 변환 [정수형을 실수형으로, 자동 형변환]
·
◎ Java/Java☕
1. 정수형과 실수형 간의 형 변환 정수형과 실수형은 저장 형식이 완전 다르기 때문에 정수형 간의 변환처럼 간단히 값을 변환할 수 없다. int : 1+31=32 (4byte) S(1) 31bit float : 1+8+23=32 (4byte) S(1) E(8) M(23) 정수형을 실수형으로 변환 정수는 소수점 이하의 값이 없으므로 비교적 변환이 간단하다. 2진수로 변환한 다음 정규화를 거쳐 실수의 저장 형식으로 저장한다. 정규화 링크 추가 실수형은 정수형보다 훨씬 큰 저장 범위를 갖기 때문에, 정수형을 실수형으로 변환하는 것은 별 무리가 없다. 단, 실수형의 정밀도의 제한으로 인한 오차가 발생할 수 있다. 91234567 ─ (float) ─> 91234568.0 ─ (int) ─> 91234568 91..