전체 글

· IT/Java
Math.random() 랜덤으로 수를 배출해주는 난수 클래스이며 이 클래스는 Math라는 클래스 안에 들어있고 최상위 클래스인 Object 클래스 안에 있어 따로 import 시켜주지 않아도 된다. 주로 임의의 정수를 뽑기 위해 활용되는 메소드이며, 0.0
· IT/Java
연산자는 우선순위 및 연산 방향이 정해져 있어 복잡한 연산식에서는 주의가 필요하다. 연산자 연산 방향 우선순위 증감(++, --), 부호(+, -), 비트(~), 논리(!) ⬅️ 높음 ⬇️ 낮음 산술(*, /, %) ➡️ 산술(+, -) ➡️ 쉬프트(, >>>) ➡️ 비교(, =, instanceof) ➡️ 비교(==, !=) ➡️ 논리(&) ➡️ 논리(^) ➡️ 논리(|) ➡️ 논리(&&) ➡️ 논리(||) ➡️ 조건(?:) ➡️ 대입(=, +=, -=, *=, /=, %=, &=, ^=, |=, =, >>>=) ⬅️ 표를 숙지했다 하더라도 여러가지 연산자들이 섞여 있다면 어느 연산자가 먼저 처리될지 알기 어려우니 먼저 처리해야 할 연산을 괄호()로 묶는 것을 추천한다. 괄호()는 최우선 순위를 가지기..
· IT/Java
삼항 연산자 조건식 ? 값 또는 연산식 : 값 또는 연산식 피연산자1 ? 피연산자2 : 피연산자3 총 3개의 피연산자를 가진다. ? 앞의 피연산자1은 boolean 변수 또는 조건식이 오므로 조건 연산자라고 한다. 이 값이 true이면 콜론 앞의 피연산자2가 선택되고, false이면 콜론 뒤의 피연산자3이 선택된다. 예제 코드 public static void main(String[] args) { int score = 85; char grade = (score > 90) ? 'A' : ((score > 80) ? 'B' : 'C'); System.out.println("grade = " + grade); // B }
· IT/Java
대입 연산자 우측 피연산자 값을 좌측 피연산자인 변수에 대입한다. 우측 피연산자 값에는 리터럴 및 변수, 그리고 다른 연산식이 올 수 있다. 단순히 값을 대입하는 단순 대입 연산자가 있고, 정해진 연산을 수행 후 결과를 대입하는 복합 대입 연산자가 있다. 구분 연산식 설명 단순 대입 연산자 변수 = 피연산자 우측의 피연사자의 값을 변수에 저장 복합 대입 연산자 변수 += 피연산자 우측의 피연산자의 값을 변수의 값과 더한 후에 다시 변수에 저장 (변수 = 변수 + 피연산자) 변수 -= 피연산자 우측의 피연산자의 값을 변수의 값에서 뺀 후에 다시 변수에 저장 (변수 = 변수 - 피연산자) 변수 *= 피연산자 우측의 피연산자의 값을 변수의 값과 곱한 후에 다시 변수에 저장 (변수 = 변수 * 피연산자) 변수 ..
· IT/Java
비트 논리 연산자 비트 논리 연산자는 bit 단위로 논리 연산을 수행한다. 0과 1이 피연산자가 되므로 2진수 0과 1로 저장되는 정수타입(byte, short, int, long)만 피연산자가 될 수 있고, 부동 소수점 방식으로 저장되는 실수 타입(float, double)은 피연산자가 될 수 없다. 구분 연산식 결과 설명 AND (논리곱) 1 & 1 1 두 비트 모두 1일 경우에만 결과 1 1 0 0 0 1 0 0 0 0 OR (논리합) 1 | 1 1 두 비트 중 하나만 1이면 결과 1 1 0 1 0 1 1 0 0 0 XOR (배타적 논리합) 1 ^ 1 0 두 비트 중 하나는 1이고 다른 하나가 0일 경우 결과 1 1 0 1 0 1 1 0 0 0 NOT(논리 부정) ~ 1 0 보수 0 1 byte n..
· IT/Java
논리 연산자 논리 연산자는 논리곱(&&), 논리합(||), 배타적 논리합(^) 그리고 논리 부정(!) 연산을 수행한다. 주로 흐름 제어문인 조건문(if), 반복문(for, while) 등에서 이용된다. 구분 연산식 결과 설명 AND (논리곱) true && 또는 & true true 피연산자 모두가 true일 경우에만 true true false false false true false false false false OR (논리합) true || 또는 | true true 피연산자 중 하나만 true이면 true true false true false true true false false false XOR (배타적 논리합) true ^ true false 피연산자가 하나는 true이고 다른 하나가 f..
· IT/Java
비교 연산자 비교 연산자는 동등(==, !=) 또는 크기(=)를 평가해서 boolean 타입인 true/false를 산출한다. 주로 흐름 제어문인 조건문(if), 반복문(for, while)에서 실행 흐름을 제어할 때 사용한다. 구분 연산식 설명 동등 비교 피연산자1 == 피연산자2 값이 같은지 피연산자1 != 피연산자2 값이 다른지 크기 비교 피연산자1 > 피연산자2 피연산자1이 피연산자2 보다 큰지 피연산자1 >= 피연산자2 피연산자1이 피연산자2 보다 크거나 같은지 피연산자1
· IT/Java
나눗셈(/) 또는 나머지(%) 연산에서 좌측 피연산자가 정수이고 우측 피연산자가 0일 경우 예외(ArithmeticException)가 발생하며, 그 이유는 무한대의 값을 정수로 표현할 수 없기 때문이다. 예제 코드 public class InfinityAndNanCheckExample { public static void main(String[] args) { int x = 5; int y = 0; int result = x / y; System.out.println(result); } } 출력 결과 그러나 좌측 피연산자가 실수이거나 우측 피연산자가 0.0 또는 0.0f이면 예외가 발생하지 않고 연산의 결과는 Infinity(무한대) 또는 NaN(Not a Number)이 된다. 예제 코드 public..
· IT/Java
오버플로우(overflow) 타입이 허용하는 최대값을 벗어나는 것을 말한다. 언더플로우(underflow) 타입이 허용하는 최소값을 벗어나는 것을 말한다. 정수 타입 연산에서 발생하면 에러가 발생할 것 같지만, 에러 발생은 하지 않고 해당 정수 타입의 최소값 또는 최대값으로 되돌아간다. 예제 package ch03.sec03; public class OverflowUnderflowExample { public static void main(String[] args) { byte var1 = 125; for (int i = 0; i < 5; i++) { var1++; System.out.println("var1 : " + var1); } System.out.println("------------------..
· IT/Java
산술연산자 산술 연산자는 더하기(+), 빼기(-), 곱하기(*), 나누기(/), 나머지(%)로 총 5개이다. %연산자는 나눗셈을 수행한 후에 몫이 아닌 나머지를 산출한다. 연산식 설명 피연산자 + 피연산자 덧셈 연산 피연산자 - 피연산자 뺄셈 연산 피연산자 * 피연산자 곱셈 연산 피연산자 / 피연산자 나눗셈 연산 피연산자 % 피연산자 나눗셈의 나머지를 산출하는 연산 피연산자가 정수 타입(byte, short, char, int)이면 연산의 결과는 int 타입이다. 피연산자가 정수 타입이고 그 중 하나가 long 타입이면 연산의 결과는 long 타입이다. 피연산자 중 하나가 실수 타입이면 연산의 결과는 실수 타입이다.
Huitopia
summary