2024-7-5 네이버 클라우드
연산자
1. 최우선 연산자
( ) ++ --
int a = 5;
a++ // ==> 6
++a // ==> 5
2. 산술 연산자
+ - * / %
나머지(%)는 항이 반드시 정수형이어야 한다.
3. 관계연산자
> 크다
< 작다
>= 이상
<= 이하
== 같다
!=, <> 같지 않다
4. 논리연산자
조건이 2개 이상일 때 가능하다.
|
< 논리 연산자 종류 >
&& - 모든 조건이 참일 때 참
|| - 조건 중에서 1개라도 참이면 참
[문제] 점수를 입력하여 합격인지 불합격인지 판별하는 프로그램 점수가 80~100 사이면 합격을 한다.
Operator02.java
package operator;
import java.util.Scanner;
public class Operator02 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("점수를 입력하시오 : ");
int score = scan.nextInt();
//scan이라는 변수값에 주소가 들어와 Scanner라는 클라스에서 불러옴
String result = score>=80 && score<=100 ? "합격":"불합격";
System.out.println(result);
}
}
[실행결과]
점수를 입력하시오 : 85
합격
5. 조건연산자(삼항 연산자)
[형식]
조건 ? 참 : 거짓
6. 증감 연산자
++
--
7. 대입 연산자
+=
-=
*=
/=
%=
[예시]
sum+=a
sum = sum+a
** a=a+1 / a+=1 / a++
모두 같은 결과가 나온다.
8. 부정(NOT) 연산자
형식 : !=
true -> false
false -> true
Operator05.java
package operator;
public class Operator05 {
public static void main(String[] args) {
boolean a = 25 > 36;
System.out.println("a = "+a);
System.out.println("!a = " + !a);
System.out.println();
String b = "apple";
String c = "apple";
// apple이라는 값은 하나이고 b,c가 하나의 apple 주소를 불러온다.
String d = new String("apple");
// 클래스 String을 새로 계속 만들어 d가 새로운 String안에 있는 apple을 가져온다.
/*주소 구분*/
System.out.println("b == c : " + (b == c ? "같다" : "다르다"));
// 현재 방안에 들어있는 주소가 같은지 다른지 확인 - 주소가 같다는 얘기
System.out.println("b == d : " + (b == d ? "같다" : "다르다"));
// 주소가 다르다
System.out.println();
/*내용 차제를 비교, 문자열 자체를 비교하고 싶을 때*/
System.out.println("b.equals(c) : "+ (b.equals(c)? "같다" : "다르다"));
System.out.println("b.equals(d) : "+ (b.equals(d)? "같다" : "다르다"));
System.out.println();
/*부정형*/
System.out.println("!b.equals(c) : "+ (!b.equals(c)? "같다" : "다르다"));
System.out.println("!b.equals(d) : "+ (!b.equals(d)? "같다" : "다르다"));
System.out.println();
}
}
< new String >
String a = "apple";
String b = "apple";
String c = new String("apple")
a, b는 하나의 "apple" 주소를 불러온다.
c는 "apple"에게 새로운 주소를 부여하여 a,b와는 다른, 새로 만들 String의 "apple"을 가져온다.
따라서 a,b는 주소가 같고 c는 주소가 다르다.
< 문자열, 주소 구분 >
b.equals(c)
문자열 구분
b == c
주소구분
비트(bit) 연산자
비트 연산자는 0 또는 1로 구분
1. ~ (bit NOT, 1의 보수)
0 -> 1
1 -> 0
2. bit의 논리연산자
&(AND) - 모두 1일때 1
| (OR) - 한개라도 1이면 1
XOR - 똑같은 값이 들어오면 0 아니면 1
3. bit의 이동 연산자 - Shift 연산자
<< 값이 커진다
>> 값이 작아진다
'Java' 카테고리의 다른 글
Java, System.in.read(); 사용자 입력 명령어 (0) | 2024.07.08 |
---|---|
Java, 조건문 If문 / Switch문 형 (0) | 2024.07.08 |
Java, String.format() 소수점 자릿수 변경 / new DecimalFormat().format() 천단위마다 콤마(,) (0) | 2024.07.05 |
Java의 특징, 상수, 문자, 문자열, ASCII코드(대문자 ↔ 소문자, 숫자 → 문자) (0) | 2024.07.05 |
Java 숫자, 문자, 문자열 출력(+ 정수에서 실수로 변경) (0) | 2024.07.04 |