Most visited

Recently visited

Added in API level 24

MessagePattern.Part

public static final class MessagePattern.Part
extends Object

java.lang.Object
   ↳ android.icu.text.MessagePattern.Part


消息模式“部分”,表示模式解析事件。 对于消息或参数的开始和结束有一部分,用于引用和转义ASCII撇号,以及“复杂”参数的语法元素。

Summary

Nested classes

枚举 MessagePattern.Part.Type

部件类型常量。

Public methods

boolean equals(Object other)

指示其他某个对象是否“等于”这一个。

MessagePattern.ArgType getArgType()

如果此部分类型为ARG_START或ARG_LIMIT,则返回参数类型,否则返回ArgType.NONE。

int getIndex()

返回与此零件关联的模式字符串索引。

int getLength()

返回与此Part关联的模式子串的长度。

int getLimit()

返回与此零件关联的模式字符串限制(独占结束)索引。

MessagePattern.Part.Type getType()

返回这部分的类型。

int getValue()

返回与此零件相关的值。

int hashCode()

返回对象的哈希码值。

String toString()

返回对象的字符串表示形式。

Inherited methods

From class java.lang.Object

Public methods

equals

Added in API level 24
boolean equals (Object other)

指示其他某个对象是否“等于”这一个。

equals方法在非空对象引用上实现等价关系:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

equals方法Object实现对象上最可能的等价关系; 也就是说,对于任何非空参考值xy ,此方法返回true当且仅当xy引用同一对象( x == y具有值true )。

请注意,无论何时覆盖此方法,通常都需要覆盖 hashCode方法,以维护 hashCode方法的一般合同,该方法声明相等对象必须具有相同的哈希代码。

Parameters
other Object: another object to compare with.
Returns
boolean true if this object is equivalent to the other one.

getArgType

Added in API level 24
MessagePattern.ArgType getArgType ()

如果此部分类型为ARG_START或ARG_LIMIT,则返回参数类型,否则返回ArgType.NONE。

Returns
MessagePattern.ArgType the argument type for this part.

getIndex

Added in API level 24
int getIndex ()

返回与此零件关联的模式字符串索引。

Returns
int this part's pattern string index.

getLength

Added in API level 24
int getLength ()

返回与此Part关联的模式子串的长度。 对于某些零件,这是0。

Returns
int this part's pattern substring length.

getLimit

Added in API level 24
int getLimit ()

返回与此零件关联的模式字符串限制(独占结束)索引。 getIndex()+ getLength()的便捷方法。

Returns
int this part's pattern string limit index, same as getIndex()+getLength().

getType

Added in API level 24
MessagePattern.Part.Type getType ()

返回这部分的类型。

Returns
MessagePattern.Part.Type the part type.

getValue

Added in API level 24
int getValue ()

返回与此零件相关的值。 有关详细信息,请参阅每个部件类型的文档。

Returns
int the part value.

hashCode

Added in API level 24
int hashCode ()

返回对象的哈希码值。 为了散列表的好处而支持此方法,例如由HashMap提供的HashMap

hashCode的总合同是:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals(java.lang.Object) method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.

尽可能合理实用,类Object定义的hashCode方法确实为不同的对象返回不同的整数。 (这通常通过将对象的内部地址转换为整数来实现,但Java TM编程语言不需要此实现技术。)

Returns
int a hash code value for this object.

toString

Added in API level 24
String toString ()

返回对象的字符串表示形式。 通常, toString方法将返回一个“文本表示”此对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。

ObjecttoString方法将返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @ ”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of this part.

Hooray!