CodeGym /Java Blog /๋ฌด์ž‘์œ„์˜ /Java์˜ ๋‹จํ•ญ ์—ฐ์‚ฐ์ž ์ฆ๊ฐ€ ๋ฐ ๊ฐ์†Œ
John Squirrels
๋ ˆ๋ฒจ 41
San Francisco

Java์˜ ๋‹จํ•ญ ์—ฐ์‚ฐ์ž ์ฆ๊ฐ€ ๋ฐ ๊ฐ์†Œ

๋ฌด์ž‘์œ„์˜ ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค

๋‹จํ•ญ ์—ฐ์‚ฐ์ž

๋‹จํ•ญ ์—ฐ์‚ฐ์ž๋Š” ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ๋‹จ์ผ ํ”ผ์—ฐ์‚ฐ์ž ๋งŒ ํ•„์š”ํ•œ Java์˜ ์—ฐ์‚ฐ์ž์ž…๋‹ˆ๋‹ค . ๊ทธ๋“ค์€ ์ˆ˜ํ•™์˜ ๋‹จํ•ญ ์—ฐ์‚ฐ ๊ณผ ๋™์ผํ•œ ์›๋ฆฌ๋กœ ์ž‘์—…ํ•ฉ๋‹ˆ๋‹ค . ์˜ˆ๋ฅผ ๋“ค์–ด ๋‹จํ•ญ ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์–‘์ˆ˜ ๊ฐ’, ์Œ์ˆ˜ ๊ฐ’์„ ๋‚˜ํƒ€๋‚ด๊ฑฐ๋‚˜ ๊ฐ’์„ 1์”ฉ ์ฆ๊ฐ€์‹œํ‚ค๊ฑฐ๋‚˜ ๊ฐ’์„ 1์”ฉ ๊ฐ์†Œ์‹œํ‚ค๊ฑฐ๋‚˜ ๊ฐ’์„ ๋ถ€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • +x(์–‘์ˆ˜ ๊ฐ’)
  • -x(์Œ์ˆ˜ ๊ฐ’)
  • ++x(์ฆ๊ฐ€ ์—ฐ์‚ฐ)
  • --x(๊ฐ์†Œ ์—ฐ์‚ฐ)
  • !x(๋ถ€์ •)

๋‹จํ•ญ ์—ฐ์‚ฐ์ž์˜ ์œ ํ˜•

๋‹จํ•ญ ์—ฐ์‚ฐ์ž์—๋Š” 5๊ฐ€์ง€ ์œ ํ˜•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

1. ๋‹จํ•ญ ํ”Œ๋Ÿฌ์Šค

+x = x ๋˜๋Š” +5 = 5์™€ ๊ฐ™์€ ์–‘์ˆ˜ ๊ฐ’์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

2. ๋‹จํ•ญ ๋นผ๊ธฐ

-x = -x ๋˜๋Š” -5 = -5์™€ ๊ฐ™์€ ์Œ์ˆ˜ ๊ฐ’์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

3. ์ฆ๋ถ„ ๋‹จํ•ญ ์—ฐ์‚ฐ์ž

++x = x+1์ธ ๊ฒฝ์šฐ ๊ฐ’์„ 1์”ฉ ์ฆ๊ฐ€์‹œํ‚ต๋‹ˆ๋‹ค.

4. ๋‹จํ•ญ ์—ฐ์‚ฐ์ž ๊ฐ์†Œ

๊ฐ’์„ 1์”ฉ ๊ฐ์†Œ์‹œํ‚ต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ --x = x-1์ž…๋‹ˆ๋‹ค.

5. ๋…ผ๋ฆฌ์  ๋ณด์™„

x = true์ธ ๊ฒฝ์šฐ !x๊ฐ€ false๊ฐ€ ๋˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ถ€์šธ ๊ฐ’์„ ๋…ผ๋ฆฌ์ ์œผ๋กœ ๋ฐ˜์ „ํ•ฉ๋‹ˆ๋‹ค.

์ฆ๋ถ„ ์—ฐ์‚ฐ์ž(++)

์ฆ๋ถ„(++) ์—ฐ์‚ฐ์ž(์ฆ๋ถ„ ๋‹จํ•ญ ์—ฐ์‚ฐ์ž๋ผ๊ณ ๋„ ํ•จ)๋Š” Java์—์„œ ๋ณ€์ˆ˜ ๊ฐ’์„ 1์”ฉ ์ฆ๊ฐ€์‹œํ‚ค๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋‹จํ•ญ ์—ฐ์‚ฐ์ž์˜ ํ•œ ์œ ํ˜•์ด๋ฏ€๋กœ ๋‹จ์ผ ํ”ผ์—ฐ์‚ฐ์ž์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ†ต์‚ฌ๋ก 

์ฆ๋ถ„ ์—ฐ์‚ฐ์ž์˜ ๊ตฌ๋ฌธ์€ ํ•œ ์Œ์˜ ๋”ํ•˜๊ธฐ ๊ธฐํ˜ธ์ž…๋‹ˆ๋‹ค.
++์—‘์Šค; x++;
์—ฐ์‚ฐ์ž๋Š” ๋ณ€์ˆ˜ ์•ž์ด๋‚˜ ๋’ค์— ์ ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค 1์”ฉ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‘˜ ๋‹ค ๋ณ„๋„์˜ ์šฉ๋„๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ ๋‹ค์Œ ์œ ํ˜•์œผ๋กœ ๋ถ„๋ฅ˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์‚ฌ์ „ ์ฆ๋ถ„ ์—ฐ์‚ฐ์ž
  • ์‚ฌํ›„ ์ฆ๋ถ„ ์—ฐ์‚ฐ์ž

์˜ˆ


public class IncrementOperator {

	public static void main(String[] args) {

		int variable = 15;
		System.out.println("Original value of the variable = " + variable);
		
		// after using increment operator 
		variable++; 	 //  increments 1, variable = 16
		System.out.println("variable++ = " + variable); 

		++variable;		//  increments 1, variable = 17
		System.out.println("++variable = " + variable); 
	}
}

์‚ฐ์ถœ

๋ณ€์ˆ˜์˜ ์›๋ž˜ ๊ฐ’ = 15 ๋ณ€์ˆ˜++ = 16 ++๋ณ€์ˆ˜ = 17

์„ ํ–‰ ์ฆ๊ฐ€ ์—ฐ์‚ฐ์ž(++x;)

์ฆ๊ฐ€ ์—ฐ์‚ฐ์ž(++)๊ฐ€ ์ ‘๋‘์‚ฌ(++x)์ฒ˜๋Ÿผ ๋ณ€์ˆ˜ ์•ž์— ์ง€์ •๋˜๋ฉด ์ด๋ฅผ ์„ ํ–‰ ์ฆ๊ฐ€ ์—ฐ์‚ฐ์ž๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ๋ณ€์ˆ˜ ๊ฐ’์€ ๋จผ์ € 1์”ฉ ์ฆ๊ฐ€ํ•œ ๋‹ค์Œ ์ถ”๊ฐ€ ๊ณ„์‚ฐ์ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.

์˜ˆ


public class PreIncrementOperator {

	public static void main(String[] args) {

		int variable = 5;
		System.out.println("Original value of the variable = " + variable);
		
		// using pre-increment operator 
		int preIncrement = ++variable; 

		System.out.println("variable = " + variable); 
		System.out.println("preIncrement = " + preIncrement); 
		System.out.println("++preIncrement = " + ++preIncrement); 	
	}
}

์‚ฐ์ถœ

๋ณ€์ˆ˜์˜ ์›๋ž˜ ๊ฐ’ = 5 ๋ณ€์ˆ˜ = 6 preIncrement = 6 ++preIncrement = 7

์‚ฌํ›„ ์ฆ๋ถ„ ์—ฐ์‚ฐ์ž(x++;)

์ฆ๋ถ„ ์—ฐ์‚ฐ์ž(++)๊ฐ€ ์ ‘๋ฏธ์‚ฌ(x++)์ฒ˜๋Ÿผ ๋ณ€์ˆ˜ ๋’ค์— ์ง€์ •๋˜๋ฉด ํ›„์ฆ๊ฐ€ ์—ฐ์‚ฐ์ž๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ๋ณ€์ˆ˜์˜ ์›๋ž˜ ๊ฐ’(์ฆ๋ถ„ ์—†์Œ)์ด ๊ณ„์‚ฐ์— ์‚ฌ์šฉ๋œ ๋‹ค์Œ 1์”ฉ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ


public class PostIncrementOperator {

	public static void main(String[] args) {

		int variable = 100;
		System.out.println("Original value of the variable = " + variable);
		
		// using post-increment operator 
		int postIncrement = variable++; // postIncrement = 100, variable = 101

		System.out.println("postIncrement = " + postIncrement); 
		System.out.println("variable = " + variable + "\n"); 
		
            // postIncrement = 101
		System.out.println("postIncrement++ = " + postIncrement++);
            // postIncrement = 102
		System.out.println("postIncrement++ = " + postIncrement++); 
            // postIncrement = 103
		System.out.println("postIncrement++ = " + postIncrement++); 
		
		System.out.println("\npostIncrement = " + postIncrement); 
	}
}

์‚ฐ์ถœ

์›๋ž˜ ๋ณ€์ˆ˜ = 100 postIncrement = 100 ๋ณ€์ˆ˜ = 101 postIncrement++ = 100 postIncrement++ = 101 postIncrement++ = 102 postIncrement = 103

๊ฐ์†Œ ์—ฐ์‚ฐ์ž(--)

Decrement๋Š” ์ด๋ฆ„์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด ๋ณ€์ˆ˜์˜ ๊ฐ’์„ 1๋งŒํผ ์ค„์ด๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๋‹จํ•ญ ์—ฐ์‚ฐ์ž ์œ ํ˜• ์ค‘ ํ•˜๋‚˜์ด๋ฏ€๋กœ ๋‹จ์ผ ํ”ผ์—ฐ์‚ฐ์ž์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ†ต์‚ฌ๋ก 

๊ฐ์†Œ ์—ฐ์‚ฐ์ž์˜ ๊ตฌ๋ฌธ์€ ํ•œ ์Œ์˜ ์Œ์ˆ˜ ๊ธฐํ˜ธ์ž…๋‹ˆ๋‹ค.
--์—‘์Šค; ์—‘์Šค--;
์ฆ๊ฐ€ ์—ฐ์‚ฐ์ž์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๊ฐ์†Œ(--) ์—ฐ์‚ฐ์ž๋„ ๋ณ€์ˆ˜ ์•ž๋’ค์— ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค 1์˜ ๋™์ผํ•œ ๊ฐ์†Œ๋ฅผ ์ดˆ๋ž˜ํ•ฉ๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค ๊ณ ์œ ํ•œ ์šฉ๋„๊ฐ€ ์žˆ์œผ๋ฉฐ ์ถ”๊ฐ€ ์œ ํ˜•์—์„œ ๋ถ„๊ธฐ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์„ ํ–‰ ๊ฐ์†Œ ์—ฐ์‚ฐ์ž
  • ์‚ฌํ›„ ๊ฐ์†Œ ์—ฐ์‚ฐ์ž

์„ ํ–‰ ๊ฐ์†Œ ์—ฐ์‚ฐ์ž(--x;)

๊ฐ์†Œ ์—ฐ์‚ฐ์ž(--)๊ฐ€ ์ ‘๋‘์‚ฌ(--x)์ฒ˜๋Ÿผ ๋ณ€์ˆ˜ ์•ž์— ๋‚˜์˜ค๋ฉด ์„ ํ–‰ ๊ฐ์†Œ ์—ฐ์‚ฐ์ž๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ๋ณ€์ˆ˜ ๊ฐ’์„ ๋จผ์ € 1์”ฉ ๊ฐ์†Œ์‹œํ‚จ ๋‹ค์Œ ๋‹ค๋ฅธ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ


public class PreDecrementOperator {

	public static void main(String[] args) {
	
		int variable = 11;
		System.out.println("Original value of the variable = " + variable);
		
		// using preDecrement operator 
		int preDecrement = --variable; 
            
            // variable = 10
		System.out.println("variable = " + variable); 
            // preDecrement = 10
		System.out.println("preDecrement = " + preDecrement); 
            // preDecrement = 9		
		System.out.println("--preDecrement = " + --preDecrement);  	}
}

์‚ฐ์ถœ

๋ณ€์ˆ˜์˜ ์›๋ž˜ ๊ฐ’ = 11 ๋ณ€์ˆ˜ = 10 preDecrement = 10 --preDecrement = 9

์‚ฌํ›„ ๊ฐ์†Œ ์—ฐ์‚ฐ์ž(x--;)

ํ›„์œ„(x--)์ฒ˜๋Ÿผ ๋ณ€์ˆ˜ ๋’ค์— ๊ฐ์†Œ ์—ฐ์‚ฐ์ž(--)๊ฐ€ ์žˆ์œผ๋ฉด ํ›„์œ„ ๊ฐ์†Œ ์—ฐ์‚ฐ์ž๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ๋ณ€์ˆ˜์˜ ์›๋ž˜ ๊ฐ’(๊ฐ์†Œ ์—†์Œ)์ด ๊ณ„์‚ฐ์— ์‚ฌ์šฉ๋œ ๋‹ค์Œ 1์”ฉ ๊ฐ์†Œํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ


public class PostDecrementOperator {

	public static void main(String[] args) {
	
		int variable = 75;
		System.out.println("Original value of the variable = " + variable);
		
		// using postDecrement operator 
            // postDecrement = 75, variable = 74
		int postDecrement = variable--; 
		System.out.println("postDecrement = " + postDecrement); 
		System.out.println("variable = " + variable + "\n"); 
		// postDecrement = 74
		System.out.println("postDecrement-- = " + postDecrement--); 
            // postDecrement = 73
		System.out.println("postDecrement-- = " + postDecrement--); 
            // postDecrement = 72
		System.out.println("postDecrement-- = " + postDecrement--);
		
		System.out.println("\npostDecrement = " + postDecrement); 
	}
}
๋ณ€์ˆ˜์˜ ์›๋ž˜ ๊ฐ’ = 75 postDecrement = 75 ๋ณ€์ˆ˜ = 74 postDecrement-- = 75 postDecrement-- = 74 postDecrement-- = 73 postDecrement = 72

๊ฒฐ๋ก 

์ด ๊ฒŒ์‹œ๋ฌผ์ด ๋๋‚  ๋•Œ๊นŒ์ง€ Java์˜ ์ฆ๊ฐ€ ๋ฐ ๊ฐ์†Œ ๋‹จํ•ญ ์—ฐ์‚ฐ์ž์— ์ต์ˆ™ํ•ด์กŒ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. CodeGym์—์„œ ๊ฒฝ๊ณ„ ์‚ฌ๋ก€ ๋ฐ ๊ธฐํƒ€ ์—ฐ์Šต ๋ฌธ์ œ๋ฅผ ์—ฐ์Šตํ•˜์—ฌ ๊ธฐ์ˆ ์— ์ž์‹ ๊ฐ์„ ๊ฐ€์งˆ ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ๋ฐฐ์šด ๋‚ด์šฉ์„ ๋ณด๊ฐ•ํ•˜๋ ค๋ฉด Java ๊ณผ์ •์—์„œ ๋น„๋””์˜ค ๊ฐ•์˜๋ฅผ ์‹œ์ฒญํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.
ํ–‰์šด๊ณผ ํ–‰๋ณตํ•œ ํ•™์Šต!
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION