TIL | 05.30~06.03의 기록
텍스트로 작성한 명령어(ㅇㅇㅇ.java)는 자바 가상 머신(JVM)을 통해 컴파일하여 기계어=binary code(ㅇㅇㅇ.class)로 변환 후 실행된다.
javac 파일을 통해 컴파일되고 java 파일을 통해 실행된다.
소스코드는 src에 저장(개발용)하고 컴파일한 클래스는 bin(배포용)에 저장한다.
자바 api = 이미 만들어진 기능 (ex: System, String …)
클래스명은 항상 대문자로 시작한다. ⇒ 파일명은 클래스명으로 저장한다 (즉, 모든 클래스는 파일로 존재한다)
public, static, void 은 keyword(예약어)이다.
int score; //변수 선언
score = 80; //초기화
int score = 80; //변수 선언과 초기화 동시에 가능
연산 우선순위
증감>산술>비교>논리>조건>대입
( ) 가 있으면 ( ) 안을 제일 먼저 계산
산술연산자: +, -, *, /(나누기), %(나머지)
정수 = 정수 + 정수 (10 / 3 = 3)
실수 = 정수 + 실수 (10 / 3.0 = 3.333)
실수 = 실수 + 정수
실수 = 실수 + 실수
int num1 = 10;
int num2 = 3;
int result = num1 / num2; //3
double result2 = num1 / (double)num2; //3.333
int result3 = (int)(num1 / (double)num2); //3
증감연산자 : ++, --
//1증가
//a++;
//++a; //변수 왼쪽 또는 오른쪽에 위치
//a = a + 1; // a = 1 + a;
a += 1; //양쪽에 똑같이 존재하는 변수를 왼쪽에 한번만 적음 (대입연산자)
//증감연산자가 대입문 내의 수식으로 들어가 있을때
int b = 5;
int r1 = b++ + 100; //b=6, r1=105 (++를 마지막에)
System.out.println("b="+b+", r1="+r1);
int r2 = ++b + 100; //b=7, r2=107 (++를 먼저)
// 1~100 값이면 true, 아니면 false 1<=data<=100
int data = 150;
boolean r5 = data>=1 && data<=100; //false
int x = 5;
String r6 = (x%2==0)?"Even":"Odd";
// 짝수 : *100, 홀수 : -100을 구한다.
int r7 = (x%2==1)? x-100 : x*100;
Scanner scan = new Scanner(System.in);
System.out.print("이름=");
String name = scan.nextLine();
System.out.println(name);
System.out.print("국어=");
int kor = scan.nextInt();
System.out.println("kor="+ (kor/2));