Search

์ธ์ž ์ „๋‹ฌ ๋ฐฉ์‹

์ธ์ž ์ „๋‹ฌ ๋ฐฉ์‹

์ž๋ฐ”๋Š” ๊ฐ’์— ์˜ํ•œ ์ „๋‹ฌ(Pass by Value) ๋ฐฉ์‹๋งŒ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€ข
๊ธฐ๋ณธ ์ž๋ฃŒํ˜•(Primitive Type): ์‹ค์ œ ๊ฐ’์ด ๋ณต์‚ฌ๋˜์–ด ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค.
void changeValue(int x) { x = 10; // ์›๋ณธ ๊ฐ’์€ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Œ } int num = 5; changeValue(num); System.out.println(num); // ์ถœ๋ ฅ: 5
Java
๋ณต์‚ฌ
๊ธฐ๋ณธ ์ž๋ฃŒํ˜•์€ ๊ฐ’์„ ๋ณต์‚ฌํ•ด์„œ ์ „๋‹ฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”์†Œ๋“œ์˜ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•ด๋„, ๋ณธ๋ž˜์˜ ๋ณ€์ˆ˜์˜ ๊ฐ’์€ ๋ณ€ํ•˜์ง€ ์•Š๋Š”๋‹ค.
โ€ข
์ฐธ์กฐ ์ž๋ฃŒํ˜•(Reference Type): ๊ฐ์ฒด์˜ ์ฐธ์กฐ๊ฐ’(์ฃผ์†Œ)์ด ๋ณต์‚ฌ๋˜์–ด ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค.
void changeArray(int[] arr) { arr[0] = 100; // ์›๋ณธ ๋ฐฐ์—ด์ด ๋ณ€๊ฒฝ๋จ arr = new int[5]; // ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ๋ณ€๊ฒฝํ•จ } int[] numbers = {1, 2, 3}; changeArray(numbers); System.out.println(numbers[0]); // ์ถœ๋ ฅ: 100
Java
๋ณต์‚ฌ
์ž๋ฐ”์—์„œ ๊ฐ์ฒด๋ฅผ ์ „๋‹ฌํ•  ๋•Œ๋Š” ์ฐธ์กฐ๊ฐ’์ด ์ „๋‹ฌ๋˜๋ฏ€๋กœ, ๋ฉ”์„œ๋“œ ๋‚ด์—์„œ ๊ฐ์ฒด์˜ ๋‚ด๋ถ€ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ฉด ์›๋ณธ ๊ฐ์ฒด์—๋„ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.
์ค‘์š”: ํ•˜์ง€๋งŒ ์ฐธ์กฐ ์ •๋ณด(๋ ˆํผ๋Ÿฐ์Šค)๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์€ ์›๋ณธ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.