Banner

My Tech Blog (์ œ๋„ค๋ฆญ)

์ฝ”ํ…Œ ๋ฌธ์ œ ํ’€ ๋•Œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‚˜ ์ž๋ฃŒ๊ตฌ์กฐ๋„ ๊ณต๋ถ€ํ•ด์•ผ ํ•˜์ง€๋งŒ, ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์ค‘์š”ํ•˜๋‹ค.ํด๋ฆฐ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์•„๋ž˜ ์„ธ ๊ฐ€์ง€ ์Šต๊ด€์„ ๋“ค์—ฌ์•ผ ํ•œ๋‹ค.ํ•˜๋ฃจ ์•„์นจ์— ์ฝ”๋“œ ์“ฐ๋Š” ์Šต๊ด€์ด ๋ฐ”๋€Œ์ง€๋Š” ์•Š๊ฒ ์ง€๋งŒ ๋งค๋ฒˆ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•  ๋•Œ๋งˆ๋‹ค ์ด๋Ÿฌํ•œ ์Šต๊ด€์„ ์—ผ๋‘์— ๋‘๊ณ  ์ž‘์„ฑํ•˜๋‹ค ๋ณด๋ฉด ์ ์ฐจ ํด๋ฆฐ ์ฝ”๋“œ ์ž‘์„ฑ ๋Šฅ๋ ฅ์ด ํ–ฅ์ƒ๋  ๊ฒƒ์ด๋ผ๊ณ  ๊ธฐ๋Œ€ํ•œ๋‹ค.  1. ์กฐ๊ธฐ๋ฐ˜ํ™˜ (early return)์กฐ๊ธฐ ๋ฆฌํ„ด(early return)์€ ์กฐ๊ฑด์ด ์ถฉ์กฑ๋˜๋ฉด ํ•จ์ˆ˜๋‚˜ ๋ฉ”์„œ๋“œ์—์„œ ๋ฐ”๋กœ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ๋ฒ•์ด๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋ถˆํ•„์š”ํ•œ ๊ณ„์‚ฐ์„ ํ”ผํ•˜๊ณ  ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.์˜ˆ๋ฅผ ๋“ค์–ด, totalPrice ํ•จ์ˆ˜์—์„œ ๊ฐ€๊ฒฉ์ด 100์„ ์ดˆ๊ณผํ•˜๋Š” ๊ฒฝ์šฐ ๋ฐ”๋กœ ํ• ์ธ์„ ์ ์šฉํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์งค ๋•Œ, ์กฐ๊ธฐ ๋ฆฌํ„ด์„ ํ•˜์ง€ ์•Š์œผ๋ฉด ํ• ์ธ ๋กœ์ง์„ ..
1. ์ œ๋„ค๋ฆญ์Šค(Generics) ์ œ๋„ค๋ฆญ์Šค๋ž€?์ œ๋„ค๋ฆญ์Šค(generics)๋Š” ์ž๋ฐ” J2SE 5.0 ๋ฒ„์ „ ์ดํ›„์— ๋„์ž…๋œ ๊ฐœ๋…์œผ๋กœ, ์ž๋ฃŒํ˜•์„ ์•ˆ์ „ํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“ค์–ด ์ฃผ๋Š” ๊ธฐ๋Šฅ์ด๋‹ค. ์ œ๋„ค๋ฆญ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ž๋ฃŒํ˜•์„ ๊ฐ•์ œ๋กœ ๋ฐ”๊ฟ€ ๋•Œ ์ƒ๊ธธ ์ˆ˜ ์žˆ๋Š” ์บ์ŠคํŒ…(Casting) ์˜ค๋ฅ˜๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค. ArrayList๋Š” ์ž๋ฐ”์˜ **์ œ๋„ค๋ฆญ์Šค(Generics)**๋ฅผ ํ™œ์šฉํ•˜๋Š” ๋Œ€ํ‘œ์ ์ธ ์ปฌ๋ ‰์…˜ ํด๋ž˜์Šค์ด๋‹ค. ์ œ๋„ค๋ฆญ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ArrayList์— ์ €์žฅํ•  ์š”์†Œ์˜ ํƒ€์ž…์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๊ณ , ๋•๋ถ„์— ํ˜• ๋ณ€ํ™˜ ์—†์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค. (ํƒ€์ž… ์•ˆ์ •์„ฑ ๋ณด์žฅ) ArrayList๋Š” ArrayList ํ˜•ํƒœ๋กœ ์ •์˜ํ•˜๋Š”๋ฐ, ์—ฌ๊ธฐ์„œ E๋Š” ์ €์žฅํ•  ์š”์†Œ์˜ ํƒ€์ž…์„ ๋‚˜ํƒ€๋‚ด๋Š” ํƒ€์ž… ๋งค๊ฐœ๋ณ€์ˆ˜์ด๋‹ค. ArrayList,ArrayList์ฒ˜๋Ÿผ ์ œ๋„ค๋ฆญ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ •..
package ex02_ArrayList; import java.util.ArrayList; public class ArraylistMain { public static void main(String[] args) { // Collection // ์š”์†Œ(Element)๋ผ๊ณ  ๋ถˆ๋ฆฌ๋Š” ๊ฐ€๋ณ€ ๊ฐœ์ˆ˜์˜ ๊ฐ์ฒด๋“ค์˜ ์žกํ•ฉ // (๊ธฐ๋ณธ ์ž๋ฃŒํ˜•์„ ์ €์žฅํ•˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅ int, double, float์•ˆ๋จ) ๊ฐ์ฒด๋งŒ์„ ์ €์žฅ // ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ์ฒด ๋ณด๊ด€ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ค์–ด์ง„ ํด๋ž˜์Šค๋“ค์˜ ์žกํ•ฉ // ๊ณ ์ • ํฌ๊ธฐ์˜ ๋ฐฐ์—ด์„ ๋‹ค๋ฃจ๋Š” ๋ถˆํŽธํ•จ ํ•ด์†Œ // ์š”์†Œ์˜ ๊ฐœ์ˆ˜์— ๋”ฐ๋ผ ์ž๋™ ํฌ๊ธฐ ์กฐ์ ˆ // ์š”์†Œ์˜ ์ถ”๊ฐ€, ์‚ญ์ œ์— ๋”ฐ๋ฅธ ์š”์†Œ์˜ ์ด๋™์ž๋™๊ด€ // ์ œ๋„ค๋ฆญ(generic) ๊ธฐ๋ฒ•์œผ๋กœ ๊ตฌํ˜„ // Collection์˜ ํ•œ ์ข…๋ฅ˜์ธ ArrayList // - ๊ฐ€..
์ธ์ ˆ๋ฏธ์˜€๋˜๊ฒƒ
'์ œ๋„ค๋ฆญ' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก
์ƒ๋‹จ์œผ๋กœ