소개
numberOfTrailingZeros() 메서드는 전달된 long 값의 최하위 1 비트 (가장 오른쪽) 다음에 오는 0 비트의 수를 반환합니다. 이 메서드는 java.lang 패키지의 Long 클래스에 속합니다.
numberOfTrailingZeros() 메서드는 전달된 long 값의 최하위 1 비트 (가장 오른쪽) 다음에 오는 0 비트의 수를 반환합니다. 이 메서드는 java.lang 패키지의 Long 클래스에 속합니다.
터미널에서 다음 명령을 입력하여 nano 편집기를 사용하여 새로운 Java 파일을 생성합니다.
touch ~/project/TrailingZeros.java
numberOfTrailingZeros() 메서드를 사용하여 long 값의 후행 0 의 개수를 얻기 위해 다음 코드를 추가합니다.
public class TrailingZeros {
public static void main(String[] args) {
// positive number
long num1 = 170L;
System.out.println("Original Number is " + num1);
System.out.println("Binary representation is = " + Long.toBinaryString(num1));
System.out.println("Number of trailing zeros is = " + Long.numberOfTrailingZeros(num1));
// negative number
long num2 = -57L;
System.out.println("Original Number is " + num2);
System.out.println("Binary representation is = " + Long.toBinaryString(num2));
System.out.println("Number of trailing zeros is " + Long.numberOfTrailingZeros(num2));
}
}
터미널에서 다음 명령을 사용하여 Java 코드를 컴파일합니다.
javac ~/project/TrailingZeros.java
컴파일이 완료된 후, 터미널에서 다음 명령을 입력하여 프로그램을 실행합니다.
java TrailingZeros
프로그램의 출력은 다음과 같습니다.
Original Number is 170
Binary representation is = 10101010
Number of trailing zeros is = 1
Original Number is -57
Binary representation is = 1111111111111111111111111111111111111111111111111111111111000111
Number of trailing zeros is 0
사용자로부터 입력을 받아 동일한 입력의 후행 0 의 개수를 반환할 수도 있습니다. 위 동작을 수행하기 위해 다음 코드를 추가합니다.
import java.util.Scanner;
public class TrailingZeros {
public static void main(String[] args) {
try {
System.out.println("Enter a number: ");
Scanner sc = new Scanner(System.in);
long num3 = sc.nextLong();
System.out.println("Binary representation is = " + Long.toBinaryString(num3));
System.out.println("Number of trailing zeros is " + Long.numberOfTrailingZeros(num3));
} catch (Exception e) {
System.out.println("Invalid input");
}
}
}
터미널에서 다음 명령을 사용하여 업데이트된 Java 코드를 컴파일합니다.
javac ~/project/TrailingZeros.java
컴파일이 완료된 후, 터미널에서 다음 명령을 입력하여 업데이트된 프로그램을 실행합니다.
java TrailingZeros
프로그램이 입력을 요청하면 원하는 long 값을 입력하고 'Enter' 키를 누릅니다. 프로그램은 숫자의 이진 표현과 후행 0 의 개수를 표시합니다.
이 랩에서는 numberOfTrailingZeros() 메서드를 사용하여 전달된 long 값의 후행 0 의 개수를 반환하는 방법을 배웠습니다. 또한 사용자로부터 입력을 받아 동일한 입력의 후행 0 의 개수를 반환하는 사용자 정의 입력 프로그램을 만들었습니다.