浅解Java中toString函数,javatostring函数
分享于 点击 37702 次 点评:43
浅解Java中toString函数,javatostring函数
String toString():返回该对象的字符串表示。
当程序使用System.out.println()方法输出一个对象,或者把某个对象和字符串进行连接运算时,系统会自动调用该对象的toString()方法返回该对象的字符串表示。
该方法属于
Object
对象,由于所有的对象都"继承"了Object的对象实例,因此几乎所有的实例对象都可以使用该方法。
Object类的toString()方法返回“运行时类名@十六进制hashCode值”格式的字符串。因此很多类都重写了Object类的toString方法,用于返回可以表述该对象信息的字符串。
package notebook;
class Value {
private int i;
public void set(int i) {
this.i = i;
}
public int get() {
return i;
}
// public String toString(){
// return "hello"+i;
// //此函数必须要有 字符返回类型
// }
}
public class NoteBook {
public static void main(String[] args) {
Value[] a = new Value[10]; //创建对象数组a
for( int i=0; i<a.length; i++){
a[i] = new Value(); //创建每一个对象,因为数组的每一个元素只是对象的管理者而非对象本身,
a[i].set(i); //初始化创建的每一个对象
}
for( Value v : a ){ //用for-each循环来输出对象数组
//变量v和a共同管理数组
System.out.println(v); //*****<<<-----------------
}
System.out.println("--------------------");
for( Value v : a ){ //用for-each循环输出重置后的对象数组a
System.out.println(v.get()); //*****<<<-----------
}
}
}
如果没有重写toString()函数,那一部分运行结果见下:
重写toString函数,用于表述对象信息,运行结果见下:
package notebook;
class Value {
private int i;
public void set(int i) {
this.i = i;
}
public int get() {
return i;
}
public String toString(){
return "hello"+i; //此函数必须要有 字符返回类型
}
}
public class NoteBook {
public static void main(String[] args) {
Value[] a = new Value[10]; //创建对象数组a
for( int i=0; i<a.length; i++){
a[i] = new Value(); //创建每一个对象,因为数组的每一个元素只是对象的管理者而非对象本身,
a[i].set(i); //初始化创建的每一个对象
}
for( Value v : a ){ //用for-each循环来输出对象数组
//变量v和a共同管理数组
System.out.println(v); //*****<<<-----------------
}
System.out.println("--------------------");
for( Value v : a ){ //用for-each循环输出重置后的对象数组a
System.out.println(v.get()); //*****<<<-----------
}
}
}
System.out.println(v);
System.out.println(v.toString());
如上代码,两条代码的执行结果其实是一样的。
重写Object类中toString()方法,改变toString()方法的返回值return语句,然后直接打印对象名,便可以得到想要的结果。
相关文章
- 暂无相关文章
用户点评