Java (2) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ [Java] ๋ถ๋์์์ ์ค์ฐจ ๊ด๋ฆฌํ๊ธฐ ๋ถ๋์์์ ์ ์ค์ฐจ์ปดํจํฐ๋ 2์ง์๋ฅผ ์ฌ์ฉํ์ฌ ์ค์๋ฅผ ๊ทผ์ฌ์น๋ก ํํํ๋ค. ๊ทธ๋์ ์๋์ ๊ฐ์ ์์ ์ค์ฐจ๊ฐ ๋ฐ์ํ ์ ์๋ค. double a = 0.2 + 0.1; System.out.println(a); // output: 0.30000000000000004 ๋ํ๊ต 1ํ๋ 1ํ๊ธฐ ๋ ๋ฐฐ์ฐ๋ ์์ ๊ฐ์ ๋ด์ฉ์ด๋ค. ์ด๊ฑธ ๋ชจ๋ฅด์ง๋ ์๋๋ค. ๊ทผ๋ฐ ์์ ๋งํ ๋์ฏค ๋ํ๋ ๋ ์์ํ๊ฒ ํ๋ค. ๊ทธ๋์ ๋ค์๋ ์ด๋ฐ ์ค์๋ฅผ ๋ฒํ์ง ์๊ฒ ๋ค๋ ์์ง๋ก ๋ถ๋์์์ ์ค์ฐจ๋ฅผ ๊ด๋ฆฌํ๋ ๋ฒ์ ์ ์ด๋ณธ๋ค.BigDecimal ์ฌ์ฉํ๊ธฐJava์์๋ BigDecimal ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ฉด ์ ํํ ์์์ ์ฐ์ฐ์ด ๊ฐ๋ฅํ๋ค. ๋จ์ ์ผ๋ก๋ ์๋๊ฐ ๋๋ฆฌ๋ค๋ ์ ๊ณผ ์ฌ์ฉ๋ฒ์ด ์กฐ๊ธ ๋ถํธํ๋ค๋ ์ ์ด ์๋ค.BigDecimal a = new BigDecimal("0.1.. [Java] BitSet BitSet BitSet์ ๋นํธ๋ค๋ก ์ด๋ฃจ์ด์ง ๋ฐฑํฐ์ด๊ณ , ๊ฐ ๋นํธ๋ ์ธ๋ฑ์ค๋ฅผ ํตํด ๊ฐ๋ณ์ ์ผ๋ก ์ ๊ทผํ ์ ์๋ค. ์ด๋ฌํ ์ ์์ boolean ๋ฐฐ์ด๊ณผ ์ ์ฌํ๋ค. ๋์ ์ผ๋ก ํฌ๊ธฐ๋ฅผ ํ์ฅํ ์๋ ์์ผ๋ฉฐ, ํ์์ ๋ฐ๋ผ์ ๋ ๋ง์ ๋นํธ๋ฅผ ์ ์ฅํ๊ธฐ ์ํด ์๋์ผ๋ก ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ๋ค. ์ด๊ธฐ๊ฐ์ false. ๋ฉ์๋๋ค์ ์ฌ๊ธฐ์: https://docs.oracle.com/javase/8/docs/api/java/util/BitSet.html BitSet vs. boolean ๋ฐฐ์ด boolean ๋ฐฐ์ด์ ๊ฐ boolean ๊ฐ์ 1๋นํธ๊ฐ ์๋ 1๋ฐ์ดํธ๋ฅผ ์ฌ์ฉํ๋ค. ์ด๋ ์ปดํจํฐ๊ฐ ๋ค๋ฃฐ ์ ์๋ ์ ๋ณด์ ์ต์ ๋จ์๊ฐ ๋ฐ์ดํธ์ด๊ธฐ ๋๋ฌธ. BitSet ํด๋์ค๋ ๋นํธ ๋จ์์ ์ฐ์ฐ์ ์ง์ํ์ฌ, ๋นํธ ๋ ๋ฒจ์์ ๋น ๋ฅธ ์ฐ์ฐ์ ์ํํ ์ ์๋๋ก ํด์ค๋ค. .. ์ด์ 1 ๋ค์