Java 81

조건 연산자, 대입 연산자

조건 연산자 ? : 조건식의 결과에 따라 연산결과를 달리한다. ex) result = (x > y) (조건식) ? x : y (식1 : 식2); // 괄호 생략 가능 삼항 연산자의 장점 대입 연산자 오른쪽 피연산자를 왼쪽 피연산자에 저장 후 저장된 값을 반환 " 모든 연산자는 결과값을 반환한다." system.out.println(x=3); // 변수 x에 3이 저장되고 -> system.out.println(3); // 연산결과인 3이 출력된다. lvalue (left value) - 대입 연산자의 왼쪽 피연산자 (변수 또는 배열 같은 저장공간) rvalue (right value) - 대입 연산자의 오른쪽 피연산자 복합 대입 연산자 대입 연산자와 다른 연산자를 하나로 축약

논리 연산자, 논리 부정 연산자

논리 연산자 && || 조건식을 연결할 때 사용하는 연산자 || (OR 결합) 피연산자 중 어느 한 쪽이 true이면 true를 결과로 얻는다. && (AND 결합) 피연산자 양쪽 모두 true이어야 true를 결과로 얻는다. x y x || y x && y true true true true true false true false false true true false false false false false 1) x는 10보다 크고 (and) 20보다 작다. 'x > 10'와 'x 10 && x 10'는 '10 < x'와 같으므로 다음과 같이 쓸 수도 있다. 보통은 변수를 왼쪽에 쓰지만 이런 ..

비교 연산자, 문자열의 비교

비교 연산자 > = 좌변 값이 크면, ture 아니면 false = 좌변 값이 크거나 같으면, true 아니면 false 'B' (char) -> 65 (int) > 66 (int) -> false 문자열의 비교 문자열 비교에는 == 대신 equals()를 사용해야 한다. ex) 1) String str1 = "abc"; String str2 = "abc"; system.out.println(str1 == str2); // true system.out.println(str.equals (str2) ); // true 2) String str1 = new String("abc"); String str2 = new String("abc"); system.out.println(str1 == str2); // ..

반올림 Math.round(), 나머지 연산자

반올림 - Math.round() 실수를 소수점 첫 째자리에서 반올림한 정수를 반환 long result = Math.round(4.52); // result에 5가 저장된다. Math.roudn (pi * 1000) / 1000.0 -> Math.roudn (3.141592 * 1000) / 1000.0 -> Math.roudn (3141.592) / 1000.0 -> 3142 / 1000..0 -> 3.142 >> pi 값인 3.141592 의 값을 반올림한 정수 "3.142"로 반환한다. 나머지 연산자 % 오른쪽 피연산자로 나누고 남은 나머지를 반환 나누는 피연산자는 0이 아닌 정수만 혀용 (부호는 무시됨) system.out.println(10 % 8); // 10을 8로 나눈 나머지 2가 출력된..

사칙 연산자, 산술 변환

사칙 연산자 + - * / int / int -> int 10 / 4 -> 2 // 소수점 이하는 버려진다 > 소수점을 얻으려면 한쪽을 float로 만들어줌 int / float -> float / float -> float 10 / 4.0f -> 10.0f / 4.0f -> 2.5f 산술 변환 "연산 전에 피연산자의 타입을 일치시키는 것" 1) 두 피연산자의 타입을 같게 일치시킨다. (보다 큰 타입으로 일치 = 값손실을 일어나지 않게 하려고) long(8byte) + int(4byte) -> long + long -> long float(4byte) + int(4byte) -> float + float -> float (실수 > 정수) double (8byte) + float(4byte) -> doub..

형변환 연산자

항변환이란, 변수 또는 상수의 타입을 다른 타입으로 변환 하는 것 (타입) 피연산자 ex) double d = 85.4; int score = (int) d; -> d는 double 이라 저장이 불가하므로 int 로 변경해줌 -> int score = (int) 85.4; -> int score = 85; 형변환 연산자 변환 수식 결과 int -> char (char) 65 ' A ' char -> int (int) 'A' 65 float -> int (int) 1.6 f 1 (반올림 되지 않음) int -> float (float) 10 10.0 f *우리가 입력하는 것들은 문자표에 해당하는 코드로 바뀌어 저장됨 자동 형변환 float f = 1234; // int 타입의 값을 float 타입의 변수에..

증감 연산자, 부호 연산자

증감 연산자 증가 연산자(++) 피연산자의 값을 1 증가시킨다. 감소 연산자(--) 피연산자의 값을 1 감소시킨다. 타입 설명 사용예 전위형 ( 앞 ) 값이 참조되기 전에 증가시킨다. j = ++i; 후위형 ( 뒤 ) 값이 참조된 후에 증가시킨다. j = i++; "증감 연산자가 독립적으로 사용된 경우, 전위형과 후위형의 차이가 없다." 증감 연산자가 포함된 식을 이해하기 어려울 때는 다음과 같이 증감 연산자를 바로 떼어내면 이해하기 쉬워짐 전위형의 경우 증감 연산자를 식의 이전으로 J = ++i; // 전위형 -> ++i; // 증가 후에, j=i; //참조하여 대입 후위형의 경우 중간 연산자를 식의 이후로 떼어내면 된다.. J = i++; // 후위형 -> j=1; // 참조혀여 대입 후에 i++; ..

연산자의 우선순위와 결합규칙

연산자의 우선순위 "하나의 식(expression)에 연산자가 둘 이상 있을때, 어떤 연산을 먼저 수행할지를 자동 결정하는 것" 식 설명 -x + 3 단항 연산자(-)가 이항 연산자(+)보다 우선순위가 높다. 그래서 x의 부호를 바꾼 다음 덧셈이 수행된다. 여기서 '-'는 뺄셈 연산자가 아니라 부호 연산자이다. 1항(단항) 연산자 > 2항 연산자 x + 3 = y 곱셈과 나눗셈이 덧셈과 뺄샘보다 우선순위가 높다. 그래서 '3 * y' 가 먼저 계산된다. x + 3 > y - 2 비교 연산자(>) 보다 산술 연산자 '+'와 '-'가 먼저 수행된다. 그래서 'x + 3' 과 'y - 2'가 먼저 계산된 다음에 '>'가 수행된다. x > 3 && x < 5 논리 연산자 '&&'보다 비교 연산자가 먼저 수행된다..

타입간의 변환방법

1. 문자와 숫자간의 변환 (숫자) 3 을 (문자)'3' 으로 변환하기 위해서는 (문자)'0' 을 더해주면(+) 됨 (문자)' 3' 을 (숫자)3 으로 변환하기 위해서는 (문자)'0' 을 빼주면(-) 됨 System.out.println((char)(3 + '0')); // '0'은 숫자로 48 System.out.println('3' - '0'); 2. 문자열로의 변환 (숫자) 3 을 (문자열)"3" 으로 변환하기 위해서는 빈 문자열"" 을 더해주면(+) 됨 (문자열)"3" 을 (숫자)3 으로 변환하기 위해서는 빈 문자열"" 을 빼주면(-) 됨 3. 문자열을 숫자로 변환 (문자열)"3" 을 (숫자)3 으로 변환하기 위해서는 Integer.parseInt("3")을 사용 (문자열)"3.4" 을 (doub..