Java
2주차 과제: 자바 데이터 타입, 변수 그리고 배열(피드백, feedback)
향찡
2020. 11. 22. 00:50
(백기선 라이브 스터디)
📌 방송에서 이름이 언급되었다. ㅎ
변동사항
- close시간 변경 - 토요일 오후 3시
- 슬랙 생성
아쉬웠던점
1. 프리미티브 타입의 표현 범위가 왜 그렇게 정해 졌는지
2. unsigned에 대한 이해 (아래 링크 참고)
blog.naver.com/hsm622/222144931396
💡 int로 22억을 출력하는 방법
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
int unsigned = Integer.parseUnsignedInt("220000000");
System.out.println(Integer.toUnsignedString(unsigned));
BigInteger bigInteger = BigInteger.valueOf(220000000L);
System.out.println(bigInteger);
}
}
💡 숫자리터럴 표현할때 _로 표현 가능하다.
int number = 1_000;
System.out.println(number);
3. 변수 선언과 초기화에 대한 바이트코드
- 바이트코드에서 확인 해보자 (javap -c)
- 자바코드에서는 한줄이지만, 바이트코드에서는 최소 두줄
4. 부동소수점은 계산이 정확하지 않다.
- 특히 돈 계산 같은것은 float이나 double 쓰면안되고 BigDecimal사용해야 된다.
import java.math.BigDecimal;
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
float number = 0f;
for (int i = 0; i < 10 ; i++) {
number += 0.1f;
}
System.out.println(number); // 1.0000001
BigDecimal number2 = BigDecimal.ZERO;
for (int i = 0; i < 10 ; i++) {
number2 = number2.add(BigDecimal.valueOf(0.1));
}
System.out.println(number2); // 1.0
}
}
추천 링크
gintrie.tistory.com/61
github.com/kyu9/WS_Study/blob/master/week1/day1.md
blog.naver.com/hsm622/222144931396
https://www.notion.so/damho1104/2-38b5d67c7f5a48238529bb8f1617ea0d
ㄴ 왜 에러링크 뜨는지... 깃헙에서 봐야될듯..
프리미티브 타입과 레퍼런스 타입
velog.io/@jaden_94/2%EC%A3%BC%EC%B0%A8-%ED%95%AD%ED%95%B4%EC%9D%BC%EC%A7%80
라이프타임, 변수 언제 생성 되는지에 대해서
catsbi.oopy.io/6541026f-1e19-4117-8fef-aea145e4fc1b
타입추론 관련
https://www.notion.so/2-00ffb2aeb41d450aa446675b8a9e91d5
.
.
.
너무많다.