Math 클래스

Math 클래스는 기본적인 산술연산을 제공해주는 클래스로써 java.lang 패키지에 포함되어있다.

Math 클래스의 함수는 모두 static 으로 정의 되어있어서 인스턴스를 만들지 않아도 사용할 수 있다.

확인하고 싶으면

Ctrl 누르고 Math 부분 클릭

제가 알아볼 수 있는건....  PI가 상수로 정의되어있네요~ 역시 산술연산 클래스 클라쓰 🍷

스캐너

Scanner sc = new Scanner(system.in);

java.util 패키지에 있는 Scanner 클래스를 import 해야 정상적으로 사용할 수 있다.

알맞는자료형 변수 = sc . next 자료형 ();

예시) int num = sc.nextInt();

해석) int 자료형 변수 num에 사용자로부터 콘솔에서 입력 받은 정수를 저장한다.

예시) String str = sc.next();

해석) String 자료형 변수 str에 사용자로부터 콘솔에서 입력 받은것 중 공백을 만나기 전 까지의 문자열 전부를 저장한다.

예시) String str = sc.nextLine();

해석) String 자료형 변수 str에 사용자로부터 콘솔에서 입력 받은 엔터 치기 전 까지의 문자열 전부를 저장한다.

import java.util.Scanner;

/* 1. Scanner 객체 생성 */
/* 1-1. 원래 이렇게 Scanner 객체를 만들어야 함 */
//java.util.Scanner sc = new java.util.Scanner(java.lang.System.in);
		
		
		Scanner sc = new Scanner(System.in);
		
// 2. 자료형 별 값 받기
// 2.1 문자형 /* nextLine() : 입력받은 값을 문자열로 반환해줌 */

// 2.2 정수형
// nextInt() : 입력받은 값을 Int로 변환 한다.
/* nextLong() : 입력받은 값을 long 형으로 반환한다.*/

/* 2-3. 실수형 값 입력 받기 */
/* nextFloat() : 입력받은 값을 float 형으로 반환한다. */
/* nextDouble() : 입력받은 값을 double 형으로 반환한다. */

/* 2-4. 논리형 값 입력받기 */
/* nextBoolean() : 입력받은 값을 boolean형으로 반환한다.
* true or false 외에 다른 값을 입력하게 되면 InputMismatchException 발생함
* */

/* 2-5. 문자형 값 입력받기 */
/* 아쉽게도 문자를 직접 입력 받는 기능을 제공하지는 않는다.
* 따라서 문자열로 입력을 받고, 입력받은 문자에서 원하는 번째 문자를 분리해서 사용해야 한다.
* java.lang.String에 charAt(int index)를 사용한다.
* index를 정수형으로 입력하면 문자열에서 해당 인덱스에 있는 한 문자를 문자 형으로 반환해주는 기능을 한다.
* 
* index는 0부터 시작하는 숫자 체계
* 만약 존재하지 않는 인덱스를 입력하게 되면 IndexOutOfBoundsException이 발생한다.
* */

System.out.println("아무문자나 입력해주세요 : ");
char ch = sc.nextLine().charAt(0);    // charA(n)   n 번째 인덱스 가져오는 함수

System.out.println("입력하신 문자는" + ch + "입니다.");

next() , nextXXX() 사용시 주의점

만약 두 가지 데이터를 받기 위해서 next함수를 연이어서 사용해야 하는 경우.

예시)

int num1 = sc.nextInt();
Sring num2 = sc.nextLine();

두 번째 데이터를 입력받을 때 nextLine() 함수 사용 시,

첫 번째 데이터 입력하고 난 뒤 ‘엔터’ 값이 두 번째 데이터에 바로 입력되는 문제가 발생한다

이를 방지하기 위해서는 nextLine 함수를 한 줄 추가해주면 해결이 된다.

int num1 = sc.nextInt();
sc.nextLine();                   // 추가 
Sring num2 = sc.nextLine();

제어문 if , if-else , switch

// 제어문 형식

if (조건식) {
	// 조건식에 맞으면 발동되는 코드
}else {
	// 조건식에 맞지 않으면 발동되는 코드
}

if (조건식1){
		//조건식1 에 맞을 때 발동되는 코드
} else if(조건식2){
		//조건식2 에 맞을 때 발동되는 코드
}else if ... {
		//조건식3 에 맞을 때 발동되는 코드
}else{
	//아무 조건에도 해당되지 않을 때 발동되는 코드
}

switch(변수)
	case (변수값1):
		// 행위
		break;  // 행위를 그만두고 switch 문을 끝내려면 break;
	case (변수값2):
		// 행위
		// 만약 break; 를 사용하지 않았다면, case가 연속되어서 실행된다.
	default:
		//switch의 인자인 변수가 아무값도 해당 되지 않을 때 발동되는 코드

if(조건식){
	if(조건식){
			if(조건식){
				....
			}
		}
}

반복문 for

// for 문 표현식
for(초기식; 조건식; 증감값;){
	하고싶은 일;
}

// 아래에서 사용되는 int i 는 지역번수이므로 , 반복문 안에서만 사용 할 수 있다.
for(int i = 0; i < 10; i++){

}

// 기존에 있는 변수를 이용 할 수도 있다.
int index = 0;
for(index = 0; index < 10; index++){

}
// 반복문이 끝나면 index는 10 인채로 남아있다.

반복문 while

// while 문 표현식
while(조건식){  // 조건식이 만족되는 동안 반복
	하고싶은 일;
	한 번의 반복 마다 조건식의 증감에 영향을 주는 코드;  // 없으면 무한 반복 하게 된다.
}

while(life != 0){  // life가 0이 아닌 동안 반복  >> life가 점점 줄어들다가 0이되면 종료 됨
	야구 게임;
	life--;  // 한 번 반복할 때 마다 life 가 1씩 감소함.
}

슬슬 내용 정리를 할 여유가 없네요

+ Recent posts