My footsteps

콘솔 입력 / 연산자 본문

국비수업/수업정리

콘솔 입력 / 연산자

밀김 2023. 2. 17. 10:21
728x90

 

 

 

 

 

 

- read( ) 는 1byte만 읽을수 있다. 그리고 데이터가 있으면 byte로 반환을 하고 데이터가 없으면

-1을 반환하는데, -1이 정수라서 int형을 반환한다. (문자로 받을때는 키코드를 받는다 그래서 int형이 기본이다)

 

 

- "문자열"을 입력받을수 있는 응용객체 : nextLine()입력값을 한줄 전체를 받는 next()입력값을 "문자열"로 받는 nextInt()입력값을 정수로 받는 nextFloat()..

(space(바)를 만날때까지 쭉 읽어준다)

★ Scanner scan = new Scanner(System.in); 값을 입력받는 객체

 

 

 

 

 

 

https://youtu.be/9fzxOYOsHrg

 

package ex1;

import java.io.IOException;
import java.util.Scanner;

class FirstProgram{

	public static void main(String[] args) throws IOException{
		
         int kor1,kor2,kor3;
	     int total;
	     float avg;
	     
	     Scanner scan = new Scanner(System.in);
	     	
	     kor1 = 0;
	     kor2 = 0;
	     kor3 = 0; 

	     //---------------------------------------성적입력부분
	     
	     System.out.println("┌────────────────────────────┐");
	     System.out.println("\n│        성적입력            │\n");
	     System.out.println("└────────────────────────────┘\n");
	     System.out.print("국어1 :");
	     kor1 = scan.nextInt();
	     System.out.print("국어2 :");
	     kor2 = scan.nextInt();
	     System.out.print("국어3 :");
	     kor3 = scan.nextInt();
	     
	     
	    //---------------------------------------성적출력부분
	     
	     total = kor1+kor2+kor3;
	     avg = total/3.0f;

	     
	     System.out.println("┌────────────────────────────┐");
	     System.out.println("\n│        성적출력            │\n");
	     System.out.println("└────────────────────────────┘\n");
	     System.out.printf("국어1 : %d%n",kor1);
	     System.out.printf("국어2 : %d%n",kor2);
	     System.out.printf("국어3 : %d%n",kor3);
	     System.out.printf("총합 : %d%n",total);
	     System.out.printf("평균 : %6.2f\n",avg);

	}
	
}

 

 

 

 

 

 

 

 

- 클래스 이름이 같아도 패키지명을 다르게 해주면 얼마든지 같은 클래스의 이름을 사용할수 있다

 

- 패키지명은 도메인처럼 확장이 가능하다. ex)home.page.quiz.last...쭉~..

 

 

 

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

package ex1;
import java.util.Scanner; //스캐너를 위한 임포트문
public class prictice1 {
	public static void main(String[] args){
		
		int kor1;
		// 1.변수 설정
		Scanner scan = new Scanner(System.in);
        // 2.값을 입력받을 스캐너 생성
		System.out.print("kor1 : ");
        // 3.콘솔창이 비면 무슨 값을 입력해야되는지 모르니까 명시해주는 문자열 프린트문 출력
		kor1 = scan.nextInt();
        // 4.2에서 입력받은 정수형 값을 kor1변수에 저장
		System.out.print(kor1);
        // 5.kor1변수값 출력(내가 2에서 입력한대로 똑같이 나옴)
	}
}

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

 

 

 

 

 

- 정수/정수 = 정수 (소수점 절대 안나온다. 나오게 하려면 실수로 나눠야함  ex; / 3.0f  뒤에 형식 맞춰주기 위해..f)

나누면, 자동 반올림 되어 값이 나온다

 

 

package ex1;
import java.util.Scanner;
public class prictice1 {
	public static void main(String[] args){
		
		int a = 1;
		int b = 2;
		int c = 3;
        // 1.변수 초기화
		
		System.out.print("a b c : ");
        // 2.어떤 값을 콘솔창에 쓸건지 알려주기
		Scanner scan = new Scanner(System.in);
        // 3.값 입력받을 스캐너 생성
		a = scan.nextInt();
		b = scan.nextInt();
		c = scan.nextInt();
        // 4.입력받은 정수값들을 각 변수에 저장
		System.out.printf("%d %d %d",a,b,c);
        /* 5.그 값들이 잘 저장이 됐는지 출력구문. 이거 없으면 값 입력까지만 되고
         어떤값이 입력됐는지 모름..*/
	}
}

 

 

 

 

 


 

 

 

- 나머지 연산자를 사용하여 그룹핑 할수 있다 (나머지 값이 0인것들끼리 묶고, 1, 2 인것들끼리 묶고..)

 

 

 


 

 

 

<단항 연산자 예시>

class FirstProgram2{
	public static void main(String[] args) {
		int i = 3;
		i++; //후위 연산(뒤에서 계산)
		System.out.println(i); //4
		
		++i;//전위 연산(앞에서 계산)
		System.out.println(i); //5
		
		System.out.println(++i); //6 더해지고i가 출력되는거라 6이 출력.
		
		System.out.println(i++); //6
		// i값을 먼저 출력하고 나서 더해짐.위의 i값이 그대로 내려와서 일단 출력되고(6),
		// 맨 막줄로 가기 전에 더해져서 맨 막줄은 7이 출력됨
		
		System.out.println(i); //7
	}
}

 

 

- 전위 :  값을 먼저 증가시키고 출력 / 후위 : 값을 먼저 출력하고 나중에 증가

 

 

-논리연산자 /  &&(교집합연산자 and)   || (합집합연산자 or)

ex) x가 -2보다 크고,2보다 작거나 같다 > -2<x && x<=2

 

 

 

or 연산자

x <= 2 || 4 <= x

 

 

- 범위를 볼수 있도록 식을 쓸때는 x의 위치를 잘 정하는게 좋다..

 

 

 

 

 

 

 

 

 

선생님 왈...

공부는 기초를 깔고 깔고 하면서 하는게 아니라,

자기가 원하는 목표를 잡고 만든다음에

그거에 대한 궁금증을 해결하면서 공부해나가야한다!!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90