My footsteps
콘솔 입력 / 연산자 본문
- read( ) 는 1byte만 읽을수 있다. 그리고 데이터가 있으면 byte로 반환을 하고 데이터가 없으면
-1을 반환하는데, -1이 정수라서 int형을 반환한다. (문자로 받을때는 키코드를 받는다 그래서 int형이 기본이다)
- "문자열"을 입력받을수 있는 응용객체 : nextLine()입력값을 한줄 전체를 받는 next()입력값을 "문자열"로 받는 nextInt()입력값을 정수로 받는 nextFloat()..
(space(바)를 만날때까지 쭉 읽어준다)
★ Scanner scan = new Scanner(System.in); 값을 입력받는 객체 ★
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
x <= 2 || 4 <= x
- 범위를 볼수 있도록 식을 쓸때는 x의 위치를 잘 정하는게 좋다..
공부는 기초를 깔고 깔고 하면서 하는게 아니라,
자기가 원하는 목표를 잡고 만든다음에
그거에 대한 궁금증을 해결하면서 공부해나가야한다!!
'국비수업 > 수업정리' 카테고리의 다른 글
반복문 복습 / for, while, switch문 (0) | 2023.02.21 |
---|---|
비트연산자 / 복합 대입 연산자 / 연산자 우선순위 / 제어구조 (0) | 2023.02.20 |
시맨틱 태그 / 형식 지정자 / 주석 keyword (0) | 2023.02.16 |
문자열 / 형식지정자 / 콘솔 입력 (0) | 2023.02.16 |
입출력 / 변수 선언 keyword (0) | 2023.02.15 |