๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
1. Java ์ž๋ฐ”/1_0. ์ฑ…, ๊ฐ•์˜

[์ž๋ฐ”ํ”„๋กœ๊ทธ๋ž˜๋ฐ1] 6์ฃผ์ฐจ ๊ฐ•์˜_ํ•„๊ธฐ

by ๋น„์†Œ์•ผ 2022. 4. 23.
728x90

[์ž๋ฐ”ํ”„๋กœ๊ทธ๋ž˜๋ฐ1] 6์ฃผ์ฐจ ๊ฐ•์˜_ํ•„๊ธฐ

ํ‚ค์ž…๋ ฅ, ์‹๊ณผ ์—ฐ์‚ฐ์ž, ์ œ์–ด๋ฌธ

1์ฐจ์‹œ ํ‚ค์ž…๋ ฅ(System.in, Scanner)

 

System.in // ํ‘œ์ค€ ์ž…๋ ฅ
ํ‚ค๋ณด๋“œ๋กœ๋ถ€ํ„ฐ ์ง์ ‘ ์ฝ๋Š” ์ž๋ฐ”์˜ ํ‘œ์ค€ ์ž…๋ ฅ ์ŠคํŠธ๋ฆผ
ํ‚ค ๊ฐ’์„ ๋ฐ”์ดํŠธ ๋‹จ์œ„๋กœ ๋ฆฌํ„ด // 1byte์ด๋ฏ€๋กœ ๋ฌธ์ž ์•„๋‹˜
๊ทธ๋Ÿฌ๋ฏ€๋กœ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ๋ฌธ์ž ์ •๋ณด๋กœ ๋ณ€ํ™˜ํ•ด์•ผ ํ•˜๋Š” ๋ฌธ์ œ์ ์ด ์žˆ์Œ

Scanner ํด๋ž˜์Šค
System.in์—๊ฒŒ ํ‚ค๋ฅผ ์ฝ๊ฒŒ ํ•˜๊ณ , ๋‹ค์–‘ํ•œ ํƒ€์ž…์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ๋ฆฌํ„ด
import java.util.Scanner; // ๋‹ค๋ฅธ ํŒจํ‚ค์ง€์— ์žˆ๋Š” ํด๋ž˜์Šค ์‚ฌ์šฉํ•˜๋ฏ€๋กœ import๋ฌธ ์„ ์–ธ ํ•„์š”
Scanner scanner = new Scanner(System.in); // scanner ๊ฐ์ฒด ์ƒ์„ฑ
์ž…๋ ฅ๋œ ํ‚ค ๊ฐ’์„ ๊ณต๋ฐฑ๋ฌธ์ž๋กœ ๊ตฌ๋ถ„๋˜๋Š” ํ† ํฐ ๋‹จ์œ„๋กœ ์ฝ์Œ // ‘\t’, ‘\f’, ‘\r’, ‘ ‘, ‘\n’
next() // ๋‹ค์Œ ํ† ํฐ์„ ๋ฌธ์ž์—ด๋กœ ๋ฆฌํ„ด
nextLine() // \n์„ ํฌํ•จํ•˜๋Š” ํ•œ ์ค„์„ ์ฝ์–ด๋“ค์ธ ๋’ค, \n์„ ์ œ์™ธํ•œ ๋ฌธ์ž์—ด ๋ฆฌํ„ด
nextInt() // ๋‹ค์Œ ํ† ํฐ์„ intํ˜•์œผ๋กœ ๋ฆฌํ„ด
close() // ์‚ฌ์šฉ ์ข…๋ฃŒ

hasNext() // ํ˜„์žฌ ์ž…๋ ฅ๋œ ํ† ํฐ์ด ์žˆ์œผ๋ฉด true๋ฅผ ๋ฆฌํ„ด, ์•„๋‹ˆ๋ฉด ๋ฌดํ•œ์ • ๋Œ€๊ธฐ, ctrl+z ํ‚ค๊ฐ€ ์ž…๋ ฅ๋˜๋ฉด ์ž…๋ ฅ ๋์ด๋ฏ€๋กœ false ๋ฆฌํ„ด

 

์‹๊ณผ ์—ฐ์‚ฐ

์‹ // ํ”ผ์—ฐ์‚ฐ์ž์™€ ์—ฐ์‚ฐ์ž๋กœ ์ด๋ฃจ์–ด์ง
์—ฐ์‚ฐ // ์ฃผ์–ด์ง„ ์‹์„ ๊ณ„์‚ฐํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ ์–ป์–ด๋‚ด๋Š” ๊ณผ์ •
์—ฐ์‚ฐ์ž์˜ ์šฐ์„ ์ˆœ์œ„๋Š” ์ƒ์‹์ ์œผ๋กœ ์ƒ๊ฐํ•˜๋ฉด ๋จ
๋‹จํ•ญ, ์ดํ•ญ, ์‚ผํ•ญ ์—ฐ์‚ฐ์ž์ˆœ
๋Œ€์ž…์—ฐ์‚ฐ์ž๊ฐ€ ๊ฐ€์žฅ ๋‚˜์ค‘
๊ด„ํ˜ธ๋Š” ์ตœ์šฐ์„ ์ˆœ์œ„
์ผ๋ฐ˜์ ์œผ๋กœ ์™ผ์ชฝ์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์—ฐ์‚ฐ


์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž
์˜ค์น™ ์—ฐ์‚ฐ, %๋Š” ๋‚˜๋จธ์ง€ ์—ฐ์‚ฐ์ž

์ฆ๊ฐ ์—ฐ์‚ฐ์ž
1 ์ฆ๊ฐ€ ๋˜๋Š” ๊ฐ์†Œ์‹œํ‚ค๋Š” ์—ฐ์‚ฐ์ž
์ „์œ„, ํ›„์œ„ ์—ฐ์‚ฐ์ž์— ๋”ฐ๋ผ ์—ฐ์‚ฐ ์ˆœ์„œ๊ฐ€ ๋‹ฌ๋ผ์ง„๋‹ค. // ++a;๋Š” +1 ๋จผ์ €, a++;์€ +1 ๋‚˜์ค‘

๋Œ€์ž… ์—ฐ์‚ฐ์ž // ์˜ค๋ฅธ์ชฝ ๊ฐ’์„ ์™ผ์ชฝ์— ๋Œ€์ž…
๋ณตํ•ฉ ๋Œ€์ž… ์—ฐ์‚ฐ์ž // ์˜ค๋ฅธ์ชฝ์— ๋Œ€์ž… ์—ฐ์‚ฐ์ž๊ฐ€ ์žˆ๋‹ค. ex) +=
๋Œ€์ž… ์—ฐ์‚ฐ์ž, ์ฆ๊ฐ์—ฐ์‚ฐ์ž์˜ ์‚ฌ์šฉ -> ํ—ท๊ฐˆ๋ฆผ // ๋ฐ˜๋“œ์‹œ ๊ทธ๋ฆผ์„ ๊ทธ๋ ค์„œ ์ƒ๊ฐํ•ด๋ณด๊ธฐ

2์ฐจ์‹œ ์‹๊ณผ ์—ฐ์‚ฐ์ž

 

int a = 3, b = 3, c= 3; // ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ณ€์ˆ˜ ์„ ์–ธ ๋ฐ ์ดˆ๊ธฐํ™” ์ฝค๋งˆ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ํ•œ ์ค„๋กœ ์ž‘์„ฑ ๊ฐ€๋Šฅ

๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž 
! not // true์ด๋ฉด false
&& and // ๋‘˜๋‹ค true์—ฌ์•ผ true
|| or // ๋‘˜ ์ค‘ ํ•˜๋‚˜๋งŒ true์—ฌ๋„ true
^ xor //  ์„œ๋กœ ๋‹ฌ๋ผ์•ผ true

 

๋น„๊ต ์—ฐ์‚ฐ์ž๋Š” ์ขŒํ•ญ์„ ๊ธฐ์ค€์œผ๋กœ ์ฝ์Œ
๋น„๊ต ์—ฐ์‚ฐ์ž์™€ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž์˜ ๋ณตํ•ฉ์‚ฌ๋ก€์—์„œ ์ˆ˜ํ•™์ ์œผ๋กœ ํ‘œํ˜„ํ•˜๋ฉด ์ปดํŒŒ์ผ ์—๋Ÿฌ // ๋ฌธ๋ฒ• ์˜ค๋ฅ˜

์กฐ๊ฑด ์—ฐ์‚ฐ์ž // ํ•จ์ถ•์ ์œผ๋กœ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ๋” ์ข‹์€ ์ฝ”๋“œ

๋น„ํŠธ ์—ฐ์‚ฐ์ž // ๋น„ํŠธ ๋‹จ์œ„๋กœ ์—ฐ์‚ฐ, ๋น„ํŠธ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ๊ณผ ๋น„ํŠธ ์‹œํ”„ํŠธ ์—ฐ์‚ฐ์ด ์žˆ์Œ
๋น„ํŠธ ๋…ผ๋ฆฌ์—ฐ์‚ฐ์ž๋Š” ์—ฐ์‚ฐ์ž 1๊ฐœ๋งŒ ์“ด๋‹ค. Ex) &, |, ~, ^
์˜ค๋ฅธ์ชฝ์œผ๋กœ 2๊ฐœ ์‹œํ”„ํŠธ ์—ฐ์‚ฐ์ด๋ฉด ์˜ค๋ฅธ์ชฝ 2๊ฐœ์˜ ๋น„ํŠธ๋ฅผ ์—†์•ค๋‹ค. // a >> 2

์กฐ๊ฑด๋ฌธ
๋‹จ์ˆœ if๋ฌธ // if(์กฐ๊ฑด์‹) {์กฐ๊ฑด์‹์ด ์ฐธ์ด๋ฉด ์‹คํ–‰๋  ๋ฌธ์žฅ}
if-else๋ฌธ // if() {} else {}
๋‹ค์ค‘ if-else๋ฌธ // if() {} else if() {} else {}
์ค‘์ฒฉ if-else๋ฌธ // if() { if() {} else {} } else {}
if๋ฌธ์—์„œ ๋ธ”๋ก{}์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ฒƒ๊ณผ ๊ด€๋ จ๋˜์–ด ์‹คํ–‰๋จ

 

๋‹ค์ค‘ if-else๋ฌธ์€ switch๋ฌธ์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ์ด ์ข‹์Œ // ๋œ ํ—ท๊ฐˆ๋ฆผ

3์ฐจ์‹œ ์ œ์–ด๋ฌธ(์กฐ๊ฑด๋ฌธ, ๋ฐ˜๋ณต๋ฌธ)

 

switch๋ฌธ //

switch(์‹){
  case ๊ฐ’1:
    ์‹คํ–‰๋ฌธ์žฅ1;
    break;
  case ๊ฐ’2:
    ์‹คํ–‰๋ฌธ์žฅ2;
    break;

  default:
    ์‹คํ–‰๋ฌธ์žฅn;
}

break; // ํ”„๋กœ๊ทธ๋žจ์—์„œ break;๋ฌธ์„ ๋งŒ๋‚˜๋ฉด ์ž๊ธฐ์ž์‹ ์„ ๋‘˜๋Ÿฌ์‹ธ๊ณ  ์žˆ๋Š” ๋ธ”๋ก {} ์œผ๋กœ๋ถ€ํ„ฐ ๋ฒ—์–ด๋‚œ๋‹ค.

switch๋ฌธ์—์„œ case๋ฅผ ํ•œ๋ฒˆ๋งŒ ๊ฒ€์‚ฌํ•˜๋ฏ€๋กœ break;๋ฌธ์ด ์—†๋‹ค๋ฉด break;๋ฌธ์„ ๋งŒ๋‚  ๋•Œ๊นŒ์ง€ ๋‹ค์Œ ์‹คํ–‰๋ฌธ์žฅ๋“ค์„ ๊ณ„์† ์‹คํ–‰ํ•œ๋‹ค.

case๋ฌธ์˜ ๊ฐ’์€ ์‹ค์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด์€ ํ—ˆ์šฉ๋˜์ง€ ์•Š์Œ // ์ •์ˆ˜, ๋ฌธ์ž, ๋ฌธ์ž์—ด ๋ฆฌํ„ฐ๋Ÿด๋งŒ ๊ฐ€๋Šฅ
byte, short, int, char, String // ๊ฐ€๋Šฅ
long, float, double // ๋ถˆ๊ฐ€๋Šฅ, long์€ ์ •์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด ์ค‘์—์„œ ์œ ์ผํ•˜๊ฒŒ ์•ˆ๋˜๋Š” ํƒ€์ž…


3์žฅ ๋ฐ˜๋ณต๋ฌธ๊ณผ ๋ฐฐ์—ด ๊ทธ๋ฆฌ๊ณ  ์˜ˆ์™ธ์ฒ˜๋ฆฌ
๋ฐ˜๋ณต๋ฌธ // for, while, do-while

for(์ดˆ๊ธฐ๋ฌธ; ์กฐ๊ฑด์‹; ๋ฐ˜๋ณต ํ›„ ์ž‘์—…๋ฌธ) {
 ์‹คํ–‰๋ฌธ์žฅ;
}

 

์ดˆ๊ธฐ๋ฌธ์— ๋ฐ˜๋ณต ์ œ์–ด ๋ณ€์ˆ˜ ์„ ์–ธ ๊ฐ€๋Šฅ
์ดˆ๊ธฐ๋ฌธ๊ณผ ๋ฐ˜๋ณต ํ›„ ์ž‘์—…๋ฌธ์— ,๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋ฌธ์žฅ ๋‚˜์—ด ๊ฐ€๋Šฅ

๋ฌดํ•œ๋ฐ˜๋ณต
1. ์กฐ๊ฑด์‹์— ๋…ผ๋ฆฌ ๋ฆฌํ„ฐ๋Ÿด true;
2. ์กฐ๊ฑด์‹์„ ๋น„์›Œ๋‘  ; ;

while(์กฐ๊ฑด์‹){ 
์‹คํ–‰๋ฌธ์žฅ;
}

do

์‹คํ–‰๋ฌธ์žฅ;
} while(์กฐ๊ฑด์‹);

while๋ฌธ ๋์—๋Š” ์„ธ๋ฏธ์ฝœ๋ก ์ด ์—†์ง€๋งŒ, do while๋ฌธ ๋์—๋Š” ์„ธ๋ฏธ์ฝœ๋ก ์ด ์žˆ์–ด์•ผ ํ•จ
while, do-while๋ฌธ ์กฐ๊ฑด์‹์— ์‚ฌ์šฉ๋  ๋ฐ˜๋ณต ์ œ์–ด ๋ณ€์ˆ˜๋Š” ๊ทธ ์ „์— ์„ ์–ธ๋˜์–ด ์žˆ์–ด์•ผ ํ•จ

while, do-while๋ฌธ ๋ฌดํ•œ๋ฐ˜๋ณต์„ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ์กฐ๊ฑด์‹์„ ๋น„์›Œ๋‘๋ฉด ์ปดํŒŒ์ผ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒ

 

728x90