#3 [Java] ์ „์—ญ๋ณ€์ˆ˜, ์ง€์—ญ๋ณ€์ˆ˜, ์ถœ๋ ฅ ํฌ๋งท

    ๐Ÿ“Œ ์ „์—ญ ๋ณ€์ˆ˜์™€ ์ง€์—ญ ๋ณ€์ˆ˜

    ๋ณ€์ˆ˜๋Š” ์„ ์–ธ ์œ„์น˜์— ๋”ฐ๋ผ ์ „์—ญ ๋ณ€์ˆ˜์™€ ์ง€์—ญ๋ณ€์ˆ˜๋กœ ๋‚˜๋ˆ ์ง„๋‹ค.

    โœ… ์ „์—ญ ๋ณ€์ˆ˜ (Global variable)

    : ์–ด๋А ์œ„์น˜์—์„œ๋“  ํ˜ธ์ถœํ•˜๋ฉด ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅ
    ํ•จ์ˆ˜ ๋ฐ–์— ์„ ์–ธํ•˜์—ฌ ํด๋ž˜์Šค ์ „์ฒด์—์„œ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•œ ํ•จ์ˆ˜

     

    โœ… ์ง€์—ญ ๋ณ€์ˆ˜ (Local variable)

    : ํŠน์ • ๊ตฌ์—ญ ({}) ๋‚ด์—์„œ ์ƒ์„ฑ๋˜์–ด ๊ทธ ๊ตฌ์—ญ ๋‚ด์—์„œ๋งŒ ์‚ฌ์šฉ
    ํ•จ์ˆ˜ ์•ˆ์— ์„ ์–ธํ•˜์—ฌ ํ•ด๋‹น ํ•จ์ˆ˜ ์†์—์„œ๋งŒ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•œ ํ•จ์ˆ˜


    ๐Ÿ’ก .hasNext()

    ๊ฐ’์ด ์ž…๋ ฅ๋˜์—ˆ๋Š”์ง€ ์•„๋‹Œ์ง€ Boolean ํƒ€์ž…์œผ๋กœ ์ถœ๋ ฅ
    

    ๐Ÿ’ก .equals()

    ๋ฌธ์ž์—ด(String ์ฃผ์†Œ์˜ ๊ฐ’)์ด ๊ฐ™์€์ง€ ๋‹ค๋ฅธ์ง€ ๋น„๊ต, ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„, boolean์œผ๋กœ ๋ฐ˜ํ™˜

    ๐Ÿ’ก .nextLine(), .next(), .nextInt()

    next() : ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋ฌธ์ž์—ด ๊ฐ’ (์—”ํ„ฐ์น˜๊ธฐ ์ „ ๊ณต๋ฐฑ์€ ํฌํ•จ๋˜์ง€ ์•Š์Œ)
    
    nextLine() : ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋ฌธ์ž์—ด ๊ฐ’ (์—”ํ„ฐ์น˜๊ธฐ ์ „ ๊ณต๋ฐฑ๊นŒ์ง€ ํฌํ•จ)
    
    nextInt() : ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ์ •์ˆ˜ ๊ฐ’
    

    ๐Ÿ’ก String ์ž๋ฃŒํ˜•๊ณผ์˜ '+' ์—ฐ์‚ฐ

    String + String = String
    String + ๊ธฐ๋ณธ ์ž๋ฃŒํ˜• = String
    ๊ธฐ๋ณธ ์ž๋ฃŒํ˜• + String = String 
    
    => String ๊ณผ ์—ฐ์‚ฐํ•˜๋ฉด String์ด ๋จ

    ๐Ÿ“Œ ์ž๋ฐ” ์ถœ๋ ฅ ํฌ๋งท

    ๐Ÿ’ก %,d

    ์ •์ˆ˜๋ฅผ 1,000๋‹จ์œ„๋กœ ๋Š์–ด์„œ ,(์ฝค๋งˆ)๋ฅผ ์ž๋™์œผ๋กœ ์ถœ๋ ฅ

    ๐Ÿ’ก %.nf

    ์†Œ์ˆ˜๋ฅผ n๋ฒˆ์งธ ์ž๋ฆฌ๊นŒ์ง€ ๋ฐ˜์˜ฌ๋ฆผํ•ด์„œ ์ถœ๋ ฅ

    ๐Ÿ’ก %.ns

    ๋ฌธ์ž์—ด์„ n๋ฒˆ์งธ ์ž๋ฆฌ๊นŒ์ง€ ์ถœ๋ ฅ

    ๐Ÿ’ก %nd , %ns

    n์ž๋ฆฌ ์ˆ˜ ๋งŒํผ ์™ผ์ชฝ๋ถ€ํ„ฐ ๊ณต๋ฐฑ์œผ๋กœ ์ฑ„์›€ 

    ๐Ÿ’ก %-nd , %-ns

    n์ž๋ฆฌ ์ˆ˜ ๋งŒํผ ์˜ค๋ฅธ์ชฝ๋ถ€ํ„ฐ ๊ณต๋ฐฑ์œผ๋กœ ์ฑ„์›€ 

    ๐Ÿ’ก %0nd

    n์ž๋ฆฌ ์ˆ˜ ๋งŒํผ ์™ผ์ชฝ๋ถ€ํ„ฐ 0์œผ๋กœ ์ฑ„์›€ 

    ์ž๋ฐ” ์ถœ๋ ฅ ํฌ๋งท ์˜ˆ์‹œ

    public class Ex05 {
    		public static void main(String[] args) {
    			String name = "ํ™๊ธธ๋™ ์ž…๋‹ˆ๋‹ค";
    			int age = 21;
    			int money = 1000000;
    			float avg = 90.98984f;
    			
    			System.out.println("์ด๋ฆ„ "+name+" ๋‚˜์ด "+age+" ํ‰๊ท  "+avg);
    			System.out.printf("์ด๋ฆ„ %s ๋‚˜์ด %,d ํ‰๊ท  %.1f \n", name,age,avg);
    			
    			System.out.printf("[%6d]\n",age); //์ž๋ฆฌ ์ˆ˜๋งŒํผ ์™ผ์ชฝ๋ถ€ํ„ฐ ๊ณต๋ฐฑ์œผ๋กœ ์ฑ„์šฐ๊ธฐ
    			System.out.printf("[%-6d]\n",age); //์ž๋ฆฌ ์ˆ˜๋งŒํผ ์˜ค๋ฅธ์ชฝ๋ถ€ํ„ฐ ๊ณต๋ฐฑ์œผ๋กœ ์ฑ„์šฐ๊ธฐ
    			System.out.printf("[%06d]\n",age); //์ž๋ฆฌ ์ˆ˜๋งŒํผ ์™ผ์ชฝ๋ถ€ํ„ฐ 0์œผ๋กœ ์ฑ„์šฐ๊ธฐ
    			System.out.printf("[%,d]\n",money); 
    			
    			System.out.printf("[%20s]\n",name);
    			System.out.printf("[%-20s]\n",name);
    			System.out.printf("[%.3s...]\n",name);
    			
    			System.out.println("์•ˆ๋…•\t์šฐ๋ฆฌ๋‚˜๋ผ\t12\tํ•˜์ด");
    			System.out.println("1234567812345678123456781234567812345678");
    			
    			
    		}
    	
    }
    ์ด๋ฆ„ ํ™๊ธธ๋™ ์ž…๋‹ˆ๋‹ค ๋‚˜์ด 21 ํ‰๊ท  90.98984
    ์ด๋ฆ„ ํ™๊ธธ๋™ ์ž…๋‹ˆ๋‹ค ๋‚˜์ด 21 ํ‰๊ท  91.0 
    [    21]
    [21    ]
    [000021]
    [1,000,000]
    [             ํ™๊ธธ๋™ ์ž…๋‹ˆ๋‹ค]
    [ํ™๊ธธ๋™ ์ž…๋‹ˆ๋‹ค             ]
    [ํ™๊ธธ๋™...]
    ์•ˆ๋…•	    ์šฐ๋ฆฌ๋‚˜๋ผ	12	    ํ•˜์ด
    12345678123456781234567812345678

    ์ดˆ๊ฐ„๋‹จ ํšŒ์›๊ฐ€์ž…/๋กœ๊ทธ์ธ

    import java.util.Scanner;
    
    public class Ex07 {
    	public static void main(String[] args) {
    		Scanner scan = new Scanner(System.in);
    		System.out.println("1.ํšŒ์›๊ฐ€์ž… 2.๋กœ๊ทธ์ธ 3.์ข…๋ฃŒ");
    		System.out.print("๋ฉ”๋‰ด ์„ ํƒ : ");
    
    		String name = "";
    		String id = "";
    		String pw = "";
    
    		int menu = scan.nextInt();
    		scan.nextLine();
    		if (menu == 1) {
    			System.out.println("ํšŒ์›๊ฐ€์ž…");
    			System.out.print("์ด๋ฆ„ ์ž…๋ ฅ : ");
    			name = scan.nextLine();
    			System.out.print("์•„์ด๋”” ์„ค์ • : ");
    			id = scan.nextLine();
    			System.out.print("๋น„๋ฐ€๋ฒˆํ˜ธ ์„ค์ • : ");
    			pw = scan.nextLine();
    		} else if (menu == 2) {
    			System.out.print("์•„์ด๋”” ์ž…๋ ฅ : ");
    			String loginID = scan.nextLine();
    
    			System.out.print("ํŒจ์Šค์›Œ๋“œ ์ž…๋ ฅ : ");
    			String loginpw = scan.nextLine();
    
    			if (loginID.equals(loginID) && loginpw.equals(pw)) {
    				System.out.println(name + "๋‹˜ ๋กœ๊ทธ์ธ ์„ฑ๊ณต");
    			} else {
    				System.out.println("๋กœ๊ทธ์ธ ์ •๋ณด๋ฅผ ํ™•์ธํ•ด์ฃผ์„ธ์š”.");
    			}
    		}
    		else if (menu == 3) {
    			System.out.println("์ข…๋ฃŒ");
    		}
    		System.out.println("");
    		System.out.println("1.ํšŒ์›๊ฐ€์ž… 2.๋กœ๊ทธ์ธ 3.์ข…๋ฃŒ");
    		System.out.print("๋ฉ”๋‰ด ์„ ํƒ : ");
    		//๋ฐ˜๋ณต
    		menu = scan.nextInt();
    		scan.nextLine();
    		if (menu == 1) {
    			System.out.println("ํšŒ์›๊ฐ€์ž…");
    			System.out.print("์ด๋ฆ„ ์ž…๋ ฅ : ");
    			name = scan.nextLine();
    			System.out.print("์•„์ด๋”” ์„ค์ • : ");
    			id = scan.nextLine();
    			System.out.print("๋น„๋ฐ€๋ฒˆํ˜ธ ์„ค์ • : ");
    			pw = scan.nextLine();
    			System.out.println("ํšŒ์›๊ฐ€์ž… ์„ฑ๊ณต");
    		} else if (menu == 2) {
    			System.out.print("์•„์ด๋”” ์ž…๋ ฅ : ");
    			String loginID = scan.nextLine();
    
    			System.out.print("ํŒจ์Šค์›Œ๋“œ ์ž…๋ ฅ : ");
    			String loginpw = scan.nextLine();
    
    			if (loginID.equals(loginID) && loginpw.equals(pw)) {
    				System.out.println(name + "๋‹˜ ๋กœ๊ทธ์ธ ์„ฑ๊ณต");
    			} else {
    				System.out.println("๋กœ๊ทธ์ธ ์ •๋ณด๋ฅผ ํ™•์ธํ•ด์ฃผ์„ธ์š”.");
    			}
    		}
    		else if (menu == 3) {
    			System.out.println("์ข…๋ฃŒ");
    		}
    		System.out.println("");
    		System.out.println("1.ํšŒ์›๊ฐ€์ž… 2.๋กœ๊ทธ์ธ 3.์ข…๋ฃŒ");
    		System.out.print("๋ฉ”๋‰ด ์„ ํƒ : ");
    		//๋ฐ˜๋ณต
    		menu = scan.nextInt();
    		scan.nextLine();
    		if (menu == 1) {
    			System.out.println("ํšŒ์›๊ฐ€์ž…");
    			System.out.print("์ด๋ฆ„ ์ž…๋ ฅ : ");
    			name = scan.nextLine();
    			System.out.print("์•„์ด๋”” ์„ค์ • : ");
    			id = scan.nextLine();
    			System.out.print("๋น„๋ฐ€๋ฒˆํ˜ธ ์„ค์ • : ");
    			pw = scan.nextLine();
    		} else if (menu == 2) {
    			System.out.print("์•„์ด๋”” ์ž…๋ ฅ : ");
    			String loginID = scan.nextLine();
    
    			System.out.print("ํŒจ์Šค์›Œ๋“œ ์ž…๋ ฅ : ");
    			String loginpw = scan.nextLine();
    
    			if (loginID.equals(loginID) && loginpw.equals(pw)) {
    				System.out.println(name + "๋‹˜ ๋กœ๊ทธ์ธ ์„ฑ๊ณต");
    			} else {
    				System.out.println("๋กœ๊ทธ์ธ ์ •๋ณด๋ฅผ ํ™•์ธํ•ด์ฃผ์„ธ์š”.");
    			}
    		}
    		else if (menu == 3) {
    			System.out.println("์ข…๋ฃŒ");
    		}
    
    	}
    }
    1.ํšŒ์›๊ฐ€์ž… 2.๋กœ๊ทธ์ธ 3.์ข…๋ฃŒ
    ๋ฉ”๋‰ด ์„ ํƒ : 1
    ํšŒ์›๊ฐ€์ž…
    ์ด๋ฆ„ ์ž…๋ ฅ : ์ด์˜ˆ๋ฆผ
    ์•„์ด๋”” ์„ค์ • : asdf
    ๋น„๋ฐ€๋ฒˆํ˜ธ ์„ค์ • : 1234
    
    1.ํšŒ์›๊ฐ€์ž… 2.๋กœ๊ทธ์ธ 3.์ข…๋ฃŒ
    ๋ฉ”๋‰ด ์„ ํƒ : 2
    ์•„์ด๋”” ์ž…๋ ฅ : asdf
    ํŒจ์Šค์›Œ๋“œ ์ž…๋ ฅ : 1234
    ์ด์˜ˆ๋ฆผ๋‹˜ ๋กœ๊ทธ์ธ ์„ฑ๊ณต
    
    1.ํšŒ์›๊ฐ€์ž… 2.๋กœ๊ทธ์ธ 3.์ข…๋ฃŒ
    ๋ฉ”๋‰ด ์„ ํƒ : 3
    ์ข…๋ฃŒ
    
     
     
    ๋ฐ˜์‘ํ˜•

    ๋Œ“๊ธ€