CharSequence是一般类型,包括其它类型的像String,StringBuilder,SpannableString,和其他。如果要比较两个字符串,则可以使用.equals()。但是,如果将a String与a 进行比较CharSequence,则必须决定要比较的是什么,因为您可能会将a String与a StringBuilder或a SpannableString或其他东西进行比较。
仅比较内容
如果您只想将a的内容(即文本)String
与a的StringBuilder
进行比较CharSequence
,而不必关心类型,则可以使用String.contentEquals()
。
String myString = "hello"; CharSequence myCharSequence = new StringBuilder("hello"); boolean areEqual = myString.contentEquals(myCharSequence); // true
比较内容和类型
如果您还想确保除内容之外的类型相同,请使用String.equals()
。
String myString = "hello"; CharSequence myCharSequence = new StringBuilder("hello"); boolean areEqual = myString.equals(myCharSequence); // false
这里还是相同的类型。
String myString = "hello"; CharSequence myCharSequence = "hello"; // String boolean areEqual = myString.equals(myCharSequence); // true