|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
| 개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 | |||||||||
java.lang.Objectjava.text.Collator
public abstract class Collator
Collator 클래스는, 로케일에 의존하는 String 의 비교를 실시합니다. 이 클래스를 사용해, 자연 언어 텍스트의 검색과 소트의 루틴을 구축합니다.
Collator 는, 추상 base class입니다. 서브 클래스에 의해, 특정의 조합 방법을 구현합니다. 현재는, 1 개의 서브 클래스 RuleBasedCollator 가 Java 플랫폼에서 제공되고 있어 광범위의 언어에 적용 가능합니다. 한층 더 특수한 필요성이 있는 경우에는, 다른 서브 클래스를 작성할 수 있습니다.
로케일에 의존하는 것 외의 클래스와 같이, static 팩토리 메소드 getInstance 를 사용해, 어느 로케일에 대한 적절한 Collator 객체를 얻을 수 있습니다. 특정의 조합 방법의 상세를 이해하거나 그방법을 수정하거나 하는 경우에는,Collator 의 서브 클래스를 보는 것만으로 충분합니다.
다음의 예는, 디폴트 로케일의 Collator 를 사용해 2 개의 캐릭터 라인을 비교하는 방법을 나타낸 것입니다.
// Compare two strings in the default locale
Collator myCollator = Collator.getInstance();
if( myCollator.compare("abc", "ABC") < 0 )
System.out.println("abc is less than ABC");
else
System.out.println("abc is greater than or equal to ABC");
Collator 의 「강함」속성을 설정하면, 비교로 중요로 간주해지는 상위 레벨을 결정할 수 있습니다. 4 개의 레벨 PRIMARY,SECONDARY,TERTIARY,IDENTICAL 가 있습니다. 어느 언어의 기능에 어느 레벨을 할당할까는, 정확하게는 로케일에 따라서 다릅니다. 예를 들어, 체코어에서는, "e" 와 "f" 는 주요한 (primary) 상위로 간주해집니다만, "e" 와 "ê" 는 2 차적 (secondary), "e" 와 "E" 는 3 차적 (tertiary)인 상위로 간주해져 "e" 와 "e" 는 동일 (identical)로 간주해집니다. 다음의 예는, 미국 영어로 대문자와 소문자의 차이와 엑센트를 무시하는 방법을 나타낸 것입니다.
//Get the Collator for US English and set its strength to PRIMARY
Collator usCollator = Collator.getInstance(Locale.US);
usCollator.setStrength(Collator.PRIMARY);
if( usCollator.compare("abc", "ABC") == 0 ) {
System.out.println("Strings are equivalent");
}
String 를 1 회만 비교하는 경우,compare 메소드를 사용하면(자) 최선의 퍼포먼스를 얻을 수 있습니다. 한편,String 리스트를 소트 하는 경우는 일반적으로, 각 String 를 몇번이나 비교하지 않으면 안됩니다. 그러한 경우는,CollationKey 를 사용하는 편이 좋은 퍼포먼스를 얻을 수 있습니다. CollationKey 는 String 를 비트열로 변환한 것이어, 다른 CollationKey 와 비트 단위로 비교할 수 있습니다. CollationKey 는, 특정의 String 에 대해서 Collator 객체에 의해 작성됩니다.
주: 다른 Collator 에 의해 작성된CollationKey 끼리는 비교할 수 없습니다. CollationKey 의 사용예에 대해서는,CollationKey 의 클래스의 설명을 참조해 주세요.
RuleBasedCollator ,
CollationKey ,
CollationElementIterator ,
Locale | 필드의 개요 | |
|---|---|
static int |
CANONICAL_DECOMPOSITION
분해 모드치입니다. |
static int |
FULL_DECOMPOSITION
분해 모드치입니다. |
static int |
IDENTICAL
Collator 의 강함을 나타내는 값입니다. |
static int |
NO_DECOMPOSITION
분해 모드치입니다. |
static int |
PRIMARY
Collator 의 강함을 나타내는 값입니다. |
static int |
SECONDARY
Collator 의 강함을 나타내는 값입니다. |
static int |
TERTIARY
Collator 의 강함을 나타내는 값입니다. |
| 생성자 의 개요 | |
|---|---|
protected |
Collator ()
디폴트의 생성자 입니다. |
| 메소드의 개요 | |
|---|---|
Object |
clone ()
Cloneable 를 오버라이드(override) 합니다. |
int |
compare (Object o1,
Object o2)
순서부를 위해서(때문에) 2 개의 인수를 비교합니다. |
abstract int |
compare (String source,
String target)
Collator 의 조합 룰에 따라, 소스 캐릭터 라인과 타겟 캐릭터 라인을 비교합니다. |
boolean |
equals (Object that)
2 개의 Collator 가 동일한지 어떤지를 비교합니다. |
boolean |
equals (String source,
String target)
Collator 의 조합 룰에 따라 2 개의 캐릭터 라인이 동일한지 어떤지를 비교하기 위한 편리한 메소드입니다. |
static Locale [] |
getAvailableLocales ()
이 클래스의 getInstance 메소드가 로컬라이즈 된 인스턴스를 돌려줄 수 있는 로케일 모든 배열을 돌려줍니다. |
abstract CollationKey |
getCollationKey (String source)
String 를, 다른 CollationKey 와 비트 단위로 비교 가능한 비트열로 변환합니다. |
int |
getDecomposition ()
Collator 의 분해 모드를 가져옵니다. |
static Collator |
getInstance ()
현재의 디폴트 로케일에 대한 Collator 를 가져옵니다. |
static Collator |
getInstance (Locale desiredLocale)
필요한 로케일의 Collator 를 가져옵니다. |
int |
getStrength ()
Collator 의 강함 속성을 돌려줍니다. |
abstract int |
hashCode ()
Collator 의 해시 코드를 생성합니다. |
void |
setDecomposition (int decompositionMode)
Collator 의 분해 모드를 설정합니다. |
void |
setStrength (int newStrength)
Collator 의 강함 속성을 돌려줍니다. |
| 클래스 java.lang. Object 로부터 상속된 메소드 |
|---|
finalize , getClass , notify , notifyAll , toString , wait , wait , wait |
| 필드의 상세 |
|---|
public static final int PRIMARY
setStrength(int) ,
getStrength() ,
정수 필드치 public static final int SECONDARY
setStrength(int) ,
getStrength() ,
정수 필드치 public static final int TERTIARY
setStrength(int) ,
getStrength() ,
정수 필드치 public static final int IDENTICAL
public static final int NO_DECOMPOSITION
getDecomposition() ,
setDecomposition(int) ,
정수 필드치 public static final int CANONICAL_DECOMPOSITION
CANONICAL_DECOMPOSITION 는,「Unicode Technical Report #15」로 설명되고 있는 Normalization Form D 에 상당합니다.
getDecomposition() ,
setDecomposition(int) ,
정수 필드치 public static final int FULL_DECOMPOSITION
FULL_DECOMPOSITION 는,「Unicode Technical Report #15」로 설명되고 있는 Normalization Form KD 에 상당합니다.
getDecomposition() ,
setDecomposition(int) ,
정수 필드치 | 생성자 의 상세 |
|---|
protected Collator()
getInstance() | 메소드의 상세 |
|---|
public static Collator getInstance()
Locale.getDefault() public static Collator getInstance(Locale desiredLocale)
desiredLocale - 필요한 로케일
Locale ,
ResourceBundle
public abstract int compare(String source,
String target)
1 회만의 비교이면, 이 메소드의 퍼포먼스가 가장 우수합니다. 지정된 캐릭터 라인으로 여러 차례의 비교가 필요하면, CollationKey.compareTo 의 퍼포먼스가 가장 우수합니다. CollationKey 의 사용예에 대해서는, Collator 클래스의 설명을 참조해 주세요.
source - 소스 캐릭터 라인target - 타겟 캐릭터 라인
CollationKey ,
getCollationKey(java.lang.String)
public int compare(Object o1,
Object o2)
이 구현은 단순하게 다음의 코드를 돌려줍니다. compare((String) o1, (String) o2)
Comparator <Object > 내의 compare o1 - 비교 대상의 최초의 객체o2 - 비교 대상의 2 번째의 객체
ClassCastException - 인수를 String 에 캐스트 할 수 없는 경우Comparator public abstract CollationKey getCollationKey(String source)
source - 조합 키로 변환하는 캐릭터 라인
CollationKey ,
compare(java.lang.String, java.lang.String)
public boolean equals(String source,
String target)
source - 비교 대상의 소스 캐릭터 라인target - 비교 대상의 타겟 캐릭터 라인
compare(java.lang.String, java.lang.String) public int getStrength()
setStrength(int) ,
PRIMARY ,
SECONDARY ,
TERTIARY ,
IDENTICAL public void setStrength(int newStrength)
newStrength - 강함 속성의 새로운 값
IllegalArgumentException - 새로운 강함을 나타내는 값이
PRIMARY, SECONDARY, TERTIARY, IDENTICAL 의 어떤 것도 아닌 경우getStrength() ,
PRIMARY ,
SECONDARY ,
TERTIARY ,
IDENTICAL public int getDecomposition()
분해 모드에는 다음의 3 개의 값이 있습니다.
setDecomposition(int) ,
NO_DECOMPOSITION ,
CANONICAL_DECOMPOSITION ,
FULL_DECOMPOSITION public void setDecomposition(int decompositionMode)
decompositionMode - 새로운 분해 모드
IllegalArgumentException - 지정된 값이 유효한 분해 모드가 아니다
경우getDecomposition() ,
NO_DECOMPOSITION ,
CANONICAL_DECOMPOSITION ,
FULL_DECOMPOSITION public static Locale [] getAvailableLocales()
getInstance 메소드가 로컬라이즈 된 인스턴스를 돌려줄 수 있는 로케일 모든 배열을 돌려줍니다. 반환되는 배열은, Java 런타임 및 인스톨 되고 있는 CollatorProvider 구현에 의해 지원되고 있는 로케일의 화집합을 나타냅니다. 이것에는,Locale.US 와 등가인 Locale 인스턴스가 적어도 1 개(살) 포함되어 있을 필요가 있습니다.
Collator 인스턴스를 사용 가능한 로케일의 배열public Object clone()
Object 내의 clone Cloneable public boolean equals(Object that)
Comparator <Object > 내의 equals Object 내의 equals that - 비교 대조의 Collator
Object.hashCode() ,
Hashtable public abstract int hashCode()
Object 내의 hashCode Object.equals(java.lang.Object) ,
Hashtable
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
| 개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.