当前位置: 首页 > 工具软件 > gettext > 使用案例 >

Android edittext.getText()的返回值类型

陶成济
2023-12-01

在开发的时候会遇到将edittext.getText()赋值给String类型出错了

这时加上.toString()就会好用

(1)那么edittext.getText()的返回值类型是什么呢?

它返回的是一个CharSequence 的接口 

 正好toString()就是CharSequence一个方法

(2)CharSequence和String的区别是什么?

CharSequence 是 char 值的一个可读序列。此接口对许多不同种类的 char 序列提供统一的只读访问
String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例来实现。
(3)java中,有的方法的参数类型是charsequence,这时候带入的参数实际上是字符串
CharSequence是String实现的一个接口,相当简单,就是要求是一串字符。所以每个参数类型是CharSequence的方法,都可以实际代入String对象。
为什么这些方法不干脆定义String作为参数类型?因为还有其他的CharSequence类型的类,比如StringBuffer和StringBuilder这两个很重要的类。String对象是不可变的,这两个可变,所以我们在构造字符串的过程中往往要用到StringBuffer和StringBuilder。如果那些方法定义String作为参数类型,那么就没法对它们用那些方法,先得转化成String才能用。但StringBuffer和StringBuilder转换为String再转换过来很化时间的,用它们而不是直接用String的“加法”来构造新String本来就是为了省时间,所以如果用String作为参数类型就杯具了。



 类似资料: