3 回答
TA贡献1830条经验 获得超9个赞
您不需要使用toString(). 您可以简单地调用教区类的相关函数或变量:
Parish item = parent.getItemAtPosition(position);
vigilTime.setText("Spinner selected : ");
vigilTime.append(item.getTime() + " "); //append has the same effect as what you're currently doing
vigilTime.append(item.getSomethingElse + " ");
//etc
如果您只想使用toString(),请在您的教区类中覆盖它:
@Override
public String toString() {
return /* format the String you want returned here */
}
编辑:回答你的实际问题:
ViewAdapter#getItemAtPosition()返回一个对象,而不是您的特定类。你需要把这个电话投给教区:
Parish item = (Parish) parent.getItemAtPosition(position);
然后就可以调用了item.getVigilTimes();。
TA贡献1909条经验 获得超7个赞
覆盖要更改字符串表示形式的类中的 toString 方法。
@Override
public String toString() {
//TODO - Here.
}
TA贡献1815条经验 获得超10个赞
toString() 方法继承自 Java 中所有其他类都继承自的对象类。基础的 toString() 返回这个: getClass().getName() + '@' + Integer.toHexString(hashCode())
字符串类,如果你正在创建一个新的字符串对象,比如 String
first_name = 'someFirstName'
实际上用构造函数创建了一个实例,
String first_name = new String("someFristName")
并且此类再次覆盖对象 toString() 方法。
Oracle 的文档说到 String 类中的 toString(),这个对象(它已经是一个字符串!)本身是返回的。
创建或构建的每个类都直接或间接继承自 Object 类,该类具有基本的 toString(),可以在当前类中覆盖该类。就这么简单...
@Override
public String toString(){
//to do logic here
}
您覆盖的 toString() 只不过是您的 getName() 方法。考虑是否有必要。
添加回答
举报