5일차 연산자

박현정·2022년 3월 24일
0

JAVA 독학

목록 보기
6/26

5일차에는 많이 쓰이는 연산자를 배운다.

연산자란? 연산자 기능이 있는 특수문자

연산자에는 또한 우선순위라는 게 있다.
일단 메모,

#우선순위

최우선 연산자
단항 연산자
산술 연산자
쉬프트 연산자
관계 연산자
논리 연산자
삼항 연산자
대입 연산자

#비트연산자

AND	&: 둘다 1일때 1
OR	|: 둘중하나라도 1일때 1
XOR	^: 두 비트 숫자가 다를때 1
NOT	~: ~a = -a-1

LEFT SHIFT	A<<a : A를 a만큼 좌로 비트 이동
RIGHT SHIFT	A>>a : A를 a만큼 우로 비트 이동
비트가 넘어가면 버려지고, 빈자리는 0으로 채워진다 

4비트 연산
<<좌시프트로 이동시킬 수록 값이 커질수도 있다
64bit에서 움직이면 커질수도 있음 65는 작아질수있다?

(실습예제)

System.out.println(10&11);
	System.out.println(10|11);
	System.out.println(10^11);
	System.out.println(~10);
//not ~ 은 왜 -11 낫을 만나면 양수가 음수로 바뀜
//2진법으로, -1은 1111 15양수 값이랑 똑같음 ~0 = -1
	//~a = -a-1 
	System.out.println(11<<1); 
}}

(결과창)

#조건 연산자(비교연산자)

조건 식에서 쓰는 연산자
a > 0 

조건식 : 결과가 참 또는 거짓 단 2개만 나오는 식 

== :	같다
!= :	같지 않다
>, < :	초과, 미만
>=, <= :	이상 이하

A&&B :	둘 다 참이여야 참 
A||B :	둘 중 하나라도 참이면 참
!A :	참이면 거짓, 거짓이면 참

(실습예제)

System.out.println(10==20);
System.out.println(10==10 && 20>30);
System.out.println(10 == 10|| 20>30);
System.out.println(!(10>30));
}}

(결과창)

#삼항 연산자

조건식 ? true : false
1	2	3

문자열로 받아서 실수로 바꾸면 정수로 한번 더 항변환

3.5 실수로 3.5 정수로 항변환 3 = 3.5-3 =0.5 
0이아니면 정수가 아닌걸로 판별 가능```
코드를 입력하세요
```

(실습예제)

  String q = "Q. 다음중 프로그래밍 언어가 아닌 것은?\n"
          +"1.java\n"
          +"2.Phyton\n"
          +"3.C언어\n"
          +"4. 망둥어";

	Scanner sc = new Scanner(System.in);
	int choice = 0;
	int answer = 4;
	String result = "";
	
	System.out.println(q);
	choice = sc.nextInt();
	
	result = choice == answer? "정답입니다.":choice >=1 && choice <= 4 ? "오답입니다": "잘못 입력 하셨습니다.";

	System.out.println(result);
    }}
    

(결과창)

profile
Gut Beginer

0개의 댓글