EtcOperator

ZiSoOm·2021년 5월 26일
0

기초자바

목록 보기
5/15

📌비트 연산자

0 또는 1 하나를 비트라고 함(비트 단위로 연산)

& : 비트단위 AND
| : 비트단위 OR (둘다 0 => 0, 그외 1)
^ : 비트단위 XOR (같으면 0, 다르면 1)
~ : 비트단위 NOT
<< : 왼쪽으로 1비트 이동
>> : 오른쪽으로 1비트 이동

📌기타 연산자

  • . (참조 연산자) : 특정 범위 내에 속해있는 멤버를 지칭할 때 사용함
    ex) System.out.println에서 '.'이 참조 연산자임
    System클래스 안에 있는 out변수에 접근
  • (type) : 형변환
  • ? (삼항 연산자) : 조건식 ? 조건식이 참일 경우 수행할 문장 : 조건식이 거짓일 경우 수행할 문장

📌비트 연산자 연습

System.out.println(10 | 15);
//10 : 00001010
//15 : 00001111
//     00001111 => 15

📌삼항 연산자

//조건식의 결과에 따라서 둘중 하나가 실행됨
int x = 10;
int y =20;
int result = x < y ? x : y; //true => x실행, false => y실행 (즉, int result = x;)
System.out.println(result); //x => 10

📌삼항 연산자 연습

주민등록번호 뒷자리의 첫번째 숫자가 1이면 남자 2면 여자

int regNo = 3;
String gender = regNo==1 ? "남자" : "여자";
System.out.println("당신의 성별은  " + gender + " 입니다."); //regNo가 1이 아닌 이외의 숫자 => false ==> 여자

//1이 아닌 이외의 숫자를 넣으면 확인 불가 되도록 함
gender = regNo == 1 ? "남자" : (regNo == 2 ? "여자" : "확인불가");
System.out.println("당신의 성별은  " + gender + " 입니다.");

2개의 숫자를 입력받고, 둘 중 더 큰 숫자를 출력해주세요.

Scanner s = new Scanner(System.in);
System.out.print("첫번째 숫자>");
int a = Integer.parseInt(s.nextLine());
System.out.print("두번째 숫자>");
int b = Integer.parseInt(s.nextLine());

System.out.println(a > b ? a : b);

숫자를 입력받고, 그 숫자가 1이나 3이면 남자를, 2나 4면 여자를 출력해주세요.

System.out.print("숫자입력>");
int num = Integer.parseInt(s.nextLine());
System.out.println(num == 1 || num == 3 ? "남자" : num == 2 || num == 4 ? "여자" : "확인불가");
//논리연산자는 양쪽에 boolean타입만 올수 있음 따라서, num == 1 || 3은 불가능함

0개의 댓글

관련 채용 정보