전체 글 31

삼항연산자

삼항 연산자: 세개의 피연산자가 필요로 하는 연산자 - ? 앞의 조건식에 다라 콜론(:) 앞뒤의 피연산자가 선택된다고 해서 조건 연산식이라고 부르기도 한다. 연삭식 조건식 (피연산자1) ? 값 또는 연산식 (피연산자2) : 값 또는 연산식 (피연산자3) : 조건식을 연산하여 true 가 나오면 삼항 연산자의 결과는 피연산자2가 된다. 반면 조건식을 연산하여 false가 나오면 삼항 연산자의 결과는 피연산자3이 된다.12int score = 50;char grade = (score > 90) ? 'A' : ((score > 80) ? 'B' : 'C'); // C : 삼항연산자 안에 삼항 연산자를 넣은 cs

JAVA/연산자 2017.01.27

이항 연산자3

비트 연산자(&, |, ^, ~, , >>>): 정수타입만 비트연산을 할 수 있다. 비트 논리 연산자(&, |, ^): &, ^, | 연산자는 피연산자가 boolean 타입일 경우에는 일반 논리 연산자이고, 피연산가 정수 타입일 경우에는 비트 논리 연사자로 사용된다. 비트 이동 연산자(, >>>): 비트이용 (shift) 연산자는 정수 데이터의 비트를 좌측 또는 우측으로 밀어서 이동시키는 연산을 수행한다. 구분 연산식 설명 이동(쉬프트) a b 정수 a의 각 비트를 b 만큼 오른쪽으로 이동 (빈자리는 정수 a 의 최상위 부호비트(MSB)와 같은 값으로 채워진다. a >>> b 정수 a의 각비트를 b만큼 오른쪽으로 이동 (빈자리는 0으로 채워진다.) 대입 연산자(+, +=, -=, *=, /=, %=, ^..

JAVA/연산자 2017.01.27

이항 연산자2

문자열 연결 연산자(+): 문자열을 서로 결합하는 연산자 - 문자열과 숫자가 혼합된 + 연산자는 왼쪽에서부터 오른쪽으로 연산이 진행된다.12String = "JDK" + 3 + 30; //JDK33.0String = 3 + 3.0 + "JDK"; //6.0JDKcs 비교연산자 (=, ==, !=): 대소(=) 또는 동등(==, !=) 을 비교해서 boolean 타입인 true/false를 산출한다 구분 연산식 설명 동등 비교 피연산자1 == 피연산자2 두 피연산자의 값이 같은지를 검사 피연산자1 != 피연산자2 두 피연산자의 값이 다른지를 검사 크기 비교 피연산자1 > 피연잔사2 피연산자1 이 큰지를 검사 피연산자1 >= 피연산자2 피연산자1 이 같거나 큰지를 검사 피연산자1

JAVA/연산자 2017.01.27

이항 연산자1

산술 연산자(+, -, *, /, %): boolean 타입을 제외한 모든 기본타입에 사용 가능하다. 연산식 설명 피연산자 + 피연산자 덧셈 연산 피연산자 - 피연산자 뺄셈 연산 피연산자 * 피연산자 곱셈 연산 피연산자 / 피연산자 좌측 피연산자를 우측 피연사로 나눗셈 연산 피연산자 % 피연산자 좌측 피연산자를 우측 피연산자로 나눈 나머지를 구하는 연산 : 피연산자들의 타입이 동일하지 않을 경우 피연산자들의 타입을 일치시킨 다음 연산을 수행한다.1. 피연산자들의 타입은 모두 정수타입이고 연산의 산출타입은 int 타입이다. (JVM:자바가상기계 가 기본적으로 32 비트 단위로 계산하기 때문) : byte + byte -> int + int = int 2. 피연산자들의 타입은 모두 정수타입이고 long 타입..

JAVA/연산자 2017.01.24

단항 연산자

부호 연산자 (+, -): boolean 타입과 char 타입을 제외한 나머지 타입에 사용할 수 있다.: 변수 값의 부호를 유지하거나 바꾸기 위해 사용 (양수는 음수로, 음수는 양수로) - 산출 타입은 int 타입 증감 연산자 (++, --): 변수의 값을 1 증가(++) 시키거나 감소(--) 시키는 연산자 - boolean 타입을 제외한 모든 기본타입의 피연산자에 사용할 수 있다. 연산식 설명 ++ 피연산자 다른 연산을 수행하기 전에 피연산자의 값을 1 증가시킴 -- 피연산자 다른 연산을 수행하기 전에 피연산자의 값을 1 감소시킴 피연산자 -- 다른 연산을 수행한 후에 피연산자의 값을 1 증가시킴 피연산자 ++ 다른 연산을 수행한 후에 피연산자의 값을 1 감소시킴 1234int i = 9;++i // ..

JAVA/연산자 2017.01.24

연산자와 연산식

연산: 데이터를 처리해 결과를 산출하는 것 - 연산자(operator) : 표시나 기호 ( +,-,*,== 등) 피연산자(operand) : 변수(x, y, result 등) 연산자 종류 연산자 피연산자 수 산출값 기능 설명 산술 +, -, *, /, % 이항 숫자 사칙연산 및 나머지지 계산 부호 +, - 단항 숫자 음수와 양수 부호 문자열 + 이항 문자열 두 문자열을 연결 대입 =, +=, -=, *=, /=, %=, &=, ^=, |=, =, >>>= 이항 다양 우변의 값을 좌변의 변수에 대입 증감 ++, -- 단항 숫자 1 만큼 증가/감소 비교 ==, !=, >, =, >, > 이항 숫자 비트를 좌측/우측으로 밀어서 이동 * 단항 : ++x;* 이항 : x + y;* 삼항 : (sum>90) ? "..

JAVA/연산자 2017.01.24

연산식에서의 자동 타입 변환

연산식 자동 타입변환: 연산은 기본적으로 같은 타입의 피연산자(operand) 간에만 수행되기 떄문에 서로 다른 타입의 피연산자가 있을 경우 두 피연산자 중 크기가 큰 타입으로 자동 변환된 후 연산을 수행한다. - 작은 타입으로 연산하고 싶을 경우 큰 타입의 피연산자를 작은 타입의 피연산자로 강제 타입변환을 한 다음 연산한다. : 자바는 정수일 경우 int 타입이 기본이 된다. - 피연산자를 4 byte 단위로 저장하기 때문인데 4 byte 보다 작은 타입들은 int 타입으로 변환되어 연산된다.123char ai = 'A';int result = ai + 1;char na = (char) result; // Bcs

타입 변환

타입변환이란?: 데이터 타입을 다른 데이터 타입으로 변환하는 것 - 자동(묵시적) 타입 변환 - 강제(명시적) 타입 변환 자동 타입변환: 컴파일러가 알라서 변환을 해준다. - 작은 크기를 가지는 타입이 큰 크기를 가지는 타입에 저장될 때 발생 메모리 크기 순서 : byte(1) < short(2) < int(4) < long(8) < float(4) < double(8) * char은 음수가 없어서(정수일 때만 가능) 자동 변환은 안되고 강제변환을 해주어야 한다. * float 는 표현할 수 있는 값의 범위가 int 보다 크다.: 자동 타입 변환이 발생되면 변환 이전의 값과 변환 이후의 값은 동일하다.: 정수 타입이 실수 타입으로 변환 되는 것은 무조건 자동타입변환이 된다. (but 정수값이 아닌 .0이..