JAVA ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถ - JDK, IntelliJ ์ค์น ๋ฐ ๊ธฐ๋ณธ ํ๊ฒฝ ์ค์ JAVA ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ถํ๊ธฐ 1. JDK ์ค์น 2. IntelliJ IDEA ์ค์น 3. ๊ธฐ๋ณธ ํ๊ฒฝ ์ค์ 1. JDK ๋ค์ด๋ก๋ ๋ฐ ์ค์น ๋ฌด๋ฃ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ OpenJDK์ธ Amazon Correto๋ฅผ ๋ค์ด๋ก๋๋ฐ์ ์ค์นํ๋ค. ์ด ์ธ์ ๋ค๋ฅธ Vendor์ ๋ฐฐํฌํ์ ์ฌ์ฉํด๋ ๋ฌด๋ฐฉํ๋ค. Amazon Corretto๋ ๋ฌด๋ฃ๋ก ์ฌ์ฉํ ์ ์๋ Open Java Development Kit(OpenJDK)์ ํ๋ก๋์ ์ฉ ๋ฉํฐํ๋ซํผ ๋ฐฐํฌํ์ ๋๋ค. Corretto์๋ ์ฑ๋ฅ ๊ฐ์ ๋ฐ ๋ณด์ ์์ ์ฌํญ์ ๋น๋กฏํ ์ฅ๊ธฐ ์ง์์ด ํจ๊ป ์ ๊ณต๋ฉ๋๋ค. Amazon์ ๋ด๋ถ์ ์ผ๋ก ์์ฒ ๊ฐ์ ํ๋ก๋์ ์๋น์ค์์ Corretto๋ฅผ ์คํํ๋ฉฐ, Corretto๋ Java SE ํ์ค๊ณผ ํธํ๋๋ ๊ฒ์ผ๋ก ์ธ์ฆ๋์์ต๋๋ค. Corretto๋ฅผ ์ฌ์ฉํ๋ฉด Linu.. 2020. 1. 30. [JAVA] static import๋ฌธ static import๋ฌธ์ JDK1.5๋ถํฐ ์ถ๊ฐ๋ ๊ธฐ๋ฅ์ด๋ค. import๋ฌธ์ ์ฌ์ฉํ๋ฉด ํด๋์ค์ ํจํค์ง๋ช ์ ์๋ตํ ์ ์๋ ๊ฒ๊ณผ ๊ฐ์ด static import๋ฌธ์ ์ฌ์ฉํ๋ฉด static๋ฉค๋ฒ๋ฅผ ํธ์ถํ ๋ ํด๋์ค๋ช ์ ์๋ตํ ์ ์๋ค. ์ฝ๋๊ฐ ๊ฐ๊ฒฐํด์ง๊ณ ํน์ ํด๋์ค์ static ๋ฉค๋ฒ๋ฅผ ์์ฃผ ์ฌ์ฉํ ๋ ํธ๋ฆฌํ์ง๋ง ๋จ์ฉํ๋ฉด ๋ ์ด ๋ ์ ์๊ธฐ ๋๋ฌธ์ ์ฃผ์ํด์ผ ํ๋ค. import static java.lang.Integer.*;// Integer ํด๋์ค์ ๋ชจ๋ static ๋ฉค๋ฒ import static java.lang.Math.random;// Math.random()๋ง import. ๊ดํธ๋ ๋ถ์ด์ง ์๋๋ค. import static java.lang.System.out;// ์ด๋ ๊ฒ ํ๋ฉด System.out์ out.. 2020. 1. 29. [JAVA] ๋๋ค์(Lambda Expression) ๋๋ค์(Lambda Expression) JDK1.8๋ถํฐ ์ถ๊ฐ๋จ ๋๋ค์์ ๋์ → ์๋ฐ = ๊ฐ์ฒด์งํฅ ์ธ์ด + ํจ์ํ ์ธ์ด โป ๊ฐ์ฒด์งํฅ ์ธ์ด์ ํจ์ํ ์ธ์ด๋? ๊ฐ๊ฐ ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ ์ง์ํ๋ ์ธ์ด์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ ์ง์ํ๋ ์ธ์ด ๊ฐ์ฒด์งํฅ ํจ๋ฌ๋ค์ ๊ฐ์ ๋ฐ์ดํฐ์ ๋ํด ๋ค๋ฅธ ์ฒ๋ฆฌ ์ ์ฐจ(๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐฉ์)๋ฅผ ์ฌ๋ฌ ๊ฐ ๋ช ์ํด์ผ ํ๋ ๊ฒฝ์ฐ๊ฐ ์์ฃผ ๋ฐ์ํ๋๋ฐ, ์ด ๋ ๊ณตํต๋ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ์ ์ฐจ๋ฅผ ํ๋๋ก ๋ฌถ์ด ๋ฐ์ดํฐ์ ์ฌ๋ฌ ์ ์ฐจ๋ฅผ ํ๋์ ๋จ์๋ก ๋ค๋ฃจ๋ ํจ๋ฌ๋ค์์ด๋ค. ํจ์ํ ํจ๋ฌ๋ค์ ์ฃผ์ด์ง ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ผ๋ก ๊ฐ์ฃผํ๊ณ ์๋ก์ด ๊ฐ์ ์์ฑํ๋ ํจ์์ ์ด์ ์ ๋ง์ถค์ผ๋ก์จ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ์ ๋ํ ๋ถ๋ด์ ์ ๊ฑฐํ๋ค. 1. ๋๋ค์์ด๋? ๋ฉ์๋๋ฅผ ํ๋์ ๊ฐ๊ฒฐํ ์(expression)์ผ๋ก ํํํ ๊ฒ ๋ฉ์๋๋ฅผ .. 2020. 1. 23. [JAVA] IntelliJ IDEA - try-catch๋ฌธ ๋ฑ์ ์ฝ๋ ๋ธ๋ญ ์๋ ์ฝ์ ๋ฐฉ๋ฒ ์์ธ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด try-catch๋ฌธ์ ์์ฑํด์ผ ํ ๋, ํ๋ ํ๋ ์์ ์์ฑํ๋ ค๋ฉด ์ฌ๊ฐ ๊ท์ฐฎ์๊ฒ ์๋๋ค. ๋ฌผ๋ก IntelliJ์ ๊ฐ์ IDE์์๋ ์ด๋ฐ ๊ธฐ๊ณ์ ์ธ ์์ ์ ์๋ ์์ฑ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. ์ด๋ฐ ๊ธฐ๋ฅ๋ค์ ์์๋๋ฉด ํจ์ฌ ๋น ๋ฅด๊ฒ ์ฝ๋ฉํ ์ ์๊ณ ๋ ์ค์ํ ๋ถ๋ถ์ ์ง์คํ ์ ์๊ธฐ ๋๋ฌธ์ ์์ ์ตํ๋๋๊ฒ ์ข๋ค. 1. ์์ญ ์ ํ try-catch๋ฌธ์ผ๋ก ๊ฐ์ ์์ญ์ ์ ํํ๋ค. 2. Code - Surround With... ๋ฉ๋ด ํด๋ฆญ (Crtl + Alt + T / โฅ โ T) Code - Surround With... ๋ฉ๋ด๋ฅผ ํด๋ฆญํ๋ค. ๋จ์ถํค๋ ์๋์ฐ๋ Crtl + Alt + T ๋งฅ์ โฅ โ T์ด๋ค. 3. ๊ฐ์ ์ฝ๋ ๋ธ๋ญ์ ์ ํํ๋ค. ์ฌ๊ธฐ์๋ try / catch ํด๋ฆญํ๊ฑฐ๋ ์์ 1. 2. 3. ๊ณผ .. 2020. 1. 19. [JAVA] IntelliJ IDEA - ํ๋ก๊ทธ๋จ ์คํ argument ์ค์ ๋ฐฉ๋ฒ Run - Edit Configurations... ํด๋ฆญ Program arguments์ ์คํ argument๋ฅผ ์ ๋ ฅํ๊ณ ์ค์ ์ ์ ์ฅํ๋ค ์คํ(run)ํ๋ค. ๋๋ ๋จ์ถํค Alt + Shift + F10์ ๋๋ฌ ํด๋นํ๋ ํ๋ก๊ทธ๋จ์ run configuration ์ค์ ์ ๋ณ๊ฒฝํ ์ ์๋ค. [IntelliJ IDEA] ๋ง์ถค๋ฒ, ์คํ ๋ง ์ฒดํฌ ํด์ ๋ฐฉ๋ฒ [IntelliJ IDEA] ๋ง์ถค๋ฒ, ์คํ ๋ง ์ฒดํฌ ํด์ ๋ฐฉ๋ฒ Spellchecker๋ ์ฝ๋์ ์คํ๋ฅผ ์ฐพ๊ณ ๊ณ ์น๋๋ฐ ๋์์ ์ฃผ์ง๋ง, ํ๊ธ์ ๊ฒฝ์ฐ ์คํ๊ฐ ์๋๋ฐ๋ ์๋ฌธ๊ณผ ๋ถ์ด์์ ๊ฒฝ์ฐ ๋ฐ์ค์ด ์๊ฒจ ๋ณด๊ธฐ์ ์ข์ง ์๋ค. Spellchecker๊ฐ ์ฃผ์์ ๊ฒ์ฌํ์ง ์๋๋ก ์ค์ ์ ํด์ ํ๋ฉด ๋๋ค... atoz-develop.tistory.com [JAVA] IntelliJ I.. 2020. 1. 18. [IntelliJ IDEA] ๋ง์ถค๋ฒ, ์คํ ๋ง ์ฒดํฌ ํด์ ๋ฐฉ๋ฒ Spellchecker๋ ์ฝ๋์ ์คํ๋ฅผ ์ฐพ๊ณ ๊ณ ์น๋๋ฐ ๋์์ ์ฃผ์ง๋ง, ํ๊ธ์ ๊ฒฝ์ฐ ์คํ๊ฐ ์๋๋ฐ๋ ์๋ฌธ๊ณผ ๋ถ์ด์์ ๊ฒฝ์ฐ ๋ฐ์ค์ด ์๊ฒจ ๋ณด๊ธฐ์ ์ข์ง ์๋ค. Spellchecker๊ฐ ์ฃผ์์ ๊ฒ์ฌํ์ง ์๋๋ก ์ค์ ์ ํด์ ํ๋ฉด ๋๋ค. File - Settings๋ฅผ ํด๋ฆญํด ์ค์ ์ฐฝ์ ์ด๊ณ Editor - Inspections - Spelling - Typo์์ Process comments์ ์ฒดํฌ๋ฅผ ํด์ ํ๋ค. ์ฝ๋, ๋ฆฌํฐ๋ด์์๋ Spellchecker๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ ค๋ฉด Process code, Process literals์ ์ฒดํฌ๋ฅผ ํด์ ํ๋ฉด ๋๋ค. [JAVA] IntelliJ IDEA - Project language level ์ค์ ์ ์๋ฏธ [JAVA] IntelliJ IDEA - Project language l.. 2020. 1. 17. [JAVA] Array -> List, Set ๋ณํ ๋ฐฉ๋ฒ Arrays.asList() Arrays ํด๋์ค์ asList() ๋ฉ์๋๋ list ๊ฐ์ฒด๋ก collection์ ์ด๊ธฐํํ๋๋ฐ ํธ๋ฆฌํ ๋ฐฉ๋ฒ์ ์ ๊ณตํด์ค๋ค. ์ฐธ๊ณ ๋ก Java 8 ๊ธฐ์ค์ผ๋ก ์์ง java์๋ set, map์ literal์ด ์๋ค. ๋ค์์ String ๋ฐฐ์ด์ List์ Set์ผ๋ก ๊ฐ๊ฐ ๋ณํํ๋ ์์ด๋ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Set wordsSet = new HashSet(); String sentence = "once upon a time in hollywood"; String[] arrayWords = sentence.split(" "); // Array -> List List wordsList = Arrays.asList(a.. 2020. 1. 15. [JAVA] List ๊ฐ์ฒด ๋ณต์ฌ ๋ฐฉ๋ฒ๊ณผ Collections.copy()์ ๊ดํ ๊ณ ์ฐฐ Card ํด๋์ค ์ ์ 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 public class Card { private int front; // ์นด๋ ์๋ฉด ๋ฌธ๊ตฌ(์ซ์) private String back; // ์นด๋ ๋ท๋ฉด ๋ฌธ๊ตฌ(๋ฌธ์์ด) private boolean isFront; // ์นด๋ ์/๋ท๋ฉด ์ฌ๋ถ public Card(int front, String back) { this.front = front; this.back = back; this.isFront = true; } // ์นด๋์ ์/๋ท๋ฉด ์ฌ๋ถ์ ๋ฐ๋ฅธ ํ์ฌ ๋ฌธ๊ตฌ ๋ฐํ public String.. 2020. 1. 9. [JAVA] IntelliJ IDEA - Project language level ์ค์ ์ ์๋ฏธ IntelliJ IDEA์ Project Structure ์ฐฝ์์ Project SDK, Project language level ์ค์ ์ ์ฐพ์ ์ ์๋ค. โป ์ฐธ๊ณ - Project Structure ์๋จ ๋ฉ๋ด์ File - Project Structure ํด๋ฆญ ํน์ ๋จ์ถํค Ctrl + Alt + Shift + S (์๋์ฐ ๊ธฐ์ค) Project language level์ ์ค์ ๋ก ๋ฌด์์ ์ค์ ํ๋๊ฐ? Project language level์ IntelliJ์ editor(ํธ์ง๊ธฐ)์ java compiler๊ฐ ์ฌ์ฉํ language level์ ์ค์ ํ๋ค. ์๋ฅผ ๋ค์ด, JDK 1.7์ ์ฌ์ฉํ๊ณ ์์ง๋ง java ์ฝ๋๊ฐ JDK 1.6๊ณผ ํธํ๋๋๋ก ํ๋ ค๋ฉด language level์ ์ค์ JDK ์ง์(JDK 1.7.. 2020. 1. 7. [JAVA] IntelliJ IDEA - jar ํ์ผ export, import ๋ฐฉ๋ฒ 1. JAR ํ์ผ Export ์ ์์ ํ๋ก์ ํธ์ JarExample ๋ชจ๋์ jar ํ์ผ๋ก export ํ๋ คํ๋ค. IntelliJ๋ ํ ํ๋ก์ ํธ ์์ ๋ค์์ ๋ชจ๋์ ๊ฐ์ง ์ ์๋ค. ์ง๊ธ์ ํ๋์ ๋ชจ๋๋ง์ ๊ฐ๊ณ ์๋ ์ํ์ด๋ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Player{name='Tim', hitPoints=10, strength=15, weapon='Sword'} Saving Tim to storage device Saving 10 to storage device Saving 15 to storage device Saving Sword to storage device Player{name='Tim', hitPoints=8, strength=15, weapon='.. 2020. 1. 5. [JAVA] IntelliJ IDEA ์ฌ์ฉ ํ - Auto import ์ต์ ์ค์ File - Settings๋ฅผ ํด๋ฆญํ์ฌ ์ธํ ๋ฆฌJ ์ธํ ์ฐฝ์ ๋์ด๋ค. ๋จ์ถํค๋ Ctrl + Alt + S์ด๋ค. Editor - General - Auto Import์์ ๊ด๋ จ ์ต์ ๋ค์ ์ค์ ํ ์ ์๋ค. ์ด ์ค ์ฝ๋ ๋ณ๊ฒฝ๊ณผ ์ฝ๋ ๋ถ์ฌ๋ฃ๊ธฐ์ ๋ฐ๋ฅธ ์๋ import ์ต์ ์ ๋ํด ์ดํด๋ณด๋๋ก ํ๊ฒ ๋ค. ์ฝ๋ ๋ณ๊ฒฝ์ ๋ฐ๋ฅธ ์๋ import ์ต์ Optimize imports on the fly ์ต์ ์ ์ฝ๋๊ฐ ๋ณ๊ฒฝ๋จ์ ๋ฐ๋ผ ์๋์ผ๋ก ํจํค์ง import๋ฌธ์ ์ฝ์ /์ญ์ ํด์ฃผ๋ ์ต์ ์ด๋ค. ํ์ํ ํจํค์ง๋ ์๋์ผ๋ก ์ฝ์ ํ๊ณ ๋ถํ์ํ ํจํค์ง๋ ์๋์ผ๋ก ์ญ์ ํ๋ค. ํธ๋ฆฌํ ๊ธฐ๋ฅ์ด๋ฏ๋ก ํน๋ณํ ์ด์ ๊ฐ ์๋๊ฒ ์๋๋ผ๋ฉด ์ฒดํฌํ์ฌ ์ผ๋๋๊ฒ ์ข๋ค. ์ฝ๋ ๋ถ์ฌ๋ฃ๊ธฐ ์ import ์ต์ Insert imports on paste ์ต์ ์ ์ฝ๋๋ฅผ ๋ถ์ฌ.. 2020. 1. 3. JAVA 8 ๋ณ๊ฒฝ ์ฌํญ - interface์ default ํค์๋์ static ๋ฉ์๋ Java์์ ๊ธฐ์กด์ interface๋ ์ถ์ ๋ฉ์๋๋ง์ ๋ฉค๋ฒ๋ก ๊ฐ์ง ์ ์์๋ค. ๊ทธ๋ฐ๋ฐ Java8๋ถํฐ default ํค์๋๋ฅผ ์ฌ์ฉํด์ interface์ ๋ฉ์๋๋ฅผ ์ ์ธํ ์ ์๊ฒ ๋์๋ค. default ํค์๋ 1 2 3 4 5 6 7 8 9 10 public interface ICalculator { int add(int x, int y); int sub(int x, int y); default int mul(int x, int y) { return x * y; } } Colored by Color Scripter cs ๋ฉ์๋๋ฅผ default ํค์๋๋ฅผ ์ฌ์ฉํด ์ ์ธํจ์ผ๋ก์จ ๋ฉ์๋์ body, ์ฆ ๊ตฌํ๋ถ๋ฅผ ์์ฑํ ์ ์๊ฒ ๋์๋ค. ์ ์์๋ ์ธ ๊ฐ์ ๋ฉ์๋๋ฅผ ๋ฉค๋ฒ๋ก ๊ฐ๋ ICalculator interfac.. 2020. 1. 2. ์ด์ 1 ยทยทยท 12 13 14 15 16 17 ๋ค์