TIL(Today I Learned)_230714

Aspyn ChoiΒ·2023λ…„ 7μ›” 14일
0

TIL

λͺ©λ‘ 보기
3/37

☝🏻였늘 배운 것

1. Scanner

- Scanner Class

  1. ν”„λ‘œκ·Έλž¨ μ‹€ν–‰ 쀑 λ‚΄κ°€ μ½˜μ†”μ°½μ— νƒ€μ΄ν•‘ν•˜λŠ” μž…λ ₯κ°’(μ •μˆ˜, μ‹€μˆ˜, λ¬Έμžμ—΄)을 받을 수 μžˆκ²Œν•˜λŠ” μ—­ν• .

  2. 이미 λ§Œλ“€μ–΄μ Έ μžˆλŠ” μŠ€μΊλ„ˆλΌλŠ” 클래슀λ₯Ό λ‚΄κ°€ λΉŒλ €μ™€ μ‚¬μš©ν•˜λŠ” 것

  3. μ‚¬μš©λ°©λ²• μˆœμ„œ
    : import until scanner μž‘μ„±
    -νŒ¨ν‚€μ§€ λ°”λ‘œ μ•„λž˜μ— 'import java.util.Scanner;' μž‘μ„±ν•˜κΈ°
    : Scanner μž‘μ„±
    -λ©”μΈλ©”μ„œλ“œ λ°”λ‘œ μ•„λž˜μ— 'Scanner sc = new Scanner(System.in);' μž‘μ„±ν•˜κΈ°
    : μž…λ ₯κ°’ 받을 수 μžˆλŠ” ꡬ문 μ’…λ₯˜
    -μ •μˆ˜ : sc.nextInt();
    -μ‹€μˆ˜ : sc.nextFloat(); λ˜λŠ” sc.nextDouble();
    -λ¬Έμžμ—΄ : sc.next(); λ˜λŠ” sc.nextLine();

  4. μ‚¬μš©ν•΄λ³΄κΈ°1

package edu.kh.variable.ex2;

// import : λ‹€λ₯Έ νŒ¨ν‚€μ§€μ— μ‘΄μž¬ν•˜λŠ” 클래슀λ₯Ό μ–»μ–΄μ˜€λŠ” ꡬ문
import java.util.Scanner; 
//java.util νŒ¨ν‚€μ§€μ—μ„œ Scanner 섀계도λ₯Ό κ°€μ Έμ˜¨ 것

public class ScannerExample {
	
	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);		
		// Scanner : ν”„λ‘œκ·Έλž¨ μ‹€ν–‰ 쀑 ν‚€λ³΄λ“œμž…λ ₯을 받을 수 μžˆκ²Œν•˜λŠ” μ—­ν• 
		// Scannerλ₯Ό μƒμ„±ν•¨μœΌλ‘œμ„œ, ν”„λ‘œκ·Έλž¨ μ•ˆμ— μŠ€μΊλ„ˆλΌλŠ” 기계λ₯Ό λ§Œλ“œλŠ” 것과 κ°™μŒ		
        
		System.out.print("μ •μˆ˜ 1 μž…λ ₯ : ");
		int input1 = sc.nextInt(); 
		// netxInt(); ν‚€λ³΄λ“œλ‘œ μž…λ ₯λ˜λŠ” μ •μˆ˜λ₯Ό μ½μ–΄μ˜€λŠ” 문ꡬ
		// μ½œμ†”μ°½μ— 직접 μž…λ ₯ν•˜λŠ” μ •μˆ˜λ₯Ό input1 λ³€μˆ˜μ— λŒ€μž…ν•˜μ—¬ μ €μž₯ν•΄λ‘ 
		
		System.out.print("μ •μˆ˜ 2 μž…λ ₯ : ");
		int input2 = sc.nextInt();
		// μ—¬κΈ°κΉŒμ§€ μ½”λ”©ν•΄μ„œ 싀행해보면 μ •μˆ˜ 1 μž…λ ₯ : 만 λ‚˜μ˜΄
		// μ •μˆ˜1 값을 μ½œμ†”μ°½μ— μž…λ ₯ν•΄μ€˜μ•Ό μ •μˆ˜ 2 μž…λ ₯ : 이 λ‚˜μ˜¬ 수 있음
	
		System.out.printf("%d + %d = %d\n", input1, input2, input1+input2);
		// (μ •μˆ˜1 + μ •μˆ˜2 = μ •μˆ˜1+μ •μˆ˜2)값이 좜λ ₯됨
	}
}
  1. μ‘μš©ν•΄λ³΄κΈ°
package edu.kh.variable.ex2;

import java.util.Scanner;

public class ScannerExample2 {
	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		
		// 사칙 μ—°μ‚° 계산기 λ§Œλ“€κΈ°
		// > 두 μ‹€μˆ˜λ₯Ό μž…λ ₯λ°›μ•„ 사칙연산 κ²°κ³Όλ₯Ό λͺ¨λ‘ 좜λ ₯
		// > 단, 좜λ ₯된 결과값은 μ†Œμˆ˜μ  μ΄ν•˜ 2μ§Έμžλ¦¬κΉŒμ§€λ§Œ 좜λ ₯
		
		// μ‹€μˆ˜ 1 μž…λ ₯ : 1.5
		// μ‹€μˆ˜ 2 μž…λ ₯ : 2.7
		// 1.50 + 2.70 = 4.20
		// 1.50 - 2.70 = -1.20
		// 1.50 * 2.70 = 4.05
		// 1.50 / 2.70 = 0.56
		
		System.out.print("μ‹€μˆ˜ 1 μž…λ ₯ : ");
		double input1 = sc.nextDouble();
		
		System.out.print("μ‹€μˆ˜ 2 μž…λ ₯ : ");
		double input2 = sc.nextDouble();
		
		System.out.printf("%.2f + %.2f = %.2f\n", input1, input2, input1+input2);
		System.out.printf("%.2f - %.2f = %.2f\n", input1, input2, input1-input2);
		System.out.printf("%.2f * %.2f = %.2f\n", input1, input2, input1*input2);
		System.out.printf("%.2f / %.2f = %.2f\n", input1, input2, input1/input2);
		
	}
}
  1. μ‚¬μš©ν•΄λ³΄κΈ°2 (λ¬Έμžμ—΄)
package edu.kh.variable.ex2;

import java.util.Scanner;

public class ScannerExample3 {
	
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		// λ¬Έμžμ—΄(String) μž…λ ₯
		// λ¬Έμžμ—΄μ„ 3번 μž…λ ₯λ°›μ•„ ν•œμ€„λ‘œ 좜λ ₯ν•˜κΈ°
		
		// ex)_
		// μž…λ ₯1 : μ•ˆλ…•?
		// μž…λ ₯2 : λ°˜κ°€μ›Œ!
		// μž…λ ₯3 : μ μ‹¬λ­λ¨Ήμ„λž˜?
		// 좜λ ₯ : μ•ˆλ…•? λ°˜κ°€μ›Œ! μ μ‹¬λ­λ¨Ήμ„λž˜?
	
		System.out.print("μž…λ ₯ 1 : ");
		String input1 = sc.next();
		
		System.out.print("μž…λ ₯2 : ");
		String input2 = sc.next();		
		
		System.out.print("μž…λ ₯3 : ");
		String input3 = sc.next();
		
		System.out.printf("%s %s %s\n", input1, input2, input3);
		
		// μˆ«μžμ¨λ„ κ°€λŠ₯, μž…λ ₯ν•œ μˆ«μžλŠ” λ¬Έμžμ—΄λ‘œ μΈμ‹ν•˜κΈ° λ•Œλ¬Έ
		
	}
}
  1. μ—°μŠ΅λ¬Έμ œ 1

    ν‚€λ³΄λ“œλ‘œ 문자 ν•˜λ‚˜λ₯Ό μž…λ ₯ λ°›μ•„ κ·Έ 문자의 μœ λ‹ˆμ½”λ“œλ₯Ό 좜λ ₯ν•˜μ„Έμš”.
    ex.
    문자 : A
    A unicode : 65

package edu.kh.variable.practice;

import java.util.Scanner;

public class CatingPractice2 {
	
	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		
		System.out.print("문자 : ");
		
		// String input1 = sc.next(); 
		// char result = input1.charAt(0);
		// μ΄λ ‡κ²Œ 써도 λ˜μ§€λ§Œ μ’€ 더 κ°„λ‹¨ν•˜κ²Œ μ“Έ 수 μžˆλ‹€.
		
		char result2 = sc.next().charAt(0);
		
		System.out.printf("%s unicode : %d", result2, (int)result2);
	}
}
  1. μ—°μŠ΅λ¬Έμ œ 2

    μ‹€μˆ˜ν˜•μœΌλ‘œ κ΅­μ–΄, μ˜μ–΄, μˆ˜ν•™ μ„Έ κ³Όλͺ©μ˜ 점수λ₯Ό μž…λ ₯ λ°›μ•„ 총점과 평균을 좜λ ₯ν•˜μ„Έμš”.
    이 λ•Œ 총점과 평균은 μ •μˆ˜ν˜•μœΌλ‘œ μ²˜λ¦¬ν•˜μ„Έμš”.
    ex.
    κ΅­μ–΄ : 90.0
    μ˜μ–΄ : 90.0
    μˆ˜ν•™ : 90.0
    총점 : 270
    평균 : 90

package edu.kh.variable.practice;

import java.util.Scanner;

public class CatingPractice3 {
	
	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		
		System.out.print("κ΅­μ–΄ : ");
		double input1 = sc.nextDouble();
		
		System.out.print("μ˜μ–΄ : ");
		double input2 = sc.nextDouble();
		
		System.out.print("μˆ˜ν•™ : ");
		double input3 = sc.nextDouble();

		System.out.printf("총점 : %d\n", (int) (input1+input2+input3));
		System.out.printf("총점 : %d\n", (int) (input1+input2+input3)/3);
	}
}

2. ν˜•μƒ 관리 μ‹œμŠ€ν…œ (Git)

- ν˜•μƒκ΄€λ¦¬λž€?

: μ†Œν”„νŠΈμ›¨μ–΄μ˜ λ³€κ²½ 사항을 μ²΄κ³„μ μœΌλ‘œ μΆ”μ ν•˜κ³  ν†΅μ œν•˜λŠ” 것

- ν˜•μƒκ΄€λ¦¬μ‹œμŠ€ν…œ

: 개발 쀑 λ°œμƒν•˜λŠ” λͺ¨λ“  μ‚°μΆœλ¬Όλ“€μ΄ λ³€κ²½λ¨μœΌλ‘œμ¨
λ³€κ²½λ˜λŠ” μ†Œν”„νŠΈμ›¨μ–΄ ν˜•μƒμ„ μ²΄κ³„μ μœΌλ‘œ κ΄€λ¦¬ν•˜κ³  μœ μ§€ν•˜λŠ” μ‹œμŠ€ν…œ
: 개발 μ‚°μΆœλ¬Όλ“€μ˜ 버전 관리와 λ³€κ²½ λ‚΄μ—­ μΆ”μ²™/쑰회 κ°€λŠ₯함

- Git

: λŒ€ν‘œμ μΈ ν˜•μƒ 관리 νˆ΄μ΄λ‹€.
: ν”„λ‘œμ νŠΈ(μ†ŒμŠ€ μ½”λ“œ)λ₯Ό μ €μž₯ν•˜κ³  이λ ₯을 κ΄€λ¦¬ν•˜λŠ” μ €μž₯μ†Œ(repository)
: μ›ν•˜λŠ” μ‹œμ μ— μ†ŒμŠ€ μ½”λ“œλ₯Ό μ €μž₯ν•˜κ±°λ‚˜ μ €μž₯ μ§€μ μœΌλ‘œ λŒμ•„κ°€λŠ” κΈ°λŠ₯을 μ œκ³΅ν•˜μ—¬ ν”„λ‘œμ νŠΈμ˜ 버전을 관리할 수 있음.
: μ—¬λŸ¬ PC에 μ†ŒμŠ€ μ½”λ“œλ₯Ό μ €μž₯μ‹œν‚€κ±°λ‚˜ μ—¬λŸ¬ PCμ—μ„œ μž‘μ„±ν•œ λ‚΄μš©μ„ ν•˜λ‚˜λ‘œ 병합(merge)ν•˜λŠ” 것이 κ°€λŠ₯함.

- Github

: μ½”λ“œ μ €μž₯μ†Œ Git을 μ›ΉμœΌλ‘œ μ΄μš©ν•  수 있게 λ§Œλ“  원격 μ €μž₯μ†Œ(remote repository)
: 인터넷이 제곡 λ˜λŠ” ν™˜κ²½μ—μ„œ μ†ŒμŠ€ μ½”λ“œμ˜ 곡유 및 버전 관리가 κ°€λŠ₯.
: μ—¬λŸ¬ κ°œλ°œμžκ°€ ν•˜λ‚˜μ˜ 원격 μ €μž₯μ†Œμ— μžˆλŠ” μ†ŒμŠ€ μ½”λ“œλ₯Ό λ°›κ±°λ‚˜ λ³€κ²½ν•œ μ½”λ“œλ₯Ό λ³‘ν•©ν•˜λŠ” 것이 κ°€λŠ₯. > ν˜‘μ—…μ΄ κ°€λŠ₯함

- μ €μž₯μ†Œ(Repsitory)μ’…λ₯˜μ™€ μš©μ–΄

- git에 ν”„λ‘œμ νŠΈ 파일 올렀보기

  1. κΉƒν—ˆλΈŒ κ³„μ •μ—μ„œ git repositories λ“€μ–΄κ°€κΈ°
  2. new 클릭
  3. Repository name λ„£κ³  Create
  4. 내컴퓨터 > workspace > 올릴파일(project)에 λ“€μ–΄κ°€μ„œ 깃배쉬 μ—΄κΈ°
  5. cli λ³΅μ‚¬ν•΄μ„œ 깃배쉬에 볡사(shit+insert)
  6. git status (ν˜„μž¬ μƒνƒœ 확인)
  7. git add . (.은 all의 뜻)
  8. git status (ν˜„μž¬ μƒνƒœ 확인)
  9. git commit -m"firt commit"(λ©”λͺ¨ λ‚΄μš© ""μ•ˆμ—λ„£κΈ°)
  10. git status (ν˜„μž¬ μƒνƒœ 확인)
  11. git push > μ΅œμ’…

- μ˜¬λ €μ§„ ν”„λ‘œμ νŠΈ 파일 μ§‘μ—μ„œ 받아보기

  1. μ €μž₯ν•  내컴퓨터 μ›Œν¬μŠ€νŽ˜μ΄μŠ€ 파일 μ—΄κΈ°
  2. νŒŒμΌμ—μ„œ 깃배쉬 μ—΄κΈ°
  3. λ‹€μš΄λ°›μ„ ν”„λ‘œμ νŠΈ λ“€μ–΄κ°€κΈ°
  4. 였λ₯Έμͺ½ 상단 > code > https μ£Όμ†Œ 볡사
  5. 깃배쉬에 (git clone λ³΅μ‚¬λœ μ£Όμ†Œ) λ„£κΈ°
  6. 파일이 μˆ˜μ •λ˜μ—ˆλ‹€λ©΄ 파일 올리기 7λ²ˆλΆ€ν„° λ‹€μ‹œ 진행해주기
  7. μˆ˜μ •λœ λ‚΄μš©μ„ ν•™μ›μ—μ„œ λ‹€μ‹œ λ°›μ„λ•ŒλŠ” 'git pull' λͺ…λ Ήμ–΄λ₯Ό μ‚¬μš©ν•œλ‹€.

βœŒπŸ»λŠλ‚€μ 

  • μŠ€μΊλ„ˆ : μ‚¬μš©μ— 많이 μ΅μˆ™ν•΄μ§€λ €λ©΄ 예제λ₯Ό μ’€ 더 풀어봐야할것같닀.
  • 깃배쉬 : μ‚¬μš©ν•˜κΈ° λ²ˆκ±°λ‘­μ§€λ§Œ.. μ΅μˆ™ν•΄μ§€λ©΄ μœ μš©ν•  것 κ°™λ‹€.

πŸ‘ŒπŸ»μ•žμœΌλ‘œλŠ”?

  • μŠ€μΊλ„ˆ : 주말에 μ—°μŠ΅λ¬Έμ œ 1, 2번과 κ΅¬κΈ€λ§ν•΄μ„œ 예제λ₯Ό 더 μ°Ύμ•„ μ—°μŠ΅ν•΄λ³Ό 것!
    -> μžμŠ΅μ‹œκ°„μ΄ 생겨 예제 더 μ°Ύμ•„ ν’€μ–΄λ³΄λ‹ˆ μ¨μ§€λŠ” 것 κ°™λ‹€! @.@
  • 깃배쉬 : μ§‘μ—μ„œ μ—°μŠ΅ν• λ•Œ κΌ­ μ‚¬μš©ν•΄μ„œ μ΅μˆ™ν•΄μ Έλ³΄κΈ°!

0개의 λŒ“κΈ€