- ์๋ฐ์คํฌ๋ฆฝํธ๋
๋ค์ด๋ฒ, ๊ตฌ๊ธ๊ณผ ๊ฐ์ ์น ํ์ด์ง๋ฅผ ๋์ ์ผ๋ก ๋ง๋ค๊ธฐ ์ํด ๊ฐ๋ฐ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด - ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ๋ ์์ํฌ์ ์ฐจ์ด๋?
1) ๋ผ์ด๋ธ๋ฌ๋ฆฌ : ๊ฐ๋ฐ์๊ฐ ํน์ ๊ธฐ๋ฅ์ ์ํํ ์ ์๋๋ก ์ ๊ณตํ๋ ๋๊ตฌ ๋ชจ์, ํ์ํ ๋ ํธ์ถํด์ ์ฌ์ฉํ ์ ์๋ค. Numpy, Pandas ๋ฑ์ด ์์
2) ํ๋ ์์ํฌ : ์ ์ฒด ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์ ์ํ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ์ ๊ณต, ๊ฐ๋ฐ์๊ฐ ๊ทธ ํ ์์์ ํ์ํ ์ฝ๋๋ฅผ ์์ฑ - ์๋ฐ์คํฌ๋ฆฝํธ์ ํ์
๋ถ๋ฅ?
1) ์์ ํ์ ์๋ฃํ : ํ๋ก๊ทธ๋จ์ด ์คํ๋๋ ๋์ค์ ๋จ ํ๋์ ๊ฐ๋ง ๊ฐ์ง๋ SYMBOLํ : BigInt, ๋ฌธ์, boolean, null, undefined
2) ๋น์์ ํ์ ์๋ฃํ : ํ ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ ๊ฐ์ ๊ฐ์ง๋ ํ์ : ๊ฐ์ฒด, ํจ์, ๋ฐฐ์ด - Infinity์ Nan์ ๋ํด์ ์ค๋ช
?
1) Infinity : ๋ฌดํ๋๋ฅผ ๋ํ๋ด๋ ๊ฐ์ผ๋ก, ์ด๋ ์ซ์๋ ์ง 0์ผ๋ก ๋๋๋ ๊ฒฝ์ฐ ๋ฐํ๋๋ ๊ฐ์ด๊ธฐ๋ ํ๋ค
2) NaN : ์ซ์๊ฐ ์๋๋ผ๋ ์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ์๊ณ ๋ฌธ์์ด์ ์ซ์๋ก ๋๋๋ ๊ฒ๊ณผ ๊ฐ์ด ๋ถ์ ํํ ์ฐ์ฐ์ ํ ๊ฒฝ์ฐ ๋ฐํ๋๋ ๊ฐ๊ฐ์ ๊ฒฝ์ฐ์ด๋ค - null๊ณผ undefined์ ์ฐจ์ด์ ๋ํด์ ์ค๋ช
?
1) null : ์ค์ง null ๊ฐ๋ง ํฌํจํ๋ ์๋ฃํ์ผ๋ก ์ฌ์ฉ๋๊ณ ์กด์ฌํ์ง ์๊ฑฐ๋ ์ ์ ์๋ ๊ฐ์ ๋ํ๋ผ ๋ ์ฌ์ฉ
2) undefined : ๋ณ์์ ๊ฐ์ด ํ ๋น๋์ง ์์ ์ํ์ผ ๋ ์๋์ผ๋ก undefined ๊ฐ์ด ํ ๋น๋จ! - === ์ฐ์ฐ์์ == ์ฐ์ฐ์์ ์ฐจ์ด์ ?
1) === ์ฐ์ฐ์ : ๋ ๊ฐ๊ณผ ๋ ๋ณ์์ ์๋ฃํ๊น์ง ๊ฐ์์ง๋ฅผ ๋น๊ตํ๋ ์ฐ์ฐ์
2) == ์ฐ์ฐ์ : ๋ ๊ฐ์ ์๋ฃํ์ ๋น๊ตํ์ง ์๊ณ , ์ค์ง ๊ฐ์ด ์ผ์นํ๋์ง๋ฅผ ๋น๊ตํ๋ ์ฐ์ฐ์ - let๊ณผ var์ ์ฐจ์ด์ +const?
1) let
- ์ฌํ ๋น ๊ฐ๋ฅ ์ฌ๋ถ : ๊ฐ๋ฅ
- ์ค์ฝํ : ๋ธ๋ก ์ค์ฝํ
- ํธ์ด์คํ : ์ ์ธ๋ง ํธ์ด์คํ ๋๋ฉฐ TDZ ์ ์ฉ
- ์ด๊ธฐํ ํ์ ์ฌ๋ถ : ์ ํ
- ์ถ์ฒ ์ํฉ : ๊ฐ์ด ๋ณ๊ฒฝ๋ ๊ฐ๋ฅ์ฑ์ด ์์ ๋
2) var
- ์ฌํ ๋น ๊ฐ๋ฅ ์ฌ๋ถ : ๊ฐ๋ฅ
- ์ค์ฝํ : ํจ์ ์ค์ฝํ
- ํธ์ด์คํ : ์ ์ธ๊ณผ ์ด๊ธฐํ ๋ชจ๋ ํธ์ด์คํ ๋จ
- ์ด๊ธฐํ ํ์ ์ฌ๋ถ : ์ ํ
- ์ถ์ฒ ์ํฉ : ์ฌ์ฉ ๋น์ถ์ฒ(์ค๋๋ ๋ฐฉ์)
3) const
- ์ฌํ ๋น ๊ฐ๋ฅ ์ฌ๋ถ : ๋ถ๊ฐ๋ฅ
- ์ค์ฝํ : ๋ธ๋ก ์ค์ฝํ
- ํธ์ด์คํ : ์ ์ธ๋ง ํธ์ด์คํ ๋๋ฉฐ TDZ ์ ์ฉ
- ์ด๊ธฐํ ํ์ ์ฌ๋ถ : ์ ์ธ ์ ๋ฐ๋์ ์ด๊ธฐํ ํ์
- ์ถ์ฒ ์ํฉ : ๊ฐ์ด ๋ณ๊ฒฝ๋์ง ์์์ผ ํ ๋ - ํธ์ด์คํ
์ด๋?
์์ง ์ ์ธ๋์ง ์์ ํจ์๋ ๋ณ์๋ฅผ ํด๋น ์ค์ฝํ์ ๋งจ ์๋ก ๋์ด์ฌ๋ ค์ ์ฌ์ฉํ๋ ๊ฒ์ฒ๋ผ ๋ณด์ด๊ฒ ํ๋ js์ ๋์ ๋ฐฉ์ - ๊ตฌ์กฐ๋ถํดํ ๋น์ด๋?
๋ฐฐ์ด ์์๋ ๊ฐ์ฒด์ ํ๋กํผํฐ๋ฅผ ๋ถํดํด์ ๊ทธ ๊ฐ๋ค์ ๊ฐ๊ฐ์ ๋ณ์์ ํ ๋นํ๋ ์๋ฐ์คํฌ๋ฆฝํธ ํํ์('...'๊ธฐํธ๋ฅผ ์ฌ์ฉ) - spread์ rest
1) spread
- ํน์ ๋ฐฐ์ด์ ์์๋ ๊ฐ์ฒด์ ํ๋กํผํฐ ๊ฐ์ ํผ์น๋ ์ญํ ์ ํ๋ค
- ๋์ผํ ์ฝ๋๋ฅผ ์ฌ๋ฌ ๋ฒ ์์ฑํด์ผ ํ๋ ๊ณผ์ ์์ ์ฝ๋๋ฅผ ๋์ฑ ๊ฐ๋จํ๊ฒ ์์ฑํ ์ ์๋ค
- ์์์ ์๊ด์์ด ์ฌ๋ฌ ๋ฒ ๋ฐ๋ณตํด์ ์ฌ์ฉํ ์ ์๋ค
2) rest
- ํน์ ๋ถ๋ถ์ ํ๋์ ๋ฐฐ์ด์ด๋ ๊ฐ์ฒด๋ก ๋ฌถ๋ ์ญํ ์ ํ๋ ๋ฌธ๋ฒ
- ๊ฐ์ฒด์์ rest๋ ๊ตฌ์กฐ ๋ถํด ํ ๋น๊ณผ ํจ๊ป ์ฌ์ฉ๋๋ฉฐ, ์ํ๋ ๊ฐ๋ค์ ๊บผ๋ด๊ณ ๋๋จธ์ง ๊ฐ์ ๋ณ๋๋ก ๋ฌถ์ด์ ํ ๋นํ ์ ์๋ค
- rest ๋ฌธ๋ฒ์ spread์๋ ๋ค๋ฅด๊ฒ ์์์ ์๊ด์์ด ์ฌ๋ฌ๋ฒ ์์ฑํ ์ ์๊ณ , ํญ์ ๋งจ ๋ง์ง๋ง์ ์์ฑํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์ฃผ์ํด์ ์์ฑํด์ผ ํ๋ค - promise ๊ฐ์ฒด๋?
- js์์ ํน์ ์์ ์ ๋น๋๊ธฐ๋ก ์ฒ๋ฆฌํ ๋ ์ฌ์ฉํ๋ ๊ฐ์ฒด
- ํ๋ก๋ฏธ์ค ๊ฐ์ฒด๋ ๊ฐ์ฒด ์์ฑ ์ ์ธ์๋ก excutor๋ผ๋ ์คํ ํจ์๋ฅผ ์ ๋ฌํ๊ณ , ์คํ ํจ์์๋ ๋งค๊ฐ๋ณ์๋ก resolve์ reject๋ผ๋ ์ฝ๋ฐฑํจ์๋ฅผ ์ ๋ฌํ๋ค
- ํ๋ก๋ฏธ์ค ๊ฐ์ฒด๊ฐ ์์ฑ๋จ๊ณผ ๋์์ excutor๊ฐ ์คํ๋๊ณ , excutor์์ ์ํ๋ ์์ ์ด ์ฒ๋ฆฌ๋๋ค
- ํ๋ก๋ฏธ์ค ๊ฐ์ฒด์ excutor๋ ์์ ์ฒ๋ฆฌ์ ์ฑ๊ณ ์ฌ๋ถ์ ๋ฐ๋ผ ์ฑ๊ณตํ์ ๊ฒฝ์ฐ resolve, ์คํจํ์ ๊ฒฝ์ฐ reject๊ฐ ํธ์ถ๋๋ค - async & await๋?
1) async
- "๋น๋๊ธฐ ์์ ์ ์ฝ์(Promise)ํ๋ ํจ์"๋ฅผ ํ์ํ๋ ๊ฐํ ๊ฐ์ ์ญํ ์ ๋๋ค.
- ๊ฐํ(async)์ ๋ณด๋ฉด "์ด ํจ์๋ ๋์ค์ ๊ฒฐ๊ณผ๋ฅผ ์ค ๊ฑฐ์ผ"๋ผ๊ณ ์ ์ ์์ต๋๋ค.
- ํจ์์ async๋ฅผ ๋ถ์ด๋ฉด ์๋์ผ๋ก Promise๋ฅผ ๋ฐํํฉ๋๋ค.
- ๋น๋๊ธฐ ์์ ์ ํฌํจํ๊ณ ์๋ ํ๋ก๋ฏธ์ค ๊ฐ์ฒด๋ฅผ ๋ฐํํ๋ ํจ์์ ์์ฑํ๋ ํค์๋์ด๊ธฐ๋๋ฌธ์, async๋ฅผ ์์ฑํ๋ฉด ์ฝ๋๋ฅผ ๋ ์ง๊ด์ ์ผ๋ก ํด์ํ ์ ์๋ค
2) await
- async ํจ์ ์์์๋ง ์ฌ์ฉํ ์ ์๋ ํค์๋๋ก, ๋น๋๊ธฐ ์์ (Promise)์ด ๋๋ ๋๊น์ง ๊ธฐ๋ค๋ ธ๋ค๊ฐ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํฉ๋๋ค.
- await๋ ๋ง์น ์๋น์์ ์์์ด ๋์ฌ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๋ ์๋๊ณผ ๊ฐ์๋ฐ, ์๋์ ์์์ ๊ธฐ๋ค๋ฆฌ์ง๋ง, ์์์ด ๋์ฌ ๋๊น์ง ๋ค๋ฅธ ์ฌ๋๊ณผ ๋ํ๋ฅผ ํ ์๋ ์์(๋น๋๊ธฐ ์์ ) - JSON์ด๋?
- ๋ฐ์ดํฐ๋ฅผ ํ ์คํธ ํ์์ผ๋ก ์ ์ฅํ๊ณ ๊ตํํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๊ฐ๋ณ๊ณ ์ฝ๊ธฐ ์ฌ์ด ๋ฐ์ดํฐ ํฌ๋งท
- ์น ์ ํ๋ฆฌ์ผ์ด์ ์์ ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ ๋ ์ฌ์ฉ
- JSON์ JavaScript ๋ฌธ๋ฒ์ ๊ธฐ๋ฐ์ผ๋ก ํ์ง๋ง, Python, Java, C++, PHP ๋ฑ ๊ฑฐ์ ๋ชจ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์์ ์ฌ์ฉ ๊ฐ๋ฅ
- ํค-๊ฐ ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ํํ - DOM์ด๋?
- ์๋ฐ์คํฌ๋ฆฝํธ๋ DOM์ ํตํด ์น ํ์ด์ง ์์์ ์ ๊ทผํ ์ ์๋ค
- DOM์ ์ฌ์ฉํ๋ฉด HTML ๋ฌธ์๋ฅผ ๋์ ์ผ๋ก ์์ , ์ถ๊ฐ, ์ญ์ ํ๊ณ ์ฌ์ฉ์์ ์ํธ์์ฉํ ์ ์์ต๋๋ค.
- ์ฃผ์ ๊ฐ์ฒด: document, Node, ์์ ๋ ธ๋ ๋ฑ
- ์ฃผ์ ๋ฉ์๋: getElementById, querySelector, createElement, appendChild ๋ฑ
- DOM์ ์น ํ์ด์ง๋ฅผ ํธ๋ฆฌ ๊ตฌ์กฐ๋ก ํํํ๋ฉฐ, JavaScript๋ฅผ ํตํด ๋์ ์ผ๋ก ์กฐ์ํ ์ ์๋ ์ธํฐํ์ด์ค์ ๋๋ค. - ๋ก์ปฌ ์คํ ๋ฆฌ์ง๋?
- ์น ๋ธ๋ผ์ฐ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ ์ ์ฅ์์ ๊ฐ์ ๊ธฐ๋ฅ
- ๋ก์ปฌ ์คํ ๋ฆฌ์ง๋ฅผ ์ฌ์ฉํ๋ฉด ์ฌ์ฉ์๊ฐ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ข ๋ฃํ๋๋ผ๋ ๊ธฐ์กด์ ์น ํ์ด์ง ๋ด์์ ์ ์ฅํ ๋ฐ์ดํฐ๋ฅผ ๊ณ์ ์ ์งํ ์ ์๋ค
- ๋ก์ปฌ ์คํ ๋ฆฌ์ง๋ ํ ์คํธ ๋ฐ์ดํฐ๋ง ์ ์ฅํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ฐ์ฒด ํน์ ๋ฐฐ์ด ํํ์ ๋ฐ์ดํฐ๋ฅผ ๋ก์ปฌ ์คํ ๋ฆฌ์ง์ ์ ์ฅํ๋ ค๋ฉด ๋ฐ์ดํฐ๋ฅผ ๋ฌธ์์ด๋ก ๋ณํํด์ผ ํ๋ค
- JSON ๊ฐ์ฒด์๋ ํน์ ๋ฌธ์์ด์ ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด๋ก ๋ณํํ๋ JSON.parse(), ํน์ ๊ฐ์ฒด๋ฅผ JSON ํํ๋ก ๋ณํํ๋ JSON.stringify() ๋ฉ์๋๊ฐ ์๋ค
ํ๋ก๊ทธ๋๋ฐ ์ธ์ด
- JavaScript ๋ฉด์ ์์ ์ง๋ฌธ? 2025.01.06
- java ์ ๋ฌธ๋ฐ 1์ฃผ์ฐจ 2024.11.15 3
- ์ธํผ_๋น์ ๊ณต ์๋ฐ ๋๊ฐ3. ํด๋์ค์ ๊ฐ์ฒด(์๋ฐ์ ๊ฝ?) 2023.09.29
- java๊ฐ๋ ์ด๋ชจ์ ๋ชจ.. 2023.09.24 1
- ์๋ฐ - ์ ์ด๋ฌธ ์ดํดํ๊ธฐ๐ค 2023.09.21
- ์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ2 2023.09.13
- ์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ๐ฎ 2023.09.08
- ์๋ฐ ์์ํ๊ธฐ ๐ข 2023.09.05 1
JavaScript ๋ฉด์ ์์ ์ง๋ฌธ?
java ์ ๋ฌธ๋ฐ 1์ฃผ์ฐจ
(ํ์์ผ)
- github ์ด์ ์์ฑํด์ jira๋ ์ฐ๋ ์ค์ตํ๊ธฐ(?)
- README.md ํ์ผ์์ md๋...? markdown ํ์ผ์ด๋ผ๋ ๋ป (์น ํ์ด์ง ๊ธ์ฌ๋ฆด ๋ ์ฐ์)
Todo : ์ด์ ์งํ ์ ์ํ
In Progress : ๋ด๋น์๊ฐ ์ด์๋ฅผ ํ์ธํ๊ณ ์งํ์ค์ธ ์ํ
In Review : ๊ฒํ ๋ฅผ ์์ฒญ/์งํ ์ค์ธ ์ํ(์ค๊ฐ์ ๊ฒํ ๋จ๊ณ๋ฅผ ๋ฃ๋๊ฒ ์์ฆ ๊ทผํฉ)
Done : ์๋ฃ ๋ฐ ์ข ๋ฃ๋ ์ํ
ํ๋ก์ ํธ ๋ชฉํ : ์ ํด์ง ๋น์ฉ๊ณผ ๊ธฐ๊ฐ๋ด์์ ์ด๋ป๊ฒ ํ๋ฉด ํ์ง์ ๋์ด๋ฉด์ ๋ง๋ฌด๋ฆฌํ ์ ์์๊ฑด์ง...
- R&R : Role & Responsibility (pm์ด๋ผ๋ฉด ํ๋ก์ ํธ ๊ด๋ฆฌ๋ฅผ ์ํ ์ฑ ์)
- wbs ์ค์ต์ ๋ด์ผ!!
- ์ํ๊ณผ ์ด์์ ์ฐจ์ด : ์ํ(potential problem)์ ์์ง ์ ์ฌ์ ๋ฌธ์ ๋ก ์์ง ์ผ์ด๋์ง ์์ ๊ฒ์ด๊ณ ์ด์๋ ์ผ์ด๋ ๋ฌธ์ ๋ก ์ค์ ๋ก ์ผ์ด๋ ์ด์๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด ์ํ์ ๋ฐฉ์งํด์ผํ๋ค!
- ์ํ๊ณผ ๊ด๋ จ๋์ฉ์ด : ๋ฐ์ ๊ฐ๋ฅ์ฑ๊ณผ ๋ฐ์ํ์๋์ ์ฌ๊ฐ๋(์ํ๋)๋ฅผ ๊ณฑํ๊ฒ์ด ์ํ๋.. ๋์๊ฒ์ด ์ฐ์ ์์๋ก ์ ํด์ง๊ณ ์ด๋ฅผ ๋๋นํ๊ธฐ ์ํด ์ฒ ์ ํ๊ฒ ๊ณํ์ ์ธ์์ผํ๋ค
(์์์ผ)
- wbs ๋ง๋ค๊ธฐ
๋ฒ ์ด์ค ๋ผ์ธ : ํน์ ์์ ์์ ํ์ํ ํ์ผ๋ค์์ ํํ ์ฌ์ฉํ ์ ์๊ฒ ํด์ฃผ๋ ์์ ..
- ์ด๋ค ์๊ตฌ์ฌํญ ๋ช ์ธ์๋ฅผ ๋ฐ์ํ๋ ์์ค์ฝ๋์ธ๊ฑด์ง๋ฅผ ์๊ธฐ ์ ๋งคํ๋ฏ๋ก ์ด๋ค ์ฐ์ถ๋ฌผ์ ๊ธฐ์ค์ผ๋ก ๊ฐ๋ฐํ๊ฑด์ง๋ฅผ ์๊ธฐ ์ํด ์ ์ด ๋์๊ฒ์ด baseline..
- ์ด๋ค ์๊ตฌ์ฌํญ ๋ช ์ธ์์ ์ค๊ณ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ฐ๋ฐํ ๊ฑด์ง๋ฅผ ํ์ธํ๊ณ ๊ฐ๋ฐํด์ผํ๋ค!
- ์ํํธ์จ์ด ํ์ ํต์ : ํ์ํต์ ์์ํ์์ ๋ณ๊ฒฝ ์์ฒญ์ ์์ฉํ ๊ฒ์ธ์ง ํ๊ฐํ๊ณ ํ์ํ๋ ๊ณผ์ (CCBํํ ํต๊ณผ ๋ฐ์์ผ ์ ๋ฐ์ดํธ ๊ฐ๋ฅ)
์๊ตฌ์ฌํญ ๋ช ์ธ์(SW Requirement Specification) : ๋ฌด์์ ๊ฐ๋ฐํ ๊ฑด์ง์ ์ด์ ์ ๋ง์ถ๋ค! (์ด๋ค ๊ธฐ๋ฅ์ ์ ๊ณตํ ๊ฒ์ธ์ง, ์ด๋ค ํ์ง๋ก / ์ด๋ป๊ฒ๋ ์ค๊ณ์์ ๋ค์ด๊ฐ๋๋ค..)
- ์์คํ (SYSRS)
- ์ํํธ์จ์ด(SWRS)
- ํ๋์จ์ด(HWRS)
๊ธฐ๋ฅ vs ๋น๊ธฐ๋ฅ
- ๊ธฐ๋ฅ : ์ฐ ๊ธฐ๋ฅ
- ๋น๊ธฐ๋ฅ : ํ์ง, ์ฑ๋ฅ, ์ ์ฝ์ฌํญ
๋น๊ธฐ๋ฅ ์๊ตฌ์ฌํญ ์์
๊ธฐ๋ฅ ์๊ตฌ์ฌํญ ์ด๋ป๊ฒ ๋ถ์ํ๊ณ ์์ฑํ๋์ง... (๋์ถ, ๋ถ์, ๋ช ์ธ, ํ์ธ...)
- ์ข์ ์๊ตฌ์ฌํญ ๋ช ์ธ์๋ผ๋ฉด ์๊ตฌ์ฌํญ ๋ช ์ธ์๋ฅผ ๊ฐ์ง๊ณ ํ ์คํธ๋ฅผ ๋ง๋ค์ด์ ๋ค ์ ๋์๊ฐ๋์ง...(ํ ์คํธ๊ฐ ๊ฐ๋ฅํ๋ค๋ฉด ์๊ตฌ์ฌํญ์ด ๊ต์ฅํ ๋ํ ์ผ ํ๋ค๋๊ฒ!! / ์๋๋ผ๋ฉด ์๊ตฌ์ฌํญ ๋ช ์ธ์ ๋ ์์ธํ๊ฒ ํด๋ฌ๋ผ๊ณ ๋ถํํ๊ธฐ!!)
- ์ถ์ ์ฑ : ์ฐ๋ฆฌ์ ์์ค์ฝ๋๊ฐ ์ด๋ค ์ค๊ณ์, ์ํคํ ์ฒ ์ค๊ณ์, ์๊ตฌ์ฌํญ ๋ช ์ธ์๋ฅผ ๋ง์กฑ์ํค๊ธฐ ์ํด ๋์๋์ง ์ถ์ ์ด ๊ฐ๋ฅํ์ง... / ์ฐ๋ฆฌ์ ์๊ตฌ์ฌํญ์ ์ธ์ ๋ ์ง ๋ณ๊ฒฝ๋ ์ ์๊ธฐ ๋๋ฌธ์ ์ด๋ค๊ฑธ ์์ ํด์ผํ ์ง ์ฐพ๋๋ฐ ์๊ฐ์ด ์ค๋๊ฑธ๋ฆผ, ๋๋ฝ ๊ฐ๋ฅํ๋ค
- ๋ณ๊ฒฝ ์ฉ์ด์ฑ : ๋ค๋ฅธ๊ฒ๊ณผ ์ต๋ํ ๋ ๋ฆฝ์ฑ์ ๋์ฐ๋๊ฒ์ด ์ข๋ค(์์กด์ ์ด๋ฉด ๋ณ๊ฒฝํ๊ธฐ ํ๋ฆ)
- uml ๊ทธ๋ฆฌ๊ธฐ ์ค์ต์ ๋ด์ผ..
<๋ชฉ์์ผ)
- UML : ์์คํ ์ค๊ณ๋ฅผ ํํํ๋๋ฐ ์ฌ์ฉํ๋ ํตํฉ๋ ๋ชจ๋ธ๋ง์ธ์ด
MBD : MODEL BASED DEVELOPMENT / ๋ชจ๋ธ๋ง๋ง ํ๋ฉด ์๋์ผ๋ก ๊ฐ๋ฐํด์ค... / ๊ฐ๋ฐ์๋ ์์ด์ ธ๋... ์ค๊ณ์๋ ์ ์์ด์ง๋ค
USECASE DIAGRAM ๊ตฌ์ฑ์์
- user actor : ์์คํ ์ ์ธ๋ถ์ ์์ผ๋ฉด์ ์์คํ ๊ณผ ์ํธ์์ฉํ๋ ๊ฒ๋ค... ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ์ ํน์ ์ธ๋ถ ์์คํ
- system actor : ํด๋น ํ๋ก์ ํธ์ ๊ฐ๋ฐ ๋ฒ์์๋ ์ํ์ง ์์ง๋ง ๋ฐ์ดํฐ๋ฅผ์ฃผ๊ณ ๋ฐ๋ ๋ฑ ์๋ก ์ฐ๋๋๋ ๋ค๋ฅธ ์์คํ
ex) ์ฐ๋ฆฌ ์์คํ
์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๋ ๊ธฐ์์ฒญ ์์คํ
- usecase : ์์คํ ์ด ์กํฐ์๊ฒ ์ ๊ณตํด์ผ ํ๋ ๊ธฐ๋ฅ์ ์งํฉ / ๋์ฌ+๋ช ์ฌ ํ์์ผ๋ก ์์ฑ(์ฑ์ ๋ฑ๋ก, ์ฑ์ ์กฐํ)
- relationship : ์กํฐ์ ์ ์ค์ผ์ด์ค / ์ ์ค์ผ์ด์ค์ ์ ์ค์ผ์ด์ค ์ฌ์ด์ ์ฐ๊ด ๊ด๊ณ!!! (๊ด๊ณ ์ข ๋ฅ.....)
# USECASE DIAGRAM ๊ทธ๋ฆฌ๊ธฐ
Flowchart Maker & Online Diagram Software
Flowchart Maker and Online Diagram Software draw.io is free online diagram software. You can use it as a flowchart maker, network diagram software, to create UML online, as an ER diagram tool, to design database schema, to build BPMN online, as a circuit d
app.diagrams.net
# ์ค๊ณ
- ๊ด์ : HOW(์ด๋ป๊ฒ)
- ํน์ง : ์ฌ์ฉ ํ๊ฒฝ์ ๋ฐ์ํด ๊ตฌ์ฒด์
- ์์ ์ค๊ณ์, ์์ธ ์ค๊ณ์ ๋๊ฐ์ง๋ก ๋๋จ
(๊ธ์์ผ)
https://velog.io/@hongjunland/Clean-Architecture
ํด๋ฆฐ ์ํคํ ์ฒ(Clean Architecture)
DDD์ฑ ์ ์ ๋ ํด๋ณด๊ณ ์ํคํ ์ฒ ํจํด์ค์ ํ๋์ธ ํฌํธ์ ์ด๋ํฐ ํจํด์ ์ ๊น ๊ณต๋ถํด๋ณธ ์ ์ด์๋ค. ํํ ๋งํ๋ ํด๋ฆฐ์ํคํ ์ฒ์ ๊ฑฐ์ ๊ฐ์๋ง๋ก ์๋ ค์ ธ์๋๋ฐ, ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ๋์์
velog.io
ํด๋ฆฐ ์ํคํ ์ฒ ํ๋ ์...
# ์ค๊ณ!!!
## ์ถ์ํ : ์์ ๋ ๋ฒจ์์ ์ ํ์ ๊ตฌํ์ ์๊ฐํด๋ด!!
์ฌ์ ์ถ์ง ํํ์ ๋๊ฐ์ง ๋ฐฉ๋ฒ, ํ๋ค์ด(Top-down,ํํฅ์) & ๋ฐํ ์ (Bottom-up,์ํฅ์) ๋ฐฉ์
Top-down๊ณผ Bottom-up์ ๋ฌธ์ ํด๊ฒฐ์ด๋ ์์ฌ ๊ฒฐ์ ์ ์ํ ๋ ๊ฐ์ง ์ ๊ทผ ๋ฐฉ์์ ๋๋ค. Top-down ์ ๊ทผ ๋ฐฉ์์ ํฐ ๊ทธ๋ฆผ์์ ์์ํ์ฌ ์์ ์ธ๋ถ ์ฌํญ์ผ๋ก ๋ด๋ ค๊ฐ๋ ๊ฒ์ ๋๋ค. ๋ฐ๋ฉด, Bottom-up ์ ๊ทผ ๋ฐฉ์์ ์์
wealthymindset.tistory.com
Top-down(ํํฅ์)๊ณผ Bottom-up(์ํฅ์)์ ์ฐจ์ด..
comfile ๊ณผ์ : .java ํ์ผ์ ์ปดํจํฐ๊ฐ ํด์ํ ์ ์๋๋ก ์ปดํ์ผ๋ฌ๋ฅผ ๊ฑฐ์ณ์ .class ํ์ผ๋ก ๋ฐ๊ฟ์ฃผ๋ ๊ณผ์
## ๋ถํ ๊ณผ ์ ๋ณต(Divide Conquer)
- Component : ์ํํธ์จ์ด๋ฅผ ๊ตฌ์ฑํ๋ ์์๋ค์ ์งํฉ / ํด ์๋ ์์ ์๋ ์ด๋ป๊ฒ ์ชผ๊ฐ์ง๋์ง๋ ๋๋ง๋ค ๋ค๋ฅด๋ค
- Unit : ๋์ด์ ๋๋ ์ ์๋ atomicํ ์์
๋ถํ ๊ณผ ์ ๋ณต์ ์๋ฏธ...
- ํ๋๋ก ํ์ง ๋ง๊ณ ์ฌ๋ฌ ๊ฐ๋ก ์ชผ๊ฐ๊ณ ํ๋ํ๋ ์์ ๋จ์๋ถํฐ ๊ฐ๋ฐํ๊ณ ํฉ์ณ์ ์ํฅ์์ผ๋ก ๊ฐ๋ฐํด ๋๊ฐ๋ผ๋ ์๋ฏธ
- ๋ชจ๋ํ๋ ๊ฐ์ ์๋ฏธ(= unit๊ณผ๋ ๊ฐ์)
- ํ ํ๋ฉด์ ๋ณด๊ธฐ ์ข์ 50-80์ค ์ฌ์ด๋ก ํจ์๋ฅผ ์์ฑํ๋ ๊ฒ์ด ์ข์
## ๋ชจ๋ํ(Modularity)
- ์๋ฏธ : ์ํํธ์จ์ด ๊ตฌ์กฐ๋ฅผ ์ด๋ฃจ๋ ๊ธฐ๋ณธ ๋จ์
- ํน์ง
- ๋ ๋ฆฝ์ ์ธ ๊ธฐ๋ฅ์ ์ํํ๋ ๋จ์
- ์ ์ผํ ์ด๋ฆ์ ๊ฐ์ง
- ๋ชจ๋์์ ๋ ๋ค๋ฅธ ๋ชจ๋์ ํธ์ถ(call)ํ ์ ์์ -> interaction์ ํ ์ข ๋ฅ / interface : interaction์ ํ๋๋ฐ ์์ฝ๊ฒ ํ๋ ์๋จ(ํ๋ฉด) / ํธ์ถ์ ํ๋๊ฒฝ์ฐ... ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๊ณ ์๋ต ๋ฐ์
- ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์์๋ ๋ชจ๋์ ํธ์ถํ ์ ์์
- ๋ชจ๋์ ํฌ๊ธฐ : ์์คํ ์ ๊ท๋ชจ, ์ ํ, ํน์ฑ์ ๋ฐ๋ผ ์์ / ์์ ์์คํ ์ด๋ผ๋ฉด ๋ชจ๋์ ํฌ๊ธฐ๋ ํจ์ / ํฐ ์์คํ ์ด๋ผ๋ฉด...
- ์์ง๋๋ ๊ฐํ๊ฒ(๋ชจ๋ ๊ตฌ์ฑ ์์๊ฐ์๋ ๊ฐํ๊ฒ) / ๊ฒฐํฉ๋๋ ์ฝํ๊ฒ(์์กด์ฑ์ด ์ฝํด์ผํ๋ค)
- ๊ฒฐํฉ๋๋ฅผ ๋์จํ๊ฒ ํ๋ผ๋ ๋ง์ด... ๋ชจ๋ ๊ด๊ณ๊ฐ ์์ข๋ค๋ ๋ง์ด ์๋๋ผ A,B๊ฐ ์๋ก ํธ์ถํ์ฌ ์๋ฌ์ ๋ฌดํ๋ฃจํ๋ฅผ ๋์ง ๋ง๋ผ๋ ์๋ฆฌ
- ๊ฒฐํฉ๋๊ฐ ๋์์๋ก ๋ณต์กํด์ง / ๋ฎ์์๋ก ๋จ์ํด์ง๋ ์ ์ง๋ณด์, ์ฌ์ฌ์ฉ์ฑ์ด ์ข๋ค
C์ธ์ด ์ ์ฐจ์งํฅํ ์ธ์ด...
- ๋ค๋ฅธ ์ธ์ด๋ค๋ ๋ค ์์๋๋ก ์ฝ๋๊ฐ ์คํ๋๋๋ฐ ์ ์ ์ฐจ์งํฅ์ด๋ผ๊ณ ํ๋์ง ???? ํนํ๋ ์์์ ์ง์คํด์?? ํจ์๋ฅผ ์ด๋์๋ ์ฐ๋ ค๊ณ ํ๋ฉด ์ ์ญ๋ณ์๋ก ์ ์ธํด์ผ ํ๋ค / ์ ์ง๋ณด์ ์ด๋ ค์
JAVA ๊ฐ์ฒด์งํฅ ์ธ์ด...
- ์ฌ๋์ด ์ดํดํ๊ฒ์ฒ๋ผ ์ฝ๋๋ฅผ ์ง๋ณด์ ํด์ ๋์จ ์ธ์ด
- interaction์ด ์ด๋ฃจ์ด์ง๊ธฐ ๋๋ฌธ์ loose coupling, strong cohension์ ๊ผญ ํ์
# ๊ฐ์ฒด์งํฅ๋ฐฉ๋ฒ๋ก ์ ํน์ง
- ์บก์ํ : ์ ๋ณด์๋์ ๊ฐ๋ ์ด ํฌํจ๋ ๊ฐ๋ / ๋์ ์ ๋ณด๋ฅผ ๊ฐ์ธ์ ๋ค๋ฅธ ์ฌ๋๋ค์๊ฒ ์ ๋ณด๋ฅผ ์จ๊ธฐ๋ ํจ๊ณผ
- ์์ : ๋ค๋ฅธํด๋์ค์ ์์ฑ์ ๋ฌผ๋ฌ๋ฐ์ ๋ด ๊ฒ์ฒ๋ผ ์ฐ๋ ๊ฒ
- ๋คํ์ฑ : ํ๋ ์ด์์ ํํ๋ฅผ ๊ฐ๋ ๊ฒ
- ์ค๋ฒ๋ก๋ฉ : ๊ฐ์ ํจ์ ์ด๋ฆ์ด์ด๋ ๋งค๊ฐ๋ณ์์ ๊ฐ์๋ ํ์ ์ด ๋ค๋ฅด๋ฉด ์ค๋ณต ์ ์ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅ
- ์ค๋ฒ๋ผ์ด๋ฉ : ์์ ๊ด๊ณ์์ ๋ถ๋ชจ์ ๊ฐ์ ธ์จ ๋ฉ์๋๋ฅผ ์์ ํด๋์ค๊ฐ ์ฌ์ ์ ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅ
- ์ค๋ฒ๋ผ์ด๋ฉ์ ๋ถ๋ชจ ํด๋์ค์ ๋ฉ์๋๋ฅผ ์์ ํด๋์ค์์ ๋์ผํ ์ด๋ฆ๊ณผ ๋งค๊ฐ๋ณ์๋ก ์ฌ์ ์ํ์ฌ, ์์ ํด๋์ค์์ ๋ฉ์๋๋ฅผ ํธ์ถํ ๋ ๋ถ๋ชจ ํด๋์ค์ ๋ฉ์๋๊ฐ ์๋ ์์ ํด๋์ค์ ๋ฉ์๋๊ฐ ์คํ๋๋๋ก ํ๋ ๊ฒ์ ๋๋ค. ์ค๋ฒ๋ผ์ด๋ฉ์ ๋ฉ์๋์์๋ง ์ด๋ฃจ์ด์ง๋๋ค.
- ์๋์์ ์์ ํด๋์ค์์ ๋ถ๋ชจ ํด๋์ค์ ๋์ผํ ์ด๋ฆ์ ๋ณ์๋ฅผ ์ ์ธํ์ฌ ๋ถ๋ชจ ํด๋์ค์ ๋ณ์๋ฅผ ๋ฎ์ด์ฐ๋ ๊ฒ์ ๋๋ค. ์ด ๊ฒฝ์ฐ ์์ ํด๋์ค์ ์ธ์คํด์ค๋ ๋ถ๋ชจ ํด๋์ค์ ๋ณ์ ๋์ ์์ ํด๋์ค์ ๋ณ์๋ฅผ ์ฐธ์กฐํ๊ฒ ๋ฉ๋๋ค. ํ์ง๋ง ๋ถ๋ชจ ํด๋์ค์ ๋ณ์ ์์ฒด๊ฐ ๋ณ๊ฒฝ๋๋ ๊ฒ์ ์๋๋๋ค
'ํ๋ก๊ทธ๋๋ฐ ์ธ์ด > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ธํผ_๋น์ ๊ณต ์๋ฐ ๋๊ฐ3. ํด๋์ค์ ๊ฐ์ฒด(์๋ฐ์ ๊ฝ?) (0) | 2023.09.29 |
---|---|
java๊ฐ๋ ์ด๋ชจ์ ๋ชจ.. (1) | 2023.09.24 |
์๋ฐ - ์ ์ด๋ฌธ ์ดํดํ๊ธฐ๐ค (0) | 2023.09.21 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ2 (0) | 2023.09.13 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ๐ฎ (0) | 2023.09.08 |
์ธํผ_๋น์ ๊ณต ์๋ฐ ๋๊ฐ3. ํด๋์ค์ ๊ฐ์ฒด(์๋ฐ์ ๊ฝ?)
java๊ฐ๋ ์ด๋ชจ์ ๋ชจ..
์ด๋ฒ์ฃผ ์๋ฐ ๋น์ ๊ณต ๊ฐ์ + ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์ ํ๋ฉด์ ํท๊ฐ๋ฆฌ๊ณ ์ ๋ชจ๋ฅด๋๊ฒ๋ค ์ ๋ฆฌ ํด๋ณด์์ต๋๋ค๐๐
1. ๋ฌธ์์ด ์ ์ ๋ณํ (ํ์ด์ฌ์ ์ ๋ง ๊ฐ๋จํ๋ฐ์...ใ ใ ์ฌ์ค ์๋ฐ๋ ๊ทธ๋ฆฌ ๋ณต์กํ์ง ์์ )
- Interger.valueOf() ๋ฉ์๋ ์ฌ์ฉ
// ํ๋ก๊ทธ๋๋จธ์ค. ์ด์ด๋ถ์ธ ์
// new_์ ์ = Integer.valueOf(๋ฌธ์์ด)
class Solution {
public int solution(int[] num_list) {
int answer = 0;
String even = "";
String odd = "";
for (int i = 0; i < num_list.length; i ++){
if (num_list[i] %2 == 1) {
even += num_list[i];
}else {
odd += num_list[i];
}
}
answer += Integer.valueOf(even) + Integer.valueOf(odd);
return answer;
}
}
- Integer.parseInt() ๋ฉ์๋ ์ฌ์ฉ
String str ="30";
int i = Integer.parseInt(str);
System.out.println(i); // 30
๋์ ์ฐจ์ด์ ์...
valueOf() ๋ฉ์๋๋ ๋ฌธ์์ด์ ๊ฐ์ ์ ์ํ์ผ๋ก ๋ณํํ ๋ค ์ฐธ์กฐ ์๋ฃํ(Reference Type)์ธ Integer ๊ฐ์ฒด๋ก ๋ง๋ค์ด์ ๋ฐํํฉ๋๋ค.
parseInt() ๋ฉ์๋๋ ๊ฒฐ๊ณผ๊ฐ์ ๊ธฐ๋ณธ ์๋ฃํ(Primitive Type)์ธ int ๋ก ๋ฐํํฉ๋๋ค.
๊ฒฐ๊ณผ๋ฅผ ๊ธฐ๋ณธ ์๋ฃํ์ผ๋ก ๋ฐ์์ค๊ณ ์ถ์ ๋๋ parseInt() ๋ฅผ, ์ฐธ์กฐ ์๋ฃํ Integer ๊ฐ์ฒด๋ก ๋ฐ์์ค๊ณ ์ถ์ ๋๋ valueOf() ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค
์์ง ๊ฐ์ฒด๋ฅผ ๋ชป ๋ฐฐ์์ ๊ทธ๋ฐ๊ฑฐ๋ผ๊ณ ์๊ฐํ๊ณ ์ ์ง... ํ์ง๋ง ๊ทธ๋๋ ์์๋ ์๋ฐ ๊ณ ์๋ ๋ ์ข ์๋ ค์ฃผ์ธ์...
2. ์ ์๋ฅผ ๋ฌธ์์ด๋ก ๋ณํ(๋ง์ ์ฃผ์...;;;;!!!)
- Integer.toString()
// 1. Integer.toString() ๋ฉ์๋ ์ฌ์ฉํ๊ธฐ
// ๋ฌธ์์ด = Integer.toString(์ ์)
public class IntToString {
public static void main(String[] args) {
int intValue1 = 0812;
int intValue2 = 8888;
String str1 = Integer.toString(intValue1);
String str2 = Integer.toString(intValue2);
System.out.println(str1);
System.out.println(str2);
}
}
- String.valueOf()
// 2. String.valueOf()
// ๋ฌธ์์ด = String.valueOf(์ ์)
public class IntToString {
public static void main(String[] args) {
int intValue1 = 0812;
int intValue2 = 8888;
String str1 = Integer.valueOf(intValue1);
String str2 = Integer.valueOf(intValue2);
System.out.println(str1);
System.out.println(str2);
}
}
- int + ""
// 3. int + "" (์ ์ผ ๊ฐ๋จํ๊ณ ์ข๋ค์^^"")
// ๋ฌธ์์ด : int + ""
public class IntToString {
public static void main(String[] args) {
int intValue1 = 0812;
int intValue2 = 8888;
String str1 = intValue1 + "";
String str2 = intValue2 + "";
System.out.println(str1);
System.out.println(str2);
}
}
3. for each(๊ฐ์ ๋ for ๋ฌธ)
: ์ฅ์ : ๊ฐํธ์ฑ, ๊ฐ๋ ์ฑ ์ข์ ์ฝ๋... ๋ฐฐ์ด ์ธ๋ฑ์ค ๋ฌธ์ ํด๊ฒฐ
: ๋จ์ : ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ์ง ๋ชปํ๋ค.. ์์ ๋ ธ์ฐ ใ
// for each
// ๋์
for(์๋ฃํ ๋ณ์๋ช
: ๋ฐฐ์ด๋ช
) {
๋ฌธ์ฅ
}
// ์์
int nums = [1, 2, 3, 4]
for (int num : nums) {
System.out.println(num);
}
// 1
// 2
// 3
// 4
์ธ์ ๊ฐ for๋ฌธ ์ ์ฐ๋๊ฒ ๋ฅ์ํด์ง๋ฉด ์ด ๋ฐฉ๋ฒ์ผ๋ก๋ ์จ๋ด์ผ๊ฒ ๋ค ๐
4. charAt() ๋ฉ์๋
: ๋ฌธ์์ด์์ ๋ฌธ์ ํ๋ํ๋๋ฅผ ์ถ์ถํ ์ ์๋ ๋ฉ์๋!!
// .charAt()
// .charAt(์ธ๋ฑ์ค)
String str = "์๋
ํ์ธ์ฐ";
char ch1 = str.charAt(0);
char ch2 = str.charAt(1);
char ch3 = str.charAt(2);
System.out.println(ch1); // ์
System.out.println(ch2); // ๋
System.out.println(ch3); // ํ
5. == ๊ณผ .euqlas()์ ์ฐจ์ด
- == ์ฐ์ฐ์ : ๋น๊ตํ๊ณ ์ ํ๋ ๋๊ฐ์ ๋์์ ์ฃผ์๊ฐ์ ๋น๊ต
- equals ๋ฉ์๋ : ๋น๊ตํ๊ณ ์ ํ๋ ๋๊ฐ์ ๋์์ ๊ฐ ์์ฒด๋ฅผ ๋น๊ต
์์ง ํด๋์ค, ์์ ํํธ๋ฅผ ์ ๋ฐฐ์์ ์ ํํ ์ฐจ์ด ๊ตฌ๋ณ์ด ์๋๋ค...
ํ๋ก๊ทธ๋๋จธ์ค ๋ฌธ์ ๋ฅผ ํ๋ค๊ฐ ==์ผ๋ก ์๋ฌด๋ฆฌ ํด๋ ๋ฌธ์ ๊ฐ ์ ํ๋ฆฌ๊ธธ๋ ๊ตฌ๊ธ๋ง์ ํ๋๋ฐ ๋ค๋ค equals๋ฅผ ์ฌ์ฉํ์ จ๋ค..
equals()๊ฐ ๊ฐ์ ๋น๊ตํ๋๊น ๋ฌธ์์ด์ ๋น๊ตํ ๋ ๋งํผ์ == ์ฐ์ฐ์๋ณด๋ค๋ ๋์๊ฒ์ด๋ผ ์๊ฐํ๊ธฐ๋ก ํ๋ค ์ผ๋จ์..
๋ค๋ฅธ๋ถ ๋ธ๋ก๊ทธ์์ ํผ์๋ค... ์ฃผ์ ๋จ๊น๋๋ค...
https://sudo-minz.tistory.com/93
[Java] ์๋ฐ ๋ฌธ์์ด ๋น๊ต == equals() ์ฐจ์ด์
Java์์ int์ boolean๊ณผ ๊ฐ์ ์ผ๋ฐ์ ์ธ ๋ฐ์ดํฐ ํ์ ์ ๋น๊ต๋ ==์ด๋ผ๋ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ์ฌ ๋น๊ตํ๋ค. ํ์ง๋ง String์ฒ๋ผ Class์ ๊ฐ์ ๋น๊ตํ ๋๋ == ๋์ equals()๋ผ๋ ๋ฉ์๋๋ฅผ ์ฌ์ฉํด ๋น๊ตํ๋๋ฐ ์ด๋จ
sudo-minz.tistory.com
6. ์๋ฐ ๋ฌธ์์ด ํ๊ธ์์ฉ ๋ฐฐ์ด์ ์ ์ฅํ๊ธฐ
// Split ํจ์๋ฅผ ํ์ฉํ์ฌ ๋จ์ด๋ฅผ ๋ฐฐ์ด์ ์ ์ฅํ๊ธฐ
class Solution {
public int solution(String number) {
int answer = 0;
int sum_number = 0;
String[] nums; // String์ ๋ด์ ๋ฐฐ์ด ๋ง๋ค์ด์ฃผ๊ธฐ
nums = number.split(""); // ๋ฐฐ์ด์ ํ๊ธ์์ฉ ์ ์ฅํ๊ธฐ
for (int i = 0; i < number.length(); i++){ // for๋ฌธ์ผ๋ก ํ๋์ฉ ๋๋ฆฌ๋ฉด์ ๊ฐ ์ ์ฅํ๊ธฐ
sum_number += Integer.parseInt(nums[i]);
}
answer = sum_number % 9;
return answer;
}
}
// charAt ํจ์๋ฅผ ํ์ฉํ์ฌ ๋จ์ด๋ฅผ char ๋ฐฐ์ด์ ํ๊ธ์์ฉ ์ ์ฅํ๊ธฐ
char[] num = new char[number.length()]; // String์ ๋ด์ ๋ฐฐ์ด ๋ง๋ค๊ธฐ
for (int i = 0; i < num.length; i++) {
num[i] = numver.charAt(i);
}
7. ๋ฌธ์์ด ๋ง๋ค๊ธฐ(+์ฐ์ฐ์ด ๋ง์์ง๋ค๋ฉด ์ฑ๋ฅ์ ์ผ๋ก ์ข์ง ์๋ค) => StringBuilder
// ๋ฌธ์์ด ๋ง๋๋ฆญ :StringBuilder
public class Main {
public static void main(String[] args) {
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append('๋ฌธ์์ด").append("์ฐ๊ฒฐ"); // ํ๋ฒ์ ๋๊ฐ append ๊ฐ๋ฅ
// String str = stringBuilder; // String์ StringBuilder๋ฅผ ๊ทธ๋๋ก ๋ฃ์ ์๋ ์์ toString()์ ๋ถ์ฌ์ผ ํ๋ค
String str = stringBuilder.toString();
System.out.println(stringBuilder); // ๋ฌธ์์ด์ฐ๊ฒฐ
System.out.println(str); // ๋ฌธ์์ด์ฐ๊ฒฐ
}
}
'ํ๋ก๊ทธ๋๋ฐ ์ธ์ด > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
java ์ ๋ฌธ๋ฐ 1์ฃผ์ฐจ (3) | 2024.11.15 |
---|---|
์ธํผ_๋น์ ๊ณต ์๋ฐ ๋๊ฐ3. ํด๋์ค์ ๊ฐ์ฒด(์๋ฐ์ ๊ฝ?) (0) | 2023.09.29 |
์๋ฐ - ์ ์ด๋ฌธ ์ดํดํ๊ธฐ๐ค (0) | 2023.09.21 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ2 (0) | 2023.09.13 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ๐ฎ (0) | 2023.09.08 |
์๋ฐ - ์ ์ด๋ฌธ ์ดํดํ๊ธฐ๐ค
1. if ๋ฌธ
1) if ๋ฌธ๊ณผ else ๋ฌธ์ ๊ธฐ๋ณธ ๊ตฌ์กฐ
- if ๋ฌธ : ์ฃผ์ด์ง ์กฐ๊ฑด์ด ์ฐธ์ผ ๋ ์คํ๋๋ ์ฝ๋
- else ๋ฌธ: if ๋ฌธ์ ์กฐ๊ฑด์ด ๊ฑฐ์ง์ผ ๋ ์คํ๋๋ ์ฝ๋
if (์กฐ๊ฑด๋ฌธ) {
<์ํํ ๋ฌธ์ฅ>;
<์ํํ ๋ฌธ์ฅ2>;
} else {
<์ํํ ๋ฌธ์ฅ3>;
<์ํํ ๋ฌธ์ฅ4>;
}
2) ๋น๊ต ์ฐ์ฐ์
๋น๊ต ์ฐ์ฐ์ | ์ค๋ช |
x < y | x๊ฐ y๋ณด๋ค ์๋ค |
x > y | x๊ฐ y๋ณด๋ค ํฌ๋ค |
x == y | x์ y๊ฐ ๊ฐ๋ค |
x != y | x์ y๊ฐ ๊ฐ์ง ์๋ค |
x >= y | x๊ฐ y๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๋ค |
x <= y | y์ฌ x๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๋ค |
// ๋์ด 3000์ ์ด์ ์์ผ๋ฉด ํ์, ์๋๋ฉด ๊ฑท๊ธฐ
int money = 2000;
if (money > 3000) {
System.out.println("ํ์");
} else {
System.out.println("๊ฑท๊ธฐ");
}
// ๊ฑท๊ธฐ
3) and, or, not ์ฐ์ฐ์
์ฐ์ฐ์ | ์ค๋ช |
x && y | x์ y ๋ชจ๋ ์ฐธ์ด์ด์ผ ์ฐธ |
x || y | x์ y ๋ ์ค์์ ์ ์ด๋ ํ๋๊ฐ ์ฐธ์ด๋ฉด ์ฐธ |
!x | x๊ฐ ๊ฑฐ์ง์ด๋ฉด ์ฐธ |
// ์นด๋๊ฐ ์๊ฑฐ๋ ๋์ด3000์ ์ด์ ์์ผ๋ฉด ํ์, ์๋๋ฉด ๊ฑท๊ธฐ
int money = 2000;
boolean card = true;
if (money > 3000 || card) {
System.out.println("ํ์");
} else {
System.out.println("๊ฑท๊ธฐ");
}
// ํ์
4) contains
- ํด๋น ์์ดํ ์ด ์๋์ง ์กฐ์ฌํ๋ ๋ฉ์๋ / ์กฐ๊ฑด๋ฌธ์ ๋ง์ด ํ์ฉ๋๋ค
import java.util.ArrayList;
public class money {
public static void main(String[] args) {
ArrayList<String> pocket = new ArrayList<String>();
pocket.add("paper");
pocket.add("cellphone");
pocket.add("money");
if (pocket.contains("money")) {
System.out.println("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ");
} else {
System.out.println("๊ฑธ์ด๊ฐ๋ผ");
}
}
}
// ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ
5) else if
- ์๋ค์ ์๋ค์ค์ ์์ ๊ฒฝ์ฐ ๋ค์ ๊ฒฝ์ฐ๋ฅผ ๋๋์ด์ฃผ๋ ์กฐ๊ฑด๋ฌธ์ ํด๋นํ๋ค
(if, else๊ฐ ์ฌ๋ฌ๋ฒ ์ฌ์ฉ๋์ด ํ ๋ฒ์ ์ดํดํ๊ธฐ๊ฐ ์ฝ์ง ์๊ณ ์ฐ๋งํ ๋๋์ด๋๋๋ฐ... ์ด๋ฅผ ๋ณด์ํ๊ธฐ ์ํด์... ์๋ฐ๋ ์ฌ๋ฌ ์กฐ๊ฑด์ ํ๋จํ ์ ์๊ฒ ํ๋ else if ๋ฌธ์ด ์๋ค)
package test;
import java.util.ArrayList;
public class money {
public static void main(String[] args) {
boolean hasCard = true;
ArrayList<String> pocket = new ArrayList<String>();
pocket.add("paper");
pocket.add("cellphone");
if (pocket.contains("money")) {
System.out.println("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ");
} else {
if (hasCard) {
System.out.println("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ");
}else {
System.out.println("๊ฑธ์ด๊ฐ๋ผ");
}
}
}
}
// ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ
์๋ else if ๋ถ๋ถ๋ค์ ์์ ํ๋ฉด ์กฐ๊ธ ๊ฐ๋จํ๊ฒ ๋ํ๋ด๋ฉด ์๋๋ก ๋ํ๋ด์ง ์ ์๋ค / else if๋ ๊ฐ์์ ํ ์์ด ์ฌ์ฉ ๊ฐ๋ฅ
if (pocket.contains("money")) {
System.out.println("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ");
}else if (hasCard) {
System.out.println("ํ์๋ฅผ ํ๊ณ ๊ฐ๋ผ");
}else {
System.out.println("๊ฑธ์ด๊ฐ๋ผ");
}
2. switch / case ๋ฌธ
: if ๋ฌธ๊ณผ ๋น์ทํ์ง๋ง ์ข ๋ ์ผ์ ํ ํ์์ด ์๋ ์กฐ๊ฑด๋ฌธ..
=> ์ ๋ ฅ ๋ณ์์ ๊ฐ๊ณผ ์ผ์นํ๋ case ์ ๋ ฅ๊ฐ(์ ๋ ฅ๊ฐ1, ์ ๋ ฅ๊ฐ2,....) ์ด ์๋ค๋ฉด ํด๋น case ๋ฌธ์ ์ํ ๋ฌธ์ฅ๋ค์ด ์คํ๋๋ค...
break ๋ฌธ ๋ํ ์กด์ฌ(ํด๋น case๋ฌธ์ ์คํํ ๋ค swirch ๋ฌธ์ ๋น ์ ธ๋๊ฐ๊ธฐ ์ํจ), break ๋ฌธ์ด ์๋ค๋ฉด, ๋ค์ case๋ก ์ด๋
package test;
import java.util.ArrayList;
public class money {
public static void main(String[] args) {
int month = 8;
String monthString = " ";
switch(month) {
case 1: monthString = "January";
break;
case 2: monthString = "February";
break;
case 3: monthString = "March";
break;
case 4: monthString = "April";
break;
case 5: monthString = "May";
break;
case 6: monthString = "June";
break;
case 7: monthString = "July";
break;
case 8: monthString = "August";
break;
case 9: monthString = "September";
break;
case 10: monthString = "October";
break;
case 11: monthString = "November";
break;
case 12: monthString = "December";
break;
default: monthString = "Invalid month";
break;
}
System.out.println(monthString);
}
}
ํด๋นํ๋ ์ซ์์ ๋ํ case๊ฐ ์คํ๋์๋ค!!
๋ง์ฝ month๊ฐ 1์์ 12์ฌ์ด์ ์ซ์๊ฐ ์๋ ๋ค๋ฅธ ๊ฐ์ด ์ ์ฅ๋์ด ์๋ค๋ฉด defaul: ๋ฌธ์ฅ์ด ์ํ๋๋ค!
๊ฐ์ด ์ ํํ๋์ด ์๋ ๊ฒฝ์ฐ if ๋ฌธ๋ณด๋ค๋ switch/case ๋ฌธ์ ์ฐ๋ ๊ฒ์ด ์ฝ๋์ ๊ฐ๋ ์ฑ์ด ์ข๋ค!!
3. while ๋ฌธ
: ์กฐ๊ฑด๋ฌธ์ด ์ฐธ์ธ ๋์ ์ํํ ๋ฌธ์ฅ๋ค์ ๋ฐ๋ณตํด์ ์ํํ๋ค
package test;
public class tree {
public static void main(String[] args) {
int treeHit = 0;
while (treeHit < 10) {
treeHit++; // treeHit += 1; ๋ก๋ ํํ๊ฐ๋ฅ
System.out.println("๋๋ฌด๋ฅผ " + treeHit + "๋ฒ ์ฐ์์ต๋๋ค.");
if (treeHit == 10) {
System.out.println("๋๋ฌด ๋์ด๊ฐ๋๋ค.");
}
}
}
}
/*
๋๋ฌด๋ฅผ 1๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด๋ฅผ 2๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด๋ฅผ 3๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด๋ฅผ 4๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด๋ฅผ 5๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด๋ฅผ 6๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด๋ฅผ 7๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด๋ฅผ 8๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด๋ฅผ 9๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด๋ฅผ 10๋ฒ ์ฐ์์ต๋๋ค.
๋๋ฌด ๋์ด๊ฐ๋๋ค.
*/
while๋ฌธ์ ์กฐ๊ฑด๋ฌธ : treeHit < 10 (10๋ณด๋ค ์์ ๋์ ์ํ) / +1 ์ปค์ง๋ฉด์ ์ํํ๊ณ / 10์ด ๋๋ฉด์ ์ข ๋ฃ.. while ๋ฌธ ๋น ์ ธ๋์ด
1) ๋ฌดํ ๋ฃจํ
: ๋ฌดํํ๊ฒ while ๋ฌธ ๋ด์ ๋ฌธ์ฅ๋ค์ ์ํ... ๋น ์ ธ๋์ค์ง ๋ชปํ๋ค...
package test;
public class loop {
public static void main(String[] args) {
while (true) {
System.out.println("Ctrl-C๋ฅผ ๋๋ฌ์ผ while๋ฌธ์ ๋น ์ ธ๋๊ฐ ์ ์์ต๋๋ค.");
}
}
}
/*
Ctrl-C๋ฅผ ๋๋ฌ์ผ while๋ฌธ์ ๋น ์ ธ๋๊ฐ ์ ์์ต๋๋ค.
Ctrl-C๋ฅผ ๋๋ฌ์ผ while๋ฌธ์ ๋น ์ ธ๋๊ฐ ์ ์์ต๋๋ค.
Ctrl-C๋ฅผ ๋๋ฌ์ผ while๋ฌธ์ ๋น ์ ธ๋๊ฐ ์ ์์ต๋๋ค.
...
*/
[Ctrl] + [c] : ์ข ๋ฃ
2) while ๋ฌธ ๋น ์ ธ๋๊ฐ๊ธฐ - break
: while ๋ฌธ์ ๊ฐ์ ๋ก ๋ฉ์ถฐ์ผ ํ ๋ ์ฌ์ฉํ๋ค
package test;
public class loop {
public static void main(String[] args) {
int coffee = 10;
int money = 300;
while (money > 0) {
System.out.println("๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.");
coffee--;
System.out.println("๋จ์ ์ปคํผ์ ์์ " + coffee + "์
๋๋ค.");
if (coffee == 0) {
System.out.println("์ปคํผ๊ฐ ๋ค ๋จ์ด์ก์ต๋๋ค. ํ๋งค๋ฅผ ์ค์งํฉ๋๋ค.");
break;
}
}
}
}
/*
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 9์
๋๋ค.
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 8์
๋๋ค.
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 7์
๋๋ค.
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 6์
๋๋ค.
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 5์
๋๋ค.
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 4์
๋๋ค.
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 3์
๋๋ค.
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 2์
๋๋ค.
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 1์
๋๋ค.
๋์ ๋ฐ์์ผ๋ ์ปคํผ๋ฅผ ์ค๋๋ค.
๋จ์ ์ปคํผ์ ์์ 0์
๋๋ค.
์ปคํผ๊ฐ ๋ค ๋จ์ด์ก์ต๋๋ค. ํ๋งค๋ฅผ ์ค์งํฉ๋๋ค.
*/
๋์ด 0๋ณด๋ค ํด๋๋์ ์งํํ๋ค... 0์ด ๋์ด๋ฒ๋ฆฌ๋ฉด ์ถ๋ ฅํ break๊ฐ ํธ์ถ๋์ด while ๋ฌธ์ ๋น ์ ธ๋๊ฐ๋ค
3) while ๋ฌธ์ผ๋ก ๋์๊ฐ๊ธฐ - continue
: while ๋ฌธ ์์ ๋ฌธ์ฅ์ ์ํํ ๋ ์ด๋ค ์กฐ๊ฑด์ ๊ฒ์ฌํด์ ์ฐธ์ด ์๋ ๊ฒฝ์ฐ while ๋ฌธ์ ๋น ์ ธ๋๊ฐ๋ ๋์ while ๋ฌธ์ ๋งจ ์ฒ์, ์ฆ ์กฐ๊ฑด๋ฌธ์ผ๋ก ๋์๊ฐ๊ฒ ํ๊ณ ์ถ์ ๊ฒฝ์ฐ continue๋ฅผ ์ฌ์ฉ(๋น ์ ธ๋๊ฐ์ง ์๊ณ ๋ค์ ์ฌ๋ผ๊ฐ์ ์งํ)
package test;
public class loop {
public static void main(String[] args) {
int a = 0;
while (a < 10) {
a++;
if (a % 2 == 0) {
continue; // ์ง์์ธ ๊ฒฝ์ฐ ์กฐ๊ฑด๋ฌธ์ผ๋ก ๋์๊ฐ๋ค.
}
System.out.println(a); // ํ์๋ง ์ถ๋ ฅ๋๋ค
}
}
}
/*
1
3
5
7
9
*/
a๊ฐ ์ง์์ด๋ฉด continue๋ฌธ์ด ์คํ๋์ด while ๋ฌธ์ ๋งจ ์ฒ์์ผ๋ก ๋์๊ฐ๊ฒ ํ๋ค!!
๊ทธ๋ฌ๋ฏ๋ก a๊ฐ ์ง์์ด๋ฉด System.out.println(a)๋ ์ํ๋์ง ์๊ธฐ ๋๋ฌธ์ ํ์๋ง ์ถ๋ ฅ๋ ๊ฒ์ด๋ค!!!!
4. for ๋ฌธ
: ๋ฌธ์ฅ์ ๋ฐ๋ณตํด์ ์ํํด์ผ ํ ๊ฒฝ์ฐ์ ์ฌ์ฉ
1) for ๋ฌธ์ ๊ธฐ๋ณธ ๊ตฌ์กฐ
// ๊ธฐ๋ณธ ๊ตฌ์กฐ
for (์ด๊น๊ฐ; ์กฐ๊ฑด๋ฌธ; ์ฆ๊ฐ๊ฐ) {
...
}
/////
String[] numbers = ["one", "two", "three"]
for (int i = 0; i < numbers.length; i++) :
System.out.println(numvers[i]);
}
/*
one
two
three
*/
i์ ์ด๊น๊ฐ์ 0, ์กฐ๊ฑด๋ฌธ์ i < numbers.length, ์ฆ๊ฐ๊ฐ์ i++์ด ๋๋ค!!
=> i ๊ฐ์ด numbers์ ๊ฐ์๋ณด๋ค ์์ ๋์ ๊ณ์ i ๊ฐ์ 1์ฉ ์ฆ๊ฐ์ํค๋ฉฐ for ๋ฌธ์ ๋ฌธ์ฅ๋ค์ ์ํ
2) for ๋ฌธ์ผ๋ก ๋์๊ฐ๊ธฐ - continue
: while ๋ฌธ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ์ ์ฉ!
int[] marks = {90, 25, 67, 45, 80};
for (int i = 0; i < marks.length; i++) {
if (marks[i] < 60) {
continue; // ์กฐ๊ฑด๋ฌธ์ผ๋ก ๋์๊ฐ๋ค.
}
System.out.println((i+1)+"๋ฒ ํ์ ์ถํํฉ๋๋ค. ํฉ๊ฒฉ์
๋๋ค.");
}
/*
1๋ฒ ํ์ ์ถํํฉ๋๋ค. ํฉ๊ฒฉ์
๋๋ค.
3๋ฒ ํ์ ์ถํํฉ๋๋ค. ํฉ๊ฒฉ์
๋๋ค.
5๋ฒ ํ์ ์ถํํฉ๋๋ค. ํฉ๊ฒฉ์
๋๋ค.
*/
์ ์๊ฐ 60์ ๋ฏธ๋ง์ด๋ฉด continue๋ฌธ์ด ์คํด๋์ด ์ถํ๋ฉ์์ง๋ฅผ ์ถ๋ ฅํ๋ ๋ถ๋ถ์ด ์ํํ์ง ์๊ณ ,
for ๋ฌธ์ ์ฒซ๋ถ๋ถ์ผ๋ก ๋์๊ฐ๋๋ค!!!
=> ๋ฐ๋ณต๋ฌธ์ ์ํํ ๋, ํน์ ์กฐ๊ฑด์์๋ ์ํํ์ง ์๊ณ ๊ฑด๋๋ฐ์ด์ผ ํ ๋ ์ฌ์ฉํฉ๋๋ค!!!!
3) ์ด์ค for ๋ฌธ
: for ๋ฌธ์ ๋๋ฒ ์ฌ์ฉํ ๊ฒ..
// ๊ตฌ๊ตฌ๋จ ๋ง๋ค๊ธฐ
package test;
public class gugudan {
public static void main(String[] args) {
// TODO Auto-generated method stub
for (int i=2; i < 10; i++) {
for (int j=1; j <10; j++) {
System.out.print(i*j+" ");
}
System.out.println(""); // ์ค์ ๋ฐ๊พธ์ด ์ถ๋ ฅํ๋ ์ญํ ์ ํ๋ค
}
}
}
/*
2 4 6 8 10 12 14 16 18
3 6 9 12 15 18 21 24 27
4 8 12 16 20 24 28 32 36
5 10 15 20 25 30 35 40 45
6 12 18 24 30 36 42 48 54
7 14 21 28 35 42 49 56 63
8 16 24 32 40 48 56 64 72
9 18 27 36 45 54 63 72 81
*/
๋จ์ด ๋ฐ๋๋ println์ ์ฌ์ฉํ์ฌ ์ค๋ฐ๊ฟํ์ฌ ๋ฌธ์๋ฅผ ์ถ๋ ฅํ์๋ค!!
5. for each ๋ฌธ
: ์ด์ ์ ๋ฐฐ์ ๋ for๋ฌธ์ ํ์ฉํ ์์ (์ฒจ๋ด)
// for each ๋ฌธ์ ๊ตฌ์กฐ
for (type ๋ณ์๋ช
: iterate) {
body-of-loop
}
iterate๋ ๋ฃจํ๋ฅผ ๋๋ฆด ๊ฐ์ฒด์ด๊ณ iterate ๊ฐ์ฒด์์ ํ ๊ฐ์ฉ ์์ฐจ์ ์ผ๋ก ๋ณ์๋ช ์ ๋์ ๋์ด for ๋ฌธ์ด ์ํ๋๋ค...
iterate์ ์ฌ์ฉํ ์ ์๋ ์๋ฃํ์ ๋ฃจํ๋ฅผ ๋๋ฆด ์ ์๋ ์๋ฃํ(๋ฐฐ์ด์ด๋ ArrayList๋ฑ)๋ง ๊ฐ๋ฅํ๋ค...
+ ๋ณ์๋ช ์ type(์๋ฃํ)์ iterate ๊ฐ์ฒด์ ํฌํจ๋ ์๋ฃํ๊ณผ ์ผ์นํด์ผํ๋ค!!!
String[] numbers = {"one", "two", "three"};
for(int i = 0; i < numbers.lengh; i++) {
System.out.println(numbers[i]);
}
// for each ๋ฌธ์ ์ฌ์ฉํ๋ค๋ฉด...
String[] numbers = {"one", "two", "three"};
for(String number: numbers) {
System.out.println(number);
}
๋ฌธ์ ...
1. everywhere
2. i % 3 == 0
3. i >5 / int j=0; j <5; j++;
4. int i = 1; i < 101; i++;
5. int mark: marks / total / marks.length;
'ํ๋ก๊ทธ๋๋ฐ ์ธ์ด > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ธํผ_๋น์ ๊ณต ์๋ฐ ๋๊ฐ3. ํด๋์ค์ ๊ฐ์ฒด(์๋ฐ์ ๊ฝ?) (0) | 2023.09.29 |
---|---|
java๊ฐ๋ ์ด๋ชจ์ ๋ชจ.. (1) | 2023.09.24 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ2 (0) | 2023.09.13 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ๐ฎ (0) | 2023.09.08 |
์๋ฐ ์์ํ๊ธฐ ๐ข (1) | 2023.09.05 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ2
6) ๋ฐฐ์ด
๋ฐฐ์ ์ ๊ธธ์ด ์ค์ ํ๊ธฐ
- ๋ฐฐ์ด์ ๋ฐ๋ก ์์ []๊ธฐํธ๋ฅผ ๋ถ์ธ๋ค
- ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ๋จผ์ ์ค์ ํ ๋ค, ๋ฐฐ์ด ๋ณ์๋ฅผ ์์ฑํ๊ณ ๊ทธ ๊ฐ์ ๋์ค์ ๋์
String[] weeks = new String[7];
weeks[0] = "์";
weeks[1] = "ํ";
weeks[2] = "์";
weeks[3] = "๋ชฉ";
weeks[4] = "๊ธ";
weeks[5] = "ํ ";
weeks[6] = "์ผ";
// ์ด๊น๊ฐ ์์ด ๋ฐฐ์ด ๋ณ์๋ฅผ ๋ง๋ค ๋์๋ 7๊ณผ ๊ฐ์ ์ซ์ฃ๊ฐ์ ๋ฃ์ด ๊ธธ์ด๋ฅผ ์ ํด ์ค์ผ ํ๋ค...
// ๊ทธ๋ ์ง ์์ผ๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค...
๋ฐฐ์ด๊ฐ์ ์ ๊ทผํ๊ธฐ
- ํด๋นํ๋ ๊ฐ์ ์ป์ผ๋ ค๋ฉด ์ธ๋ฑ์ค๋ฅผ ์ด์ฉํ์ฌ์ผ ํ๋ค
String[] weeks = {"์", "ํ", "์", "๋ชฉ", "๊ธ", "ํ ", "์ผ"}
System.out.println(week[3]); // ๋ชฉ
// weeks[3] => weeks๋ฐฐ์ด์ ๋ค๋ฒ์งธ ํญ๋ชฉ์ ์๋ฏธ(0๋ถํฐ ์ซ์๋ฅผ ์ธ์ค๋ค)
๋ฐฐ์ด์ ๊ธธ์ด ๊ตฌํ๊ธฐ
- ๋ฐฐ์ด์ ๋ณดํต for ๋ฌธ๊ณผ ํจ๊ป ์ฌ์ฉ
- ๋ฐฐ์ด์ ๊ธธ์ด๋ length๋ฅผ ์ฌ์ฉ
String[] weeks = {"์", "ํ", "์", "๋ชฉ", "๊ธ", "ํ ", "์ผ"};
// weeks.length = 7
for (int i = 0; i < weeks.length; i++) {
System.out.println(weeks[i])
}
// ์
// ํ
// ์
// ๋ชฉ
// ๊ธ
// ํ
// ์ผ
๋ฐฐ์ด ์ค๋ฅ
- ArrayIndexOutOfBoundsException : ๊ธธ์ด์ ์ธ๋ฑ์ค ์ฌ์ด์์์๊ธฐ๋ ์ค๋ฅ...
(ํ์ด์ฌ์ ์ธ๋ฑ์ค์์์ค๋ธ๋ ์ธ์ง ๊ฐ์ ๋๋..)
System.out.println(weeks[7]);
// ์ฌ๋ ๋ฒ์งธ ๋ฐฐ์ด๊ฐ์ด ์์ผ๋ฏ๋ก ArrayIndexOutOfBoundsException ์ค๋ฅ ๋ฐ์
7) ๋ฆฌ์คํธ
: ๋ฐฐ์ด๊ณผ ๋น์ทํ์ง๋ง ํธ๋ฆฌํ ๊ธฐ๋ฅ์ด ๋ ๋ง์...
๋ฐฐ์ด์ ํฌ๊ธฐ๋ ์ ํด์ ธ ์์ง๋ง ๋ฆฌ์คํธ๋ ๋ณํ๋ค => ์ ์ฅํ ๊ฐ์ ํฌ๊ธฐ๊ฐ ๋ช ํํ์ง ์์ ๊ฒฝ์ฐ ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค!!
ArrayList
- ๋ฆฌ์คํธ ์๋ฃํ์์ ๊ฐ์ฅ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ ๊ฒ(๋ฆฌ์คํธ ์๋ฃํ์๋ ArrayList, Vector, LinkedList ๋ฑ์ด ์๋ค)
1. add ๋ฉ์๋: ์์๊ฐ ์ถ๊ฐ
// ์ผ๊ตฌ๊ณต์ ์์์ ๋ฆฌ์คํธ์ ์ถ๊ฐํ๋ ์ฝ๋ ์์ฑํ๊ธฐ
import java.util.ArrayList;
public class Sample {
public static void main(String[] args) {
ArrayList pitches = new ArrayList();
pitches.add("138");
pitches.add("129");
pitches.add("142");
}
}
// import ๋ฌธ : ๋ค๋ฅธ ํจํค์ง๋ ํด๋์ค๋ฅผ ํ์ฌ ์ฝ๋์์ ์ฌ์ฉํ๊ธฐ ์ํด ์ ์ธํ๋ ๋ฌธ์ฅ
// ArrayList๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด import java.util.ArrayList์ ๊ฐ์ import ๋ฌธ์ ์์ฑํด์ผ ํ๋ค
// Java.util ํจํค์ง๋ ์๋ฐ๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณตํ๋ ํจํค์ง์ด๋ค
// ์ํ๋ ์์น์ ๋ฃ๊ณ ์ถ๋ค๋ฉด....
pitches.add(0, "133"); -> ์ฒซ๋ฒ์งธ ์์น์ 133 ์ฝ์
pitches.add(1, "133"); -> ๋๋ฒ์งธ ์์น์ 133 ์ฝ์
2. get ๋ฉ์๋ : ํน์ ์ธ๋ฑ์ค์ ๊ฐ์ ์ถ์ถ
import java.util.ArrayList;
public class Sample {
public static void main(String[] args) {
ArrayList pitches = new ArrayList();
pitches.add("138");
pitches.add("129");
pitches.add("142");
# ์ ์์ ํน์ ํฌ๊ตฌ ์๋๋ฅผ ์ถ๋ ฅํ๊ณ ์ถ๋ค๋ฉด!!!
System.out.println(pitches.get(1)); // 129
}
}
3. size ๋ฉ์๋ : ์์์ ๊ฐ์๋ฅผ ๋ฆฌํด
System.out.println(pitches.size()); // 3
4. contains ๋ฉ์๋ : ๋ฆฌ์คํธ ์์ ํด๋น ํญ๋ชฉ์ด ์๋์ง ํ๋ณํด ๊ทธ ๊ฒฐ๊ณผ๋ฅผ boolean์ผ๋ก ๋ฆฌํดํ๋ค...
System.out.println(pitches.contains("142")); // true
5. remove ๋ฉ์๋ : 2๊ฐ์ง ๋ฐฉ์์ด ์๋๋ฐ... 1. remove(๊ฐ์ฒด), 2. remove(์ธ๋ฑ์ค)
// remove(๊ฐ์ฒด)๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฆฌ์คํธ์์ ๊ฐ์ฒด์ ํด๋นํ๋ ํญ๋ชฉ์ ์ญ์ , ๊ทธ ๊ฒฐ๊ณผ๋ก true ๋๋ false๋ฅผ ๋ฐํ
System.out.println(pitches.remove("129")); // true
// remove(์ธ๋ฑ์ค)๋ฅผ ์ฌ์ฉํ๋ฉด ์ธ๋ฑ์ค์ ํด๋นํ๋ ํญ๋ชฉ์ ์ญ์ ํ ๋ค, ๊ทธ ํญ๋ชฉ์ ๋ฆฌํด
System.out.println(pitches.remove(0)); // 138
์ ๋ค๋ฆญ์ค(generics)
: ์๋ฃํ์ ์์ ํ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ๋ง๋ค์ด ์ฃผ๋ ๊ธฐ๋ฅ(์๋ฃํ์ ๊ฐ์ ๋ก ๋ฐ๊ฟ ๋ ์๊ธธ ์ ์๋ ์บ์คํ ์ค๋ฅ๋ฅผ ์ค์ธ๋ค)
- ์ผ๋ฐ์ ์ธ ๋ฐฉ์ : ArrayList<String> pitches = new ArrayList<String>();
- ์ ํธ๋๋ ๋ฐฉ์ : ArrayList<String> pirches = new ArrayList<>();
=> <>์ ํด๋นํ๋ ๋ถ๋ถ์ ์๋ฃํ์ ๋ช ํํ๋ฏ๋ก ๊ตณ์ด ์ ์ง ์์๋ ๋๋ค... (์คํ๋ ค ์ ์ผ๋ฉด ์ธํ ๋ฆฌ์ ์ด์์๋ ๊ฒฝ๊ณ ๋ฉ์ธ์ง..)
- ์ ๋ค๋ฆญ์ค๋ฅผ ์ฌ์ฉํ์ง ์๋๋ค๋ฉด... ๊ฐ์ ๊ฐ์ ธ์ฌ ๋ ๋งค๋ฒ Object ์๋ฃํ(๋ชจ๋ ๊ฐ์ฒด๊ฐ ์์ํ๊ณ ์๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ์๋ฃํ)์์ String ์๋ฃํ์ผ๋ก ๋ณํํด์ผํ๋ค....
// ์ ๋ค๋ฆญ์ค๋ฅผ ์ฌ์ฉํ์ง ์์ ์์
ArrayList pitches = new ArrayList();
pitches.add("138");
pitches.add("129");
// ํ ๋ณํ์ด ํ์ํจ
String one = (String) pitches.get(0);
String two = (String) pirches.get(1);
// ์ ๋ค๋ฆญ์ค๋ฅผ ์ฌ์ฉํ ์์
ArrayList<String> pitches = new ArrayList<>();
pitches.add("138");
pitches.add("129");
// ํ๋ณํ์ด ํ์์์
String one = pitches.get(0)
String two = pitches.get(1)
๋ค์ํ ๋ฐฉ๋ฒ์ผ๋ก ArrayList ๋ง๋ค๊ธฐ
1. ArrayList์ add ๋ฉ์๋ ์ฌ์ฉ : ArrayList ๊ฐ์ฒด์ ์์ ์ถ๊ฐ
import java.util.AttayList;
public class Sample {
public staatic void main(String[] args) {
ArrayList<String> pitches = new ArrayList<>(); // ์ ๋ค๋ฆญ์ค๋ฅผ ์ฌ์ฉํ ํํ
pitches.add("138");
pitches.add("129");
pitches.add("142");
System.out.println(pitches); // [138, 129, 142]
2. ์ด๋ฏธ ๋ฌธ์์ด ๋ฐฐ์ด์ด ์๋ค๋ฉด...(java.util.Arrays ํด๋์ค์ asList ๋ฉ์๋๋ฅผ ์ฌ์ฉ)
import java.util.ArrayList;
import java.util.Arrays;
public class Sample {
public static void main(String[] args) {
String[] data = {"138", "129", "142"}; // ์ด๋ฏธ ํฌ๊ตฌ ์ ๋ฐ์ดํฐ ๋ฐฐ์ด์ด ์๋ค
ArrayList<String> pitches = new ArrayList<>(Arrays.asList(data));
System.out.println(pitches); // [138, 129, 142]
}
}
3. ๋ฌธ์์ด ๋ฐฐ์ด ๋์ ๋ฌธ์์ด ์๋ฃํ์ ์ฌ๋ฌ๊ฐ ์ ๋ฌํ์ฌ ์์ฑํ ์๋ ....
import java.util.ArrayList;
import java.util.Arrays;
public class Sample {
public static void main(String[] args) {
ArrayList<String> pitches = new ArrayList<>(Arrays.asList("138", "129", "142"));
System.out.println(pitches); // [138, 129, 142]
}
}
String.join("๊ตฌ๋ถ์", ๋ฆฌ์คํธ ๊ฐ์ฒด)
: ArrayList์ ๊ฐ ์์๋ฅผ ๋ฌด์ธ๊ฐ๋ก(์ฝค๋ง(,))๋ก ๊ตฌ๋ถํ์ฌ 1๊ฐ์ ๋ฌธ์์ด๋ก ๋ง๋ค๊ธฐ...
1) join์ด ์๋ค๋ฉด... ์ฝค๋ง๋ฅผ ํ๋ํ๋ ์ถ๊ฐํ์ฌ ๋ง์ง๋ง์ ์ฝค๋ง๋ ์ ๊ฑฐํ ํ ์ถ๋ ฅ
2) join์ ์ฌ์ฉํ๋ค๋ฉด ๊ฐ๋จํ๊ฒ ์ฒ๋ฆฌํ ์ ์๋ค!!
import java.util.ArrayList;
import java.util.Arrays;
public class Sample {
public static void main(String[] args) {
ArrayList<String> pitches = new ArrayList<>(Arrays.asList("138", "129", "142"));
String result = String.join(",", pirches);
System.out.println(result); // "138, 129, 142"
}
}
๋ฆฌ์คํธ ์ ๋ ฌํ๊ธฐ
: ์์๋๋ก ์ ๋ ฌํ๊ธฐ ์ํด์๋ ๋ฆฌ์คํธ์ sort ๋ฉ์๋ ์ฌ์ฉํ๊ธฐ
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
public class Sample {
public static void main(String[] args) {
ArrayList<String> pitches = new ArrayList<>(Arrays.asList("138", "129", "142"));
pitches.sort(Comparator.naturalOrder()); // ์ค๋ฆ์ฐจ์ ์ ๋ ฌ
System.out.println(pitches); // [129, 138, 142]
}
}
- ์ค๋ฆ์ฐจ์ ์ ๋ ฌ : Comparator.naturalOrder()
- ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ : Comparator.reverseOrder()
8) ๋งต
- ๋์ ๋๋ฆฌ์ ์ ์ฌํ๊ณ ํค์ ๊ฐ์ ํ ์์ผ๋ก ๊ฐ๋ ์๋ฃํ
- ๋ฐฐ์ด์ฒ๋ผ ์์ฐจ์ ์ผ๋ก ์์๊ฐ์ ๊ตฌํ์ง ์๊ณ ํค๋ฅผ ์ด์ฉํด ๊ฐ์ ์ป๋๋ค
- HashMap, LinkedHashMap, TreeMap ๋ฑ์ด ์๋ค...
HashMap : ๋งต ์๋ฃํ์ ๊ฐ์ฅ ๊ธฐ๋ณธ
1. put ๋ฉ์๋ : key์ value๋ฅผ ์ถ๊ฐ
import java.util.HashMap;
public class Sample {
public static void main(String[] args) {
HashMap<String, String> map = new HashMap<>();
map.put("people", "์ฌ๋");
map.put("baseball", "์ผ๊ตฌ");
}
}
// key, value์ String ์ด์ธ์ ์๋ฃํ์ ์ฌ์ฉํ ์ ์๋ค
2. get ๋ฉ์๋ : key์ ํด๋นํ๋ value๋ฅผ ์ป์
import java.util.HashMap;
public class Sample {
public static void main(String[] args) {
HashMap<String, String> map = new HashMap<>();
map.put("people", "์ฌ๋");
map.put("baseball", "์ผ๊ตฌ");
System.out.println(map.get("people")); // ์ฌ๋
}
}
// ๋งต์ key์ ํด๋นํ๋ value๊ฐ ์์ ๋ get ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด null์ด ๋ฆฌํด
System.out.println(map.get("java")); // null
// null ๋์ ๊ธฐ๋ณธ๊ฐ์ ์ป๊ณ ์ถ๋ค๋ฉด getOrDefault ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค
System.out.println(map.getOrDefault("java", "์๋ฐ")); //์๋ฐ
3. containsKey ๋ฉ์๋ : ๋งต์ ํด๋น key๊ฐ ์๋์ง๋ฅผ true ๋๋ false๋ก ๋ฆฌํด
HashMap<String, String> map = new HashMap<>();
map.put("people", "์ฌ๋");
map.put("baseball", "์ผ๊ตฌ");
System.out.println(map.containsKey("people")); // true
4. remove ๋ฉ์๋ : ๋งต์ ํญ๋ชฉ์ ์ญ์ ํ๋ ๋ฉ์๋๋ก, ํด๋น key์ ํญ๋ชฉ์ ์ญ์ ํ ํ value ๊ฐ์ ๋ฆฌํด
HashMap<String, String> map = new HashMap<>();
map.put("people", "์ฌ๋");
map.put("baseball", "์ผ๊ตฌ");
System.out.println(map.remove("people")); // ์ฌ๋
5. size ๋ฉ์๋ : ๋งต ์์์ ๊ฐ์๋ฅผ ๋ฆฌํด
HashMap<String, String> map = new HashMap<>();
map.put("people", "์ฌ๋");
map.put("baseball", "์ผ๊ตฌ");
System.out.println(map.containsKey("people"));
System.out.println(map.size()); // 1
6. keySet ๋ฉ์๋ : ๋งต์ ๋ชจ๋ key๋ฅผ ๋ชจ์์ ๋ฆฌํด
import java.util.HashMap;
public class Sample {
public static void main(String[] args) {
HashMap<String, String> map = new HashMap<>();
map.put("people", "์ฌ๋");
map.put("baseball", "์ผ๊ตฌ");
System.our.println(map.keySet()); // [baseball, people]
}
}
++ ) ๋งต์ ๊ฐ์ฅ ํฐ ํน์ง์ ์์์ ์์กดํ์ง ์๊ณ key๋ก value ๊ฐ์ ๊ฐ์ ธ์ค๋๊ฒ์ด์ง๋ง... ๊ฐ๋ map์ ์ ๋ ฅ๋ ์์๋๋ก ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ฑฐ๋ ์ ๋ ฅํ key์ ์ํด ์ ๋ ฌํ๋๋ก ์ ์ฅํ๊ณ ์ถ์ ์ ์๋ค...
- LinkedHashMap : ์ ๋ ฅ๋ ์์๋๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ
- TreeMap : ์ ๋ ฅ๋ key์ ์ค๋ฆ์ฐจ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅ
9) ์งํฉ
: ์งํฉ๊ณผ ๊ด๋ จ๋ ๊ฒ์ ์ฝ๊ฒ ์ฒ๋ฆฌํ๊ธฐ ์ํด ๋ง๋ ๊ฒ์ผ๋ก... HashSet, TreeSet, LinkedHashSet ๋ฑ์ด ์๋ค...
- ํน์ง 2๊ฐ์ง...
1. ์ค๋ณต์ ํ์ฉํ์ง ์๋๋ค
2, ์์๊ฐ ์๋ค(๋ฆฌ์คํธ์ ๋ฐฐ์ด์ ์์๊ฐ ์์ฃ ..., ์์๊ฐ ์๋ ์๋ฃํ์ด๋ผ ์ธ๋ฑ์ฑ์ ์ง์ํ์ง ์๋๋ค)
๊ต์งํฉ, ํฉ์งํฉ, ์ฐจ์งํฉ ๊ตฌํ๊ธฐ
1. ์งํฉ ์๋ฃํ 2๊ฐ ๋ง๋ค๊ธฐ
2. ๊ต์งํฉ ๊ตฌํ๊ธฐ
3. ํฉ์งํฉ ๊ตฌํ๊ธฐ
4. ์ฐจ์งํฉ ๊ตฌํ๊ธฐ
import java.util.Arrays;
import java.util.HashSet;
public class Sample {
public static void main(Stirng[] args) {
// ์งํฉ ์๋ฃํ ๋๊ฐ ๋ง๋ค๊ธฐ
HashSet<Integer> s1 = new HashSet<>(Arrays.asList(1, 2, 3, 4, 5, 6));
HashSet<Integer> s2 = new HashSet<>(Arrays.asList(4, 5, 6, 7, 8, 9));
// (๊ต์งํฉ) = retainAll ๋ฉ์๋ ์ด์ฉ
HashSet<Integer> intersection = new HashSet<>(s1); // s1์ผ๋ก intersection ์ด๋ผ๋ HashSet ๊ฐ์ฒด๋ฅผ ๋ณต์ฌํด ์์ฑ
intersection.retainAll(s2); // ๊ต์งํฉ ์ํ
System.out.println(intersection); // [4, 5, 6]
// (ํฉ์งํฉ) = addAll ๋ฉ์๋ ์ด์ฉ
HashSet<Integer> union = new HashSet<>(s1); // s1์ผ๋ก union ์์ฑ
union.addAll(s2); // ํฉ์งํฉ ์ํ
System.out.println(union); // [1, 2, 3, 4, 5, 6, 7, 8, 9]
// (์ฐจ์งํฉ) = removeAll ๋ฉ์๋ ์ด์ฉ
HashSet<Integer> substract = new HashSet<>(s1); // s1์ผ๋ก substract ์์ฑ
substract.removeAll(s2); // ์ฐจ์งํฉ ์ํ
System.out.println(substract); // [1, 2, 3]
}
}
์งํฉ ์๋ฃํ๊ณผ ๊ด๋ จ๋ ๋ฉ์๋ - add, addAll, remove
1. add: ์งํฉ ์๋ฃํ์ ๊ฐ์ ์ถ๊ฐ
import java.util.HashSet;
public class Sample {
public static void main(String[] args) {
HashSet<Stirng> set = new HashSet<>();
set.add("Jump");
set.add("To");
set.add("Java");
System.our.println(set); // [Java, To, Jump]
}
}
2. addAll : ํ๊บผ๋ฒ์ ์ฌ๋ฌ๊ฐ ๊ฐ์ ์ถ๊ฐ
import java.util.HashSet;
public class Sample {
public static void main(String[] args) {
HashSet<Stirng> set = new HashSet<>();
set.add("Jump");
set.add("To");
set.addAll(Arrays.asList("To", "Java"));
System.our.println(set); // [Java, To, Jump]
}
}
3. remove : ํน์ ๊ฐ์ ์ ๊ฑฐํ ๋ ์ฌ์ฉ
import java.util.HashSet;
public class Sample {
public static void main(String[] args) {
HashSet<Stirng> set = new HashSet<>(Arrays.asList("Jump", "To", "Java"));
set.add("To");
System.our.println(set); // [Java, Jump]
}
}
10) ์์ ์งํฉ
: enum ์๋ฃํ์ ์๋ก ์ฐ๊ด ์๋ ์ฌ๋ฌ ๊ฐ์ ์์ ์งํฉ์ ์ ์ํ ๋ ์ฌ์ฉ
public class Sample {
enum CoffesType {
AMERICANO,
ICE_AMERICANO,
CAFE_LATTE
};
public static void main(String[] args) {
System.out.println(CoffeeType.AMERICANO); // AMERICANO
System.out.println(CoffeeType.ICE_AMERICANO); // ICE_AMERICANO
System.out.println(CoffeeType.CAGE_LATTE); // CAFE_LATTE
}
}
// ๋ฐ๋ณต๋ฌธ์์๋ ์ฌ์ฉ ๊ฐ๋ฅ
public class Sample {
enum CoffesType {
AMERICANO,
ICE_AMERICANO,
CAFE_LATTE
};
public static void main(String[] args) {
for(CoffeeType type: CoffeeType.values()) {
System.out.println(type); // ์์๋๋ก AMERICANO, ICE_AMERICANO, CAFE_LATTE ์ถ๋ ฅ
}
}
}
- enum ์ฌ์ฉ์ ์ฅ์
1. ๋งค์ง ๋๋ฒ๋ฅผ ์ฌ์ฉํ ๋๋ณด๋ค ์ฝ๋๊ฐ ๋ช ํํ๋ค
2. ์๋ชป๋ ๊ฐ์ ์ฌ์ฉํด ์๊ธธ ์ ์๋ ์ค๋ฅ๋ฅผ ๋ง์ ์ ์๋ค
11) ํ ๋ณํ๊ณผ final
: ํ ๋ณํ์ด๋ ์๋ฃํ์ ๋ค๋ฅธ ์๋ฃํ์ผ๋ก ๋ฐ๊พธ๋ ๊ฒ ("123"๊ณผ ๊ฐ์ ๋ฌธ์์ด์ 123๊ณผ ๊ฐ์ ์ซ์ํ์ผ๋ก)
ํ๋ณํ
1. ๋ฌธ์์ด์ ์ ์๋ก
String num = "123";
//๋ฌธ์์ด์ ์ ์๋ก ๋ฐ๊พธ๊ธฐ ์ํด์๋ Integer ํด๋์ค๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค
public class Sample {
public static void main(String[] args) {
String num = "123";
int n = Integer.parseInt(num);
System.out.println(n); // 123
}
}
2. ์ ์๋ฅผ ๋ฌธ์์ด๋ก : ์ ์ ์์ ๋น ๋ฌธ์์ด์ ๋ํด ์ฃผ๊ธฐ
public class Sample {
public static void main(String[] args) {
int n = 123;
String num = "" + n;
System.out.println(num); // 123
}
}
++) String.valueOf(์ ์), Integer.toString(์ ์) ๋ชจ๋ ์ ์๋ฅผ ๋ฌธ์์ด๋ก ๋ฐ๊พผ๋ค....
public class Sample {
public static void main(String[] args) {
int n = 123;
String num1 = String.valueOf(n);
String num2 = Integer.toString(n);
System.out.println(num1); // 123
System.out.println(num2); // 123
}
}
3. ์์์ ์ด ํฌํจ๋์ด ์๋ ์ซ์ ํํ์ ๋ฌธ์์ด์ ๋ณํ
public class Sample {
public static void main(String[] args) {
String num = "123.456";
double d = Double.parseDouble(num);
System.out.println(d); // 123.456
}
}
4. ์ ์์ ์ค์ ์ฌ์ด์ ํ ๋ณํ
public class Sample {
public static void main(String[] args) {
int n1 = 123;
double d1 = n1;
System.out.println(d1); // 123.0
double d2 = 123.456;
int n2 = (int) d2;
System.out.println(n2); // 123
}
}
5. ์ค์ ํํ์ ๋ฌธ์์ด์ ์ ์๋ก ๋ฐ๊ฟ ๋
public class Sample {
public static void main(String[] args) {
String num = "123.456";
int n = Integer.parseInt(num); // ์ค์ ํํ์ ๋ฌธ์์ด์ ์ ์๋ก ๋ณํํ ๊ฒฝ์ฐ numberformatException์ด ๋ฐ์
}
}
// ์ค์ ํํ์ ๋ฌธ์์ด์ ์ซ์ํ์ผ๋ก ๋ฐ๊พธ๋ ค๋ฉด... Double.parseDouble()์ ์ด์ฉํด ์ค์๋ก ๋ณํ ํ ์ฌ์ฉ
final
: ์๋ฃํ์์ ๊ฐ์ ๋จ ํ ๋ฒ๋ง ์ค์ ํ ์ ์๊ฒ ๊ฐ์ ํ๋ ํค์๋ (๋ค์ ์ค์ ์๋ฉ๋๋ค)
public class Sample {
public static void main(String[] args) {
final int n = 123; // final๋ก ์ค์ ํ๋ฉด ๊ฐ์ ๋ฐ๊ฟ ์ ์๋ค
n = 456;
}
}
๋ฆฌ์คํธ์ ๊ฒฝ์ฐ๋ final๋ก ์ ์ธํ๋ฉด ์ฌํ ๋น์ ๋ถ๊ฐ๋ฅ...(๋ํ๊ฑฐ๋ ๋บด๊ธฐ๋ ๊ฐ๋ฅ)
import java.util.ArrayList;
import java.util.Arrays;
public class Sample {
public static void main(String[] args) {
final ArrayList<String> a = new ArrayList<>(Arrays.asList("a", "b"));
a = new ArrayList<>(Arrays,asList("c", "d")); // ์ปดํ์ผ ์ค๋ฅ ๋ฐ์
}
}
// ๊ทธ๋ฌ๋ฏ๋ก final์ ํ๋ก๊ทธ๋จ์ ์ํํ๋ฉด์ ๊ทธ ๊ฐ์ด ๋ฐ๋๋ฉด ์ ๋ ๋ ์ฌ์ฉํ๋ค
๋ฆฌ์คํธ์ ์ฌํ ๋น ๋ฟ๋ง์๋๋ผ ๋ํ๊ฑฐ๋ ๋นผ๋ ๊ฒ๋ ํ ์ ์๊ฒ ํ๊ณ ์ถ๋ค๋ฉด... List.of๋ฅผ ์์ฑํ์ฌ ์์ ํ ์ ์๋ ๋ฆฌ์คํธ๋ก ๋ง๋ค ์ ์๋ค!!!
import java.util.List;
public class Sample {
public static void main(String[] args) {
final List<String> a = List.of("a", "b");
a.add("c"); // UnsupportedOperationException ๋ฐ์
}
}
++) ๋ฌธ์ ํ์ด
6. myList.sort(Comparator,reverseOrder());
7. String result = String.join(" ", myList);
8. int result = grade.remove("B")
9. ArrayList<Integer> result = new ArratList<>(temp);
10.
public class Sample{
enum CoffeeType {
AMERICANO,
ICE_AMERICANO,
CAFE_LATTE
};
...
printCoffeePrice(CoffeeType,AMERICANO);
'ํ๋ก๊ทธ๋๋ฐ ์ธ์ด > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
java๊ฐ๋ ์ด๋ชจ์ ๋ชจ.. (1) | 2023.09.24 |
---|---|
์๋ฐ - ์ ์ด๋ฌธ ์ดํดํ๊ธฐ๐ค (0) | 2023.09.21 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ๐ฎ (0) | 2023.09.08 |
์๋ฐ ์์ํ๊ธฐ ๐ข (1) | 2023.09.05 |
java ๊ธฐ์ด(ํจํค์ง์ API ๋ฌธ์, java.lang ํจํค์ง) (0) | 2023.04.13 |
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ๐ฎ
์๋ฃํ(data type)?
๋ฐ์ดํฐ์ ์ข ๋ฅ์ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ ํ๋ ๊ธฐ๋ณธ ๊ตฌ์ฑ ์์๋ก ์ซ์, ๋ฌธ์์ด์ฒ๋ผ ์๋ฃ ํํ๋ก ์ฌ์ฉํ๋ ๋ชจ๋ ๊ฒ
1) ์ซ์
์ ์ : int, long(๋ง์ด ์ฌ์ฉํจ...) / byte, short(์ ์ฌ์ฉ ์ํจ)
์๋ฃํ | ํํ ๋ฒ์ |
int | -2147483648 ~ 2147483647 |
long | -9223372036854775808 ~ 9223372036854775807 |
byte | -128 ~ 127 |
short | -32768 ~ 32767 |
int age = 10;
long countingstar = 8764827384923849L;
// int ์๋ฃํ์ ์ต๋๊ฐ์ธ 2147483647๋ณด๋ค ํฌ๋ฉด L;๋ถ์ฌ์ค์ผ ํ๋ค!! => ์์ผ๋ฉด ์ปดํ์ผ ์ค๋ฅ ๋ฐ์
์ค์ : float, double
์๋ฃํ | ํํ ๋ฒ์ |
float | -3.4 * 10์ 38์น ~ 3.4 * 10์ 38์น |
double | -1.7 * 10์ 308์น ~ 1.7 * 10์ 308์น |
float pi = 3.14F;
double morePi = 3.14159265358979323846;
// ์๋ฐ ์ค์ ๊ธฐ๋ณธ๊ฐ์ double์ด๋ฏ๋ก float ๋ณ์์ ๊ฐ์ ๋์
ํ ๋๋ ์ ๋ฏธ์ฌ๋ก F์๋ฅผ ๊ผญ ๋ถ์ฌ์ค๋ค..
// ์ด๊ฒ ๋ํ ๋๋ฝํ๋ฉด ์ปดํ์ผ ์ค๋ฅ ๋ฐ์!!
8์ง์์ 16์ง์ : int ์๋ฃํฅ์ ์ฌ์ฉ
- 8์ง์ : ์ซ์ 0์ผ๋ก ์์, 0~7๊น์ง๋ฅผ ์ฌ์ฉํ์ฌ ์ซ์๋ฅผ ํํํ๋ค
- 16์ง์ : ์ซ์ 0๊ณผ ์ํ๋ฒณ x๋ก ์์..., 0~9๊น์ง์ ์ซ์์ A๋ถํฐ F๊น์ง์ ์ํ๋ฒณ์ ์ฌ์ฉํ์ฌ ์ซ์๋ฅผ ํํํ๋ค
int octal = 023; // ์ญ์ง์ : 19 (2 * 8์ 1์น + 3* 8์ 0์น)
int hex = 0xC3; // ์ญ์ง์ : 195 (12 * 16์ 1์น + 3 * 16์ 0์น)
์ซ์ ์ฐ์ฐ : ์ฌ์น์ฐ์ฐ๊ณผ ๋์ผ
// ๋๋จธ์ง ์ฐ์ฐ์ : %
public class practice {
public static void main(String[] args) {
System.out.println(7%3); // 1
System.out.println(3%7); // 3
}
}
์ฆ๊ฐ ์ฐ์ฐ : ++, -- ๊ธฐํธ๋ฅผ ์ด์ฉํ์ฌ ๊ฐ์ ์ฆ๊ฐ ๋๋ ๊ฐ์ (++, -- ๊ธฐํธ๋ฅผ ์ฆ๊ฐ ์ฐ์ฐ์๋ผ๊ณ ํ๋ค)
int i = 0;
int j = 10;
i ++;
j --;
System.out.println(i); // 1
System.out.println(j); // 9
์ฆ๊ฐ ์ฐ์ฐ์์ ์์น์ ๋ฐ๋ฅธ ๋ณํ..
- i++ : ๊ฐ์ ์ฐธ์กฐํ ํ์ ์ฆ๊ฐ
- ++i : ๊ฐ์ ์ฐธ์กฐํ๊ธฐ ์ ์ ์ฆ๊ฐ
// ํ์น ์ฆ๊ฐ ์ฐ์ฐ์...
int i = 0;
System.out.println(i++); // 0
System.out.println(i); // 1
// ์ ์น ์ฆ๊ฐ ์ฐ์ฐ์...
int i = 0;
System.out.println(++i); // 1
System.out.println(i); // 1
2) bool : ์ฐธ ๋๋ ๊ฑฐ์ง์ ๊ฐ์ ๊ฐ๋ ์๋ฃํ
๋ถ ์ฐ์ฐ : ๋ถ ์๋ฃํ์๋ ๋ถ ์ฐ์ฐ์ ๊ฒฐ๊ด๊ฐ์ ๋์ ํ ์ ์๋ค.
2 > 1 // ์ฐธ
1 == 2 // ๊ฑฐ์ง
3 % 2 == 1 // ์ฐธ
"3".equals("2") // ๊ฑฐ์ง
๋ถ ์ฐ์ฐ์ ๊ฒฐ๊ณผ๋ ์ฐธ ๋๋ ๊ฑฐ์ง์ด๋ฏ๋ก if ๋ฌธ๊ณผ ๊ฐ์ ์กฐ๊ฑด๋ฌธ์์ ์ฌ์ฉํ๊ฑฐ๋ ๋ถ์๋ฃํ์ ๋์ ํ ์ ์๋ค.
int i = 3;
boolean isOdd = i % 2 == 1;
System.out.println(isOdd); // true
3) ๋ฌธ์ : char ์๋ฃํ์ ์ฌ์ฉํ๋ค(๋ง์ด ์ฌ์ฉํ์ง๋ ์์ง๋ง ๋ฌธ์ฃ๊ฐ์ ํํํ๋ ๋ฐฉ์์ ๋ค์ํ๋ค)
char a1 = 'a'; // ๋ฌธ์๋ก ํํ
char a2 = 97; // ์์คํค์ฝ๋๋ก ํํ
char a3 = '\u0061'; // ์ ๋์ฝ๋๋ก ํํ
System.out.println(a1); // a
System.out.println(a2); // a
System.out.println(a3); // a
4) ๋ฌธ์์ด: String์ ์ฌ์ฉํ๋ค
// ๋ฆฌํฐ๋ด ํ๊ธฐ ๋ฐฉ์ : ๊ฐ์ฒด๋ฅผ ์์ฑํ์ง ์๊ณ ๊ณ ์ ๋ ๊ฐ์ ๊ทธ๋๋ก ๋์
ํ๋ ๋ฐฉ๋ฒ
String a = "Happy Java";
String b = "a";
String c = "123";
// new ํค์๋ : ์๋ก์ด ๊ฐ์ฒด๋ฅผ ๋ง๋ค ๋ ์ฌ์ฉ
String a = new String("Happy Java")
String b = new String("a")
String c = new String("123")
์์ ์๋ฃํ : int, long, double, float, boolean, char ์๋ฃํ์ ์์ ์๋ฃํ์ด๋ผ ํ๋ค.. ์ด๋ฌํ ์๋ฃํ๋ค์ new ํค์๋๋ก ๊ฐ์ ์์ฑํ ์ ์๋ค.. !!!!! String์ ๋ฆฌํฐ๋ด ํ๊ธฐ๋ฐฉ์์ ์ฌ์ฉํ ์ ์์ง๋ง ์์ ์๋ฃํ์ ํฌํจ ๋์ง ์๋๋ค!!!! ํน๋ณ ๋์ฐใ กใ ก
boolean result = true;
char a = 'A';
int i = 100000;
// String๋ง ๋๋ค ๊ฐ๋ฅ... ํน๋ณ ๋์ฐ ํ๋์...
String a = "JAVA"
String b = new String("Python")
Wrapper ํด๋์ค : ์์ ์๋ฃํ์ ๋์ํ๋ Wrapper ํด๋์ค๊ฐ ์๋๋ฐ ์ด๋ ์์ ์๋ฃํ์ ๋์ ํ์ฌ ์ฌ์ฉํ ์ ์๋ ์๋ฃํ์ผ๋ก, ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ๋ชจ๋ ๊ธฐ๋ฅ์ ํ์ฉํ ์ ์๊ฒ ํด์ค๋ค.
์์ ์๋ฃํ | Wrapper ํด๋์ค |
int | integer |
long | Long |
double | Double |
float | Float |
boolean | Boolean |
char | Char |
์์ผ๋ก ๊ณต๋ถํ ArrayList, HashMap, HashSet ๋ฑ์ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ ๋ ์์ ์๋ฃํ ๋์ ๊ทธ์ ๋์ํ๋ Wrapper ํด๋์ค๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค....
=> ๊ฐ ๋์ ๊ฐ์ฒด๋ฅผ ์ฃผ๊ณ ๋ฐ์ ์ฝ๋๋ฅผ ๊ฐ์ฒด ์ค์ฌ์ผ๋ก ์์ฑํ๋ ๋ฐ ์ ๋ฆฌ!!
=> ๋ฉํฐ ์ค๋ ๋ ํ๊ฒฝ์์ ๋๊ธฐํ๋ฅผ ์ง์ํ๊ธฐ ์ํด์๋ Wrapper ํด๋์ค๋ ๋ฐ๋์ ํ์!!
๋ฌธ์์ด ๋ด์ฅ ๋ฉ์๋ (๋ด์ฅ ๋ฉ์๋: ๋ฌธ์์ด ๊ฐ์ฒด์ ์ํ ํจ์...)
- equals: ๋ฌธ์์ด 2๊ฐ๊ฐ ๊ฐ์์ง๋ฅผ ๋น๊ตํ์ฌ ๊ฒฐ๊ด๊ฐ์ ๋ฆฌํด
// equals
String a = "hello";
String b = "java";
String c = "hello";
System.out.println(a.equals(b)); // false
System.out.println(a.equals(c)); // true
// equals ๋ฉ์๋์ == ์ฐ์ฐ์ ๋น๊ต...
String a = "hello";
String b = new String("hello");
System.out.println(a.equals(b)); // true
System.out.println(a == b)l // false
// ๊ฐ์ ๊ฐ์ง๋ง ==์ 2๊ฐ์ ์๋ฃํ์ด ๊ฐ์ ๊ฐ์ฒด์ธ์ง๋ฅผ ํ๋ณํ ๋ ์ฌ์ฉํ๋
์ฐ์ฐ์์ด์ง๋ง ์๋ก ๋ค๋ฅธ ๊ฐ์ฒด์๋ฏ๋ก false๋ฅผ ๋ฆฌํดํ๋ค...
- IndexOf: ๋ฌธ์์ด์์ ํน์ ๋ฌธ์์ด์ด ์์๋๋ ์์น(์ธ๋ฑ์ค ๊ฐ)๋ฅผ ๋ฆฌํด
String a = "Hello Java";
System.out.println(a.indexOf("Java"); // 6
- contains : ๋ฌธ์์ด์์ ํน์ ๋ฌธ์์ด์ด ํฌํจ๋์ด ์๋์ง ์ฌ๋ถ๋ฅผ ๋ฆฌํด
String a = "Hello Java"
System.out.println(a.contains("Java")); // true
- charAt : ๋ฌธ์์ด์์ ํน์ ์์น์ ๋ฌธ์๋ฅผ ๋ฆฌํด
String a = "Hello Java;
System.out.println(a.charAt(6)); // J
- replaceAll : ๋ฌธ์์ด์์ ํน์ ๋ฌธ์์ด์ ๋ค๋ฅธ ๋ฌธ์์ด๋ก ๋ฐ๊ฟ๋ ์ฌ์ฉ
String a = "Hello Java;
System.out.println(a.replaceAll("Java", "World")); // "Hello World"
- substring : ๋ฌธ์์ด์์ ํน์ ๋ฌธ์์ด์ ๋ฝ์๋ผ ๋ ์ฌ์ฉ
String a = "Hello Java;
System.out.println(a.substring(0, 4)); // "Hell
- toUpperCase: ๋ฌธ์์ด์ ๋ชจ๋ ๋๋ฌธ์๋ก ๋ณ๊ฒฝํ ๋ ์ฌ์ฉ
String a = "Hello Java;
System.out.println(a.toUpperCase()); // "HELLO JAVA"
- split : ๋ฌธ์์ด์ ํน์ ํ ๊ตฌ๋ถ์๋ก ๋๋์ด ๋ฌธ์์ด ๋ฐฐ์ด๋ก ๋ฆฌํด
String a = "a:b:c:d";
String[] result = a.split(":"); // result๋ {"a", "b", "c", "d"}
๋ฌธ์์ด ํฌ๋งคํ : ๋ฌธ์์ด ์์ ์ด๋ค ๊ฐ์ ์ฝ์ ํ๋ ๋ฐฉ๋ฒ (String.format ๋ฉ์๋๋ฅผ ์ฌ์ฉ)
- ์ซ์ ๋ฐ๋ก ๋์ ํ๊ธฐ(%d)
System.out.println(String.format("I eat %d apples.", 3)); // "I eat 3 apples."
// ์ซ์๋ฅผ ๋ฃ๊ณ ์ถ์ ์๋ฆฌ์ %d๋ฅผ ์
๋ ฅ, ์ฝ์
ํ ์ซ์๋ฅผ ๋๋ฒ์งธ ํ๋ผ๋ฏธํฐ๋ก ์ ๋ฌ
// %d : ๋ฌธ์์ด ํฌ๋งท ์ฝ๋..
- ๋ฌธ์์ด ๋ฐ๋ก ๋์ ํ๊ธฐ(%s)
System.out.println(String.format("I eat %s apples.", "five")); // "I eat five apples."
// %s : ๋ฌธ์์ด์ ๋ฃ๊ณ ์ถ์ ์๋ฆฌ์ ์ฌ์ฉ
- ๋ฌธ์์ด ํฌ๋งท ์ฝ๋์ ์ข ๋ฅ
์ข ๋ฅ | ์ค๋ช |
%s | ๋ฌธ์์ด(String) |
%c | ๋ฌธ์ 1๊ฐ(Character) |
%d | ์ ์(Integer) |
%f | ๋ถ๋ ์์(floating-point) |
%o | 8์ง์ |
%x | 16์ง์ |
%% | ํน์ ๋ฌธ์ % |
%s๋ ์ด๋ค ํํ์ ๊ฐ์ด๋ ๋ณํํ์ฌ ๋ฃ์ ์ ์์ ;;
- %% : ํน์ ๋ฌธ์ %
System.out.println(String.format("Error if %d%%.", 98));
Error is 98%.
- ์ ๋ ฌ๊ณผ ๊ณต๋ฐฑ ํํํ๊ธฐ
System.out.println(String.format("%10s", "hi.")); // " hi."
// %10s : ์ ์ฒด ๊ธธ์ด๊ฐ 10์ธ ๋ฌธ์์ด ๊ณต๊ฐ์์ ๋์
๋๋ ๊ฐ(hi)์ ๊ฐ์ฅ ์ค๋ฅธ์ชฝ์ผ๋ก ์ ๋ ฌํ๊ณ ๋๋จธ์ง๋ ๊ณต๋ฐฑ์ผ๋ก ๋จ๊ฒจ๋๋ผ๋ ์๋ฏธ
- ์์์ ํํํ๊ธฐ
System.out.println(String.format("%.4f", 3.42134234);; // 3.4213
// %.4f : ์์์ ๋ท์งธ ์๋ฆฌ๊น์ง๋ง ๋ํ๋ด๊ณ ์ถ์ดํ ๋ ์ฌ์ฉ...
// ๊ธธ์ด๊ฐ 10์ด๊ณ ์์์ ๋ท์งธ ์๋ฆฌ๊น์ง ํ์ํ๊ณ ์ถ๋ค๋ฉด... %10.4f
- System.out.printf
System.out.printf("I eat %d apples.", 3); // I eat 3 apples.
// System.out.printf ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด String.format ๋ฉ์๋๊ฐ ์์ด๋ ์ฌ์ฉ ๊ฐ๋ฅ!!
5) StringBuffer
: ๋ฌธ์์ด์ ์ถ๊ฐํ๊ฑฐ๋ ๋ณ๊ฒฝํ ๋ ์ฃผ๋ก ์ฌ์ฉํ๋ ์๋ฃํ
append : StringBuffer ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ ๋ฌธ์์ด์ ์์ฑ
StringBuffer sb = new StringBuffer(); // StringBuffer ๊ฐ์ฒด sb ์์ฑ
sb.append("hello");
sb.append(" ");
sb.append("jump to java");
String result = sb.toString();
System.out.println(result); // "hello jump to java"
++) toString() ๋ฉ์๋ ์ฌ์ฉํ๊ธฐ
String result = "";
result += "hello";
result += " ";
result += "jump to java";
System.out.println(result); // "hello jump to java"
=> ์ฒซ๋ฒ์งธ ๋๋ฒ์จฐ ๊ฒฐ๊ณผ๋ ๊ฐ์ง๋ง ๋ด๋ถ์ ์ผ๋ก ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ ๊ณผ์ ์ ๋ค๋ฅด๋ค..
์ฒซ๋ฒ์งธ๋ StringBuffer ๊ฐ์ฒด๋ฅผ ํ๋ฒ๋ง ์์ฑํ์ง๋ง... ๋๋ฒ์งธ๋ String ์๋ฃํ์ + ์ฐ์ฐ์ด ์์ ๋๋ง๋ค ์๋ก์ด String ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ฏ๋ก ์ด 4๊ฐ์ String ์๋ฃํฅ ๊ฐ์ฒด๊ฐ ๋ง๋ค์ด ์ง๋ค...
=> ๋ฌด์กฐ๊ฑด StringBuffer๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์๊น?
XX ์ํฉ์ ๋ฐ๋ผ ๋ค๋ฅด๋ค... StringBuffer ์๋ฃํ์ String ์๋ฃํ๋ณด๋ค ๋ฌด๊ฑฐ์ด ํธ์ ์ํ๋ค...
new StringBuffer()๋ก ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ฉด String ์ ์ฌ์ฉํ ๋๋ณด๋ค ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋๋ ๋ง๊ณ ์๋๋ ๋๋ฆฌ๊ธฐ ๋๋ฌธ์ ๋ฌธ์์ด์ ์ถ๊ฐํ๊ฑฐ๋ ๋ณ๊ฒฝํ๋ ์์ ์ด ๋ง์ผ๋ฉด StringBuffer๋ฅผ, ์ ์ผ๋ฉด String์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ ๋ฆฌํ๋ค
insert : ํน์ ์์น์ ์ํ๋ ๋ฌธ์์ด์ ์ฝ์
StringBuffer sb = new StringBuffer();
sb.append("jump to java");
sb.insert(0, "hello");
System.out.println(sb. toString()); // hello jump to java
- ๋ฌธ์ ๋ต-
1. ((a+b+c)/3), 70
2.
public class sol2 {
public static void main(String[] args) {
System.out.println(13 % 2);
}
}
3. pin.substring(0, 6);
4. pin.charAt(7));
5. a.replaceAll(":", "#")
'ํ๋ก๊ทธ๋๋ฐ ์ธ์ด > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์๋ฐ - ์ ์ด๋ฌธ ์ดํดํ๊ธฐ๐ค (0) | 2023.09.21 |
---|---|
์๋ฐ์ ๊ธฐ์ด - ์๋ฃํ2 (0) | 2023.09.13 |
์๋ฐ ์์ํ๊ธฐ ๐ข (1) | 2023.09.05 |
java ๊ธฐ์ด(ํจํค์ง์ API ๋ฌธ์, java.lang ํจํค์ง) (0) | 2023.04.13 |
java ๊ธฐ์ด(ํจํค์ง, ์์ ํด๋์ค์ ๋ถ๋ชจ ์์ฑ์, ์์๊ณผ ์ ๊ทผ์ ์ด (0) | 2023.04.07 |
์๋ฐ ์์ํ๊ธฐ ๐ข
1. main ๋ฉ์๋ ์ดํดํ๊ธฐ
- ํด๋์ค๋ฅผ ์คํํ๋ ค๋ฉด main ๋ฉ์๋๋ฅผ ์์ฑํด์ผํ๋ค
- ์์๊ณผ ๋์ ๊ด๋ฆฌํ๋ ๊ฒ = main ๋ฉ์๋(๋ฉ์๋๋ ํจ์์ ๋์ผํ ๊ฐ๋ )
- ์๋ฐ๋ ๋ชจ๋ ๊ฒ์ด ํด๋์ค ๊ธฐ๋ฐ์ด๋ฏ๋ก ์๋ฐ์์ ์ฌ์ฉํ๋ ํจ์๋ ๋ชจ๋ ๋ฉ์๋์ด๋ค
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
- public : ๋ฉ์๋์ ์ ๊ทผ ์ ์ด์๋ก, ๋๊ตฌ๋ ์ด ๋ฉ์๋์ ์ ๊ทผํ ์ ์๋ค๋ ์๋ฏธ
- static : ๋ฉ์๋์ static์ด ์ง์ ๋์ด ์์ผ๋ฉด ์ด ๋ฉ์๋๋ ์ธ์คํด์ค๋ฅผ ์์ฑํ์ง ์์๋ ์คํํ ์ ์๋ค๋ ๊ฒ์ ์๋ฏธ
- void : ๋ฉ์๋์ ๋ฆฌํด๊ฐ์ด ์์์ ์๋ฏธ(void = 'ํ ๋น')
- String[] : ๋ฌธ์์ด์ ๋ํ๋ด๋ ์๋ฐ์ ์๋ฃํ([]์ ๊ฐ์ด ์ฌ๋ฌ ๊ฐ๋ก ์ด๋ฃจ์ด์ง ๋ฐฐ์ด์ด๋ผ๋ ๊ฒ์ ์๋ฏธ)
- args: String[] ์๋ฃํ์ ๋ณ์๋ช
- System.out.println : ํ์ค ์ถ๋ ฅ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ์๋ฐ์ ๋ด์ฅ ๋ฉ์๋๋ก ๋ฌธ์์ด์ ํ๋ฉด์ ์ถ๋ ฅ
2. ์๋ฐ ์ฝ๋์ ๊ตฌ์กฐ ์ดํด๋ณด๊ธฐ
/* ํด๋์ค ๋ธ๋ก */
public class ํด๋์ค๋ช
{
/* ๋ฉ์๋ ๋ธ๋ก */
[public|private|protected] [static] (๋ฆฌํด์๋ฃํ|void) ๋ฉ์๋๋ช
1(์
๋ ฅ์๋ฃํ ๋งค๊ฐ๋ณ์, ...) {
๋ช
๋ น๋ฌธ(statement);
...
}
/* ๋ฉ์๋ ๋ธ๋ก */
[public|private|protected] [static] (๋ฆฌํด์๋ฃํ|void) ๋ฉ์๋๋ช
2(์
๋ ฅ์๋ฃํ ๋งค๊ฐ๋ณ์, ...) {
๋ช
๋ น๋ฌธ(statement);
...
}
...
}
- ํด๋์ค ๋ธ๋ก : ์๋ฐ ์ฝ๋์ ๊ฐ์ฅ ๋ฐ๊นฅ์ชฝ ์์ญ / ํด๋์ค๋ช ์ ์ฌ์ฉ์ ๋ง์๋๋ก ์ง์ ์ o / ์ฌ๋ฌ ๋ฉ์๋ ๋ธ๋ก์ ํฌํจ
public class Sample {
(... ์๋ต ...)
}
# ํด๋์ค ๋ช
: Sample
# ํด๋์ค ๋ธ๋ก์ ์ค๊ดํธ({})๋ก ๋๋ฌ์ธ์ผ ํ๋ค
# public์ ์๋ฐ์ ์ ๊ทผ ์ ์ด์๋ก, ์ด๋์๋ ์ด ํด๋์ค์ ์ ๊ทผํ ์ ์์์ ์๋ฏธ
# class๋ ํด๋์ค ๋ธ๋ก์ ๋ง๋๋ ํค์๋
- ๋ฉ์๋ ๋ธ๋ก : [public | private | protected] : ๋ฉ์๋์ ์ ๊ทผ ์ ์ด์ / [static] : static ํค์๋๊ฐ ๋ถ์ผ๋ฉด ํด๋์ค ๋ฉ์๋๊ฐ ๋์ด ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ง ์์๋ 'ํด๋์ค๋ช .๋ฉ์๋๋ช ' ํํ๋ก ํธ์ถํ ์ ์๋ค / [void (๋ฆฌํด์๋ฃํ)] : ๋ฆฌํด๊ฐ์ด ์์์ ์๋ฏธ
public class Sample {
public static void main(String[] args) {
(... ์๋ต ...)
}
}
# ๋ฉ์๋ ๋ธ๋ก์ ํด๋์ค ๋ธ๋ก ์์ ์์ผ๋ฉฐ ์ญ์ ์ค๊ดํธ({})๋ก ์์ญ์ ๊ตฌ๋ถํ๋ค
# ์ด ๋ฉ์๋์ ์ด๋ฆ์ main์ด๋ค
- ๋ช ๋ น๋ฌธ : ๋ฉ์๋ ๋ธ๋ก ์์๋ ๋ช ๋ น๋ฌธ์ด ์์... ์ปดํจํฐ์ ๋ฌด์ธ๊ฐ ์ผ์ ์ํค๋ ๋ฌธ์ฅ
public class Sample {
public static void main(String[] args) {
System.out.println("Hello java");
}
}
# ๋ช
๋ น๋ฌธ์ ๋ฐ๋์ ์ธ๋ฏธ์ฝ๋ก (;)์ ๋ถ์ฌ ๋ฌธ์ฅ์ด ๋๋ฌ๋ค๋ ๊ฒ์ ํ์ํด์ผํ๋ค
# ๋ฉ์๋ ๋ธ๋ก ์์๋ ๋ช
๋ น๋ฌธ์ด ์ฌ๋ฌ ๊ฐ ์์ ์ ์๋ค.
3. ๋ณ์์ ์๋ฃํ
- ๋ณ์(variable) : ๊ฐ์ ๋ฃ์ ์ ์๋ ๋น ์์์ ๊ฐ๋ค๊ณ ์๊ฐ!
int a;
String b;
int one;
String two;
# ๋ณ์ ์ด๋ฆ์ ์ง์ ๋์ 3๊ฐ์ง ๊ท์น
1. ๋ณ์๋ช
์ ์ซ์๋ก ์์ํ ์ ์๋ค ex) int 1st;
2. _์ &์ด์ธ์ ํน์ ๋ฌธ์๋ ์ฌ์ฉํ ์ ์๋ค ex) int a#;
3. int, class, return๋ฑ์ ์๋ฐ์ ํค์๋๋ ๋ณ์๋ช
์ผ๋ก ์ฌ์ฉํ ์ ์๋ค ex) int class;
- ์๋ฃํ(type) : ๊ฐ์๋ ์ด๋ค ํํ๊ฐ ์ ํด์ ธ์ผ ํ๋๋ฐ... ์ด๊ฒ์ ํํ๋ฅผ ๋งํจ
int a; // ๋ณ์ a์ ์๋ฃํ์ int(์ ์)์ด๋ค => 1, 10, 25
String b; // ๋ณ์ b์ ์๋ฃํ์ String(๋ฌธ์์ด)์ด๋ค => 'a', 'hello'
- ๋ณ์์ ๊ฐ ๋์ ํ๊ธฐ : ๋ณ์ ์ ์ธ ํ, ๋ณ์์ ๊ฐ์ =(๋์ ์ฐ์ฐ์) ์ฌ์ฉํ์ฌ ๋์
int a;
String b;
a = 1; // int ์๋ฃํ ๋ณ์์ a์ 1์ด๋ผ๋ ๊ฐ์ ๋์
b = 'hello java'; // String ์๋ฃํ ๋ณ์ b์ "hello java" ๋ผ๋ ๊ฐ์ ๋์
int a = 1;
String b = "hello java";
- ์ฌ์ฉ์ ์ ์ ์๋ฃํ : ์ฌ์ฉ์๊ฐ ์๋ฃํ์ ์ง์ ๋ง๋ค ์ ์๋ค!!
class Animal {
}
Animal cat; // cat ๋ณ์์ ์๋ฃํ์ Animal์ด๋ฉฐ, cat ๋ณ์์ Animal ์๋ฃํ์ ํด๋นํ๋ ๊ฐ๋ง ๋์
๊ฐ๋ฅ
4. ์ด๋ฆ ์ง๋ ๊ท์น
- ํด๋์ค ์ด๋ฆ ์ง๊ธฐ
# ํด๋์ค๋ช
์ ๋ช
์ฌ๋ก ํ๋ค.
# ํด๋์ค๋ช
์ ๋๋ฌธ์๋ก ์์ํ๋ค.
# ์ฌ๋ฌ ๊ฐ์ ๋จ์ด๋ฅผ ์กฐํฉํ์ฌ ๋ง๋ค ๊ฒฝ์ฐ ๊ฐ ๋จ์ด์ ์ฒซ ๋ฒ์งธ ๊ธ์๋ ๋๋ฌธ์์ฌ์ผ ํ๋ค
class Cookie {}
class ChocoCookie {}
- ๋ฉ์๋ ์ด๋ฆ ์ง๊ธฐ
# ๋ฉ์๋๋ช
์ ๋์ฌ๋ก ํ๋ค.
# ๋ฉ์๋๋ช
์ ์๋ฌธ์๋ก ์์ํ๋ค.
# ์ฌ๋ฌ ๊ฐ์ ๋จ์ด๋ฅผ ์กฐํฉํ์ฌ ๋ง๋ค ๊ฒฝ์ฐ ๋งจ ์ฒซ ๊ธ์๋ฅผ ์ ์ธํ ๋๋จธ์ง ๋จ์ด์ ์ฒซ ๊ธ์๋ ๋๋ฌธ์๋ฅผ ์จ์ ๊ตฌ๋ถ
run();
runFast();
getBackground();
- ๋ณ์ ์ด๋ฆ ์ง๊ธฐ
# ๋ณ์ ์ด๋ฆ์ ์งง์ง๋ง ์๋ฏธ๊ฐ ์์ด์ผ ํจ = ๋ณ์๋ช
์ ๋ณด๋ฉด ์ฌ์ฉํ ์ด์ ๋ฅผ ์ ์ ์์ด์ผ ํจ
# ์์๋ฅผ ์๋ฏธํ๊ณ ์์๋ก ์ฐ์ด๋ ์ ์์ ๋ณ์๋ช
์ i, j, k, m, n์ ์ฌ์ฉ
# ๋ณ์๋ช
์ _, $๋ฅผ ์ธ ์ ์์ง๋ง, ์์ ๋ฌธ์๋ก ์ฌ์ฉํ๋ ๊ฒ์ ์ง์
String useName;
float lineWidth;
int i; // ์ฃผ๋ก ๋ฐ๋ณต๋ฌธ์์ ์ฌ์ฉ
char c; // ์ฃผ๋ก ๋ฐ๋ณต๋ฌธ์์ ์ฌ์ฉ
5. ์ฃผ์
- ํ๋ก๊ทธ๋๋จธ์ ์๊ฒฌ์ด๋ ์ฝ๋์ ์ค๋ช ์ ์ ์ ์ ์๋ค
- ์ฃผ์์ ํ๋ก๊ทธ๋จ ์ฝ๋์ ์ฝ์ ํ๋๋ผ๋ ํ๋ก๊ทธ๋จ์ ์ํํ๋ ๋ฐ ์ ํ ์ํฅ์ ๋ผ์น์ง ์๋๋ค
- ๋ธ๋ก ์ฃผ์๊ณผ ๋ผ์ธ ์ฃผ์์ ๋๊ฐ์ง ํํ๊ฐ ์๋ค
# ๋ธ๋ก ์ฃผ์ : /*๋ก ์์ํ๊ณ */์ผ๋ก ๋๋๋ค.. / ์ฝ๋์์ ๋ธ๋ก ๋จ์(ํด๋์ค, ๋ฉ์๋ ๋ฑ)๋ก ์ค๋ช
ํ ๋ ์ฃผ๋ก ์ฌ์ฉ
/*
๋๋ ์ง์ ๊ฐ๊ณ ์ถ์ต๋๋ค
์๋๋ฉด ์์๋ณ์ ๊ฑธ๋ ธ๊ธฐ ๋๋ฌธ์
๋๋ค
์ง์ ๋ฉ๋๋ค... ํ๋ญ๋๋ค
*/
public class Saffy {
# ๋ผ์ธ ์ฃผ์ : // ๊ธฐํธ๋ฅผ ์ฌ์ฉ, //๊ฐ ์์๋ ๊ณณ๋ถํฐ ๊ทธ ๋ผ์ธ์ ๋๊น์ง ์ฃผ์, ์ฃผ์์ด ํ์ค์ผ ๊ฒฝ์ฐ ์ฃผ๋ก ์ฌ์ฉ
int age; // ๋๋ฌผ์ ๋์ด
- ์ฃผ์ ์ฌ๋ฐ๋ฅด๊ฒ ์ฌ์ฉํ๊ธฐ : ์๋งํ ๋ด์ฉ์ ์ฃผ์ ์ฌ์ฉํ์ฌ ์ง์ ๋ถํ๊ฒ ๋ง๋ค์ง ์๊ธฐ, ์ฝ๋์ ์๋ฑํ ์ฃผ์๋ฌธ ๋ฌ๋ ค ํผ๋์ ์ฃผ์ง ์๊ฒ ํ๊ธฐ