bitset 예제

0과 1s로 작업 할 수있는 좋은 Java BitSet 예제를 찾고 있습니다. 나는 자바 독스를보고 시도했지만 그냥 읽는 것만으로 클래스의 사용을 이해하지 못한다. 예를 들어, 두 개의 서로 다른 BitSet 개체에서 및 xor 메서드는 어떻게 작동합니까? 세 가지로 표시된 코드 조각은 정수 번호를 사용하여 개체를 생성하는 것을 보여줍니다. 숫자 177의 이진 형식은 인스턴스 bitset2에서 8비트 집합으로 표시됩니다. 코드 스니펫은 4로 표시되어 이진 비트의 문자열 표현을 생성자에게 전달하여 비트 집합 개체를 만드는 것을 보여줍니다. BitSet에는 이러한 비트 문자열을 수락하기위한 편리한 방법이 없습니다. 아래에서 몇 가지 를 제공 했습니다., 그리고 지금 예제 는 당신이 예상 하는 대로 작동. 이것은 Java 7의 새로운 기능을 사용합니다. Java 6을 사용하려는 경우 이러한 메서드의 구현을 온라인으로 쉽게 찾을 수 있습니다. 올바르게 설정하려면 이 예제에서는 2비트를 1로 설정하여 bits2.set(1)을 호출합니다. 인덱스가 0에서 시작되기 때문입니다. 그래, 우리는 비트 세트를 생성하고 비트 집합에서 특정 비트를 설정하거나 재설정합니다.

비트 집합 개체에서 특정 비트의 상태를 확인하려면 어떻게 해야 합니까? 테스트 함수는 테스트해야 하는 비트의 인덱스 위치를 취합니다. 테스트 중인 비트가 턴온 위치(예: 1)에 있으면 함수가 부울 true를 반환하고 false를 반환합니다. 아래 코드 조각은 비트 집합을 반복하고 각 비트 상태를 테스트합니다. 테스트 결과에 따라 비트는 SET 또는 NOT SET이 콘솔 출력에 인쇄됩니다. 여러 선택적 데이터 원본 중 하나에서 새 비트 집합을 생성합니다: 비트 집합 클래스의 설정 및 재설정 멤버 함수는 비트 집합에서 특정 비트를 설정하거나 재설정하는 데 사용됩니다. 설정 함수는 비트 집합의 모든 비트를 켭니다. 특정 비트를 설정하려면 비트 위치를 함수 매개 변수로 전달할 수 있습니다. 간단히 말해서 집합 함수는 특정 비트를 1로 설정하는 데 사용됩니다. 마찬가지로 재설정 함수 호출은 비트 집합에서 지정된 비트를 끕니다. 아래 예제를 살펴보십시오: 명시적 비트 집합 (const CharT* str, typename std::basic_string::size_type n = std::basic_string::npos, CharT 0 = CharT(`0`)), 비트셋은 비트셋에 대한 작업을 압축된 방식으로 동일한 정보를 저장합니다. 배열 및 벡터보다 빠릅니다. 우리는 배열 인덱싱 연산자의 도움으로 개별적으로 비트 집합의 각 비트에 액세스 할 수 있습니다 [3] 그냥 간단한 배열처럼 비트 세트 bs의 인덱스 3에서 비트를 보여줍니다.

비트집합은 10110의 인덱싱을 뒤로 시작하고 0은 0 및 3번째 인덱스인 반면 1은 1및 2 및 4번째 인덱스에 있습니다. 아래 코드에 표시된 생성자생성을 통해 정수 번호와 이진 문자열을 사용하여 비트 집합을 생성할 수 있습니다. 비트 집합의 크기는 컴파일 타임에 고정되어 있으며 런타임에 변경할 수 없습니다. 비트 집합 클래스에 대해 정의된 주요 함수는 연산자 [], 개수, 크기, 집합, 재설정 및 더 많은 코드 아래에 설명되어 있습니다 – 이것은 std::bitset::operator[]에서 반환될 수 있는 l-값을 제공하는 임베디드 클래스입니다. 배열을 에뮬레이트할 때 인덱스도 0위치에서 시작됩니다. 비트 집합의 개별 비트는 스크립트 연산자로 액세스할 수 있습니다. 예를 들어 비트 셋 foo의 첫 번째 요소에 액세스하려면 foo[0]를 사용합니다. 비트 집합의 경우 재설정 및 뒤집기 함수가 정의됩니다. set function set (1) 인수가 제공되지 않으면 비트 집합의 모든 비트는 그 위치가 인수로 지정된 비트를 설정합니다. 같은 방법으로 재설정 및 뒤집기는 인수없이 호출되는 경우에도 전체 비트 집합에서 작업을 수행하고 일부 위치가 인수로 제공되는 경우 해당 위치에서만 작업을 수행합니다.

Kommentieren ist momentan nicht möglich.

Heimleiterin:
Frau Dumke

Seeallee 3
15299 Müllrose

Tel.: 033606 / 70284
Fax: 033606 / 70285

E-Mail:
kindernester@arcor.de

» 크로스사이트 스크립트 예제
» 파이썬 쉬운 예제
» 마운트 예제
» 리눅스 opencv 예제
» 메이븐 프로젝트 예제

© 2015 by Kindernester Schlaubetal e.V. | Hosted by RB Media Group GmbH | Kontakt | Impressum