程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> 將對象轉化為字符串的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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved