將對象轉化為字符串的java實例。本站提示廣大學習愛好者:(將對象轉化為字符串的java實例)文章只能為提供參考,不一定能成為您想要的結果。以下是將對象轉化為字符串的java實例正文
System.out.println()辦法我們很熟習,用來掌握台輸入,好比System.out.println("abc"),會輸入字符串"abc"。然則當System.out.println()傳遞的參數為對象會是甚麼情形呢?上面來看一個簡略的例子:
package test;
class A{
int a;
int b;
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
public int getB() {
return b;
}
public void setB(int b) {
this.b = b;
}
}
public class Test {
public static void main(String args[]){
A a = new A();
a.setA(8);
a.setB(9);
System.out.println("a.a:"+a.a);
System.out.println("a.b:"+a.b);
System.out.println(a);
}
}
運轉成果為:
a.a:8
a.b:9
test.A@15093f1
可以看到,原來我是想輸入a和b的值,然則成果的第三行卻不是我們想要的成果。為何呢?
Object中有一個toString()的辦法,但不幸的是我們須要重寫這個辦法能力依照我們本身的志願輸入,將下面的法式稍作修正,即添加改寫toString函數的代碼:
package test;
class A{
int a;
int b;
public int getA() {
return a;
}
public void setA(int a) {
this.a = a;
}
public int getB() {
return b;
}
public void setB(int b) {
this.b = b;
}
public String toString(){
return "A.a:"+a+";A.b:"+b;
}
}
public class Test {
public static void main(String args[]){
A a = new A();
a.setA(8);
a.setB(9);
System.out.println("a.a:"+a.a);
System.out.println("a.b:"+a.b);
System.out.println(a);
}
}
運轉的成果為:
a.a:8
a.b:9
A.a:8;A.b:9