11:00 ~ 12:30 JAVA 연산자 학습
12:30 ~ 18:30 병원일정
18:30 ~ 20:30 JAVA 연산자 학습
20:30 ~ 21:30 블로그 작성 & 개인회고
21:30 ~ 22:30 SQL 문법 연습문제 풀기
5주차 JAVA 연산자, 조건문, 반복문, 배열
오늘 강의의 주제는 JAVA의 연산자, 조건문, 반복문, 배열을 배우고 실습해보는 시간을 갖는 것이다.
피연산자의 값을 1 증가시킵니다. (K = ++J;)
피연산자의 값을 1 감소시킵니다. (K = --J;)
전위형 : 값이 참조되기 전에 증가/감소 시킨다. (K = ++J;)
후위형 : 값이 참조된 후에 증가/감소 시킨다. (K = J++;)
증감연산자가 독립적으로 사용된 경우, 전위형과 후위형의 차이는 없다.
++K; 와 K++;의 값은 동일하다.
형변환 : 변수 또는 상수의 타입을 다른 타입으로 변환하는 것
방법 : (타입) 피 연산자
class Operator3_1 {
public static void main(String[] args) {
int i = 65, num = 10;
char ch = 'A';
float f = 1.6f;
System.out.println("(char)i = " + (char)i);
System.out.println("(int)ch = " + (int)ch);
System.out.println("(int)f = " + (int)f);
System.out.println("(float)num = " + (float)num);
}
}
자동 형변환 : 컴파일러에 의해 자동으로 형변환되는 것
다른 예로 'int = 3.14f;'처럼 큰 타입을 작은 타입에 저장할 때 Error가 발생한다. 3.14f가 int 타입으로 변환될 때 소수점이 사라지면서 원래 값이 달라지게 되면서 값 손실이 발생하는데 이런 경우, 컴파일러가 자동으로 형변환을 안해준다.
사칙연산자 : 덧셈(+), 뺄샘(-), 곱셈(*), 나눗셈(/)
산술변환 : 연산 전에 피연산자와 타입을 일치시키는 것
Math: 수학과 관련된 메서드를 가지고 있는 클래스
메서드 : 특정한 기능을 수행하기 위해 코드로 작성된 단위
나머지 연산자 %
class Operator5_3 {
public static void main(String[] args) {
int x = 10;
int y = 8;
System.out.print("x를 y로 나눈 몫 = ");
System.out.println(x / y);
System.out.print("x를 y로 나눈 나머지 = ");
System.out.println(x % y);
// 부호 무시 확인
int n = 3;
int z = -3;
System.out.println("x % n = " + x % n);
System.out.println("x % z = " + x % z);
}
}
두 피연산자를 비교해서 true(참)과 false(거짓)을 반환 함
class Operator6_1 {
public static void main(String[] args) {
int n1 = 10, n2 = 6;
char c1 = 'A', c2 = 'B';
System.out.print("n1 >= n2 = " ); // true
System.out.println(n1 >= n2);
System.out.print("n1 <= n2 = " ); // false
System.out.println(n1 <= n2);
System.out.print("n1 == n2 = " ); // false
System.out.println(n1 == n2);
System.out.print("n1 != n2 = " ); // true
System.out.println(n1 != n2);
// 산술변환 규칙에 의해서 char 타입이 int 타입으로 변환되어 연산됨
System.out.print("c1 < c2 = "); // true
System.out.println(c1 < c2); // 65 < 66
System.out.print("c1 > c2 = "); // false
System.out.println(c1 > c2); // 65 > 66
}
}
문자열 비교 : ==대신 equals()를 사용해야 한다.
class Operator6_2 {
public static void main(String[] args) {
String s1 = "사랑";
String s2 = "사랑";
System.out.print("s1 == s2 = "); // true
System.out.println(s1 == s2);
System.out.println("s1.equals(s2) = " + s1.equals(s2)); // true
// 하지만!
String s3 = new String("사랑");
System.out.print("s1 == s3 = "); // false
System.out.println(s1 == s3);
System.out.println("s1.equals(s3) = " + s1.equals(s3)); // true
}
}
JAVA가 처음일 때 이 수업을 들었다면 이해하기 많이 어려웠을 것이라는 생각이 들었다. 학교에서 컴퓨터공학과였기에 '자바프로그래밍'를 수강했을 때를 떠올려 최대한 다시 머리에 넣어보려 노력해보았다. '전혀 모르겠다!' 는 아니어서 다행이라는 생각을 마음에 품고.. '배웠는데 왜 잘하지 못할까?' 라는 생각이 부피차지를 많이 하기 시작해서 조금 서글프기도 했다.
그동안 너무 열정을 부어서 인지 잘 모르겠지만 대상포진이 다시 찾아왔다. OMG 그래서 오늘은 피로감이 상당하고 너무 아픈 탓에 수업을 제대로 듣지 못했던 아쉬움이 크게 남는다. 내일 당장 괜찮아지는 질병이 아니라 내일도 걱정되지만 그래도 두번째 대상포진이니까 내일은 정신도 마음도 몸도 모두 힘내서 오늘 부족한 만큼을 더 진행해볼 예정이다.
이래도 되나 싶지만, 아픈데도 하나라도 열심히 해서 한발짝 나아간 나! 라고 생각해보려 한다. 내일은 정말 오늘 못한 만큼 더 불태우기..!!❤️🔥