java 4

산야(Sanya)·2024년 1월 3일

java 족보

목록 보기
4/28

1.결합 방향과 우선순위에 대하여 설명하시오.

-결합 방향(Associativity): 연산자가 여러 개 사용될 때, 같은 우선순위를 갖는 경우 연산의 진행 방향을 나타냅니다. 대부분의 연산자는 왼쪽에서 오른쪽으로 진행됩니다.
-우선순위(Priority): 연산자에는 각각 우선순위가 있으며, 높은 우선순위를 갖는 연산자가 먼저 수행됩니다.

2."1초과 100미만인가?" 를 코딩 하면?

result = (1 < num) && (num < 100);

3."2의 배수 또는 3의 배수?" 를 코딩 하면?

result = ((num % 2) == 0) || ((num % 3) == 0);

4.&& 와 || 설명하시오.

  • && (논리곱): 양쪽 피연산자가 모두 참일 때 참을 반환합니다.
  • || (논리합): 양쪽 피연산자 중 하나라도 참이면 참을 반환합니다.

5.아래의 프린트 결과를 예측하시오.

class SCE {
    public static void main(String[] args) {
        int num1 = 0;
        int num2 = 0;
        boolean result;
        
        result = ((num1 += 10) < 0) && ((num2 += 10) > 0);
        System.out.println("result = " + result);
        System.out.println("num1 = " + num1);
        System.out.println("num2 = " + num2 + '\n');

        result = ((num1 += 10) > 0) || ((num2 += 10) > 0);
        System.out.println("result = " + result);
        System.out.println("num1 = " + num1);
        System.out.println("num2 = " + num2);
    }
}

출력 결과 :

result = false
num1 = 10
num2 = 0

result = true
num1 = 20
num2 = 10

num1 = 10 , num2 = 10

6.아래가 에러가 나는 이유를 설명하고, 수정 하시오.

short num1;
short num = -num; // 에러: Cannot unary minus a value of type short

수정:

short num1;
short num = (short)-num;

7.전위 증가 연산자와 후위 증가 연산자의 차이는?

  • 전위 증가 연산자(++num): 변수의 값을 1 증가시킨 후, 증가된 값을 반환합니다.
  • 후위 증가 연산자(num++): 변수의 현재 값을 반환한 후, 값을 1 증가시킵니다.

8.아래의 비트 연산자 4가지를 설명하시오.

  • & (AND): 각 비트가 모두 1이면 1을 반환, 그 외에는 0을 반환합니다.
  • | (OR): 하나 이상의 비트가 1이면 1을 반환합니다.
  • ^ (XOR): 두 비트가 서로 다르면 1을 반환, 같으면 0을 반환합니다.
  • ~ (NOT): 각 비트를 반전시킵니다. 0은 1로, 1은 0으로 변환합니다.

9.아래의 쉬프트 연산자에 대하여 설명하시오.

  • >>(산술 오른쪽 시프트): 주어진 수를 오른쪽으로 지정된 비트 수만큼 이동시키며, 왼쪽에 새로운 비트는 부호 비트로 채워집니다.
  • << (산술 왼쪽 시프트): 주어진 수를 왼쪽으로 지정된 비트 수만큼 이동시키며, 오른쪽에 새로운 비트는 0으로 채워집니다.

10.아래의 출력값을 예측하시오.

class AddNum {

public static void main(String[] args) {

int result = 3 + 6;

System.out.println("3 + 6 = " + result);

 

result += 9;

System.out.println("3 + 6 + 9 = " + result);

 

result += 12;

System.out.println("3 + 6 + 9 + 12 = " + result);

}

}

출력 결과:

3 + 6 = 9
3 + 6 + 9 = 18
3 + 6 + 9 + 12 = 30
profile
개발일지

0개의 댓글