将对象转化为字符串的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

时间: 2024-10-31 19:15:29

将对象转化为字符串的java实例_java的相关文章

java将对象转化为字符串的实例

对象转换String类型的三种方法 一.采用Object.toString() toString方法是java.lang.Object对象的一个public方法.在java中任何对象都会继承Object对象,所以一般来说任何对象都可以调用toString这个方法.这是采用该种方法时,常派生类会覆盖Object里的toString()方法. 但是在使用该方法时要注意,必须保证Object不是null值,否则将抛出NullPointerException异常. 二.采用(String)Object

JS对象与json字符串格式转换实例_javascript技巧

本文实例讲述了JS对象与json字符串格式转换的实现方法,分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <head>     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />     <title></title>     <script type="text/javascript"&g

FireFox下XML对象转化成字符串的解决方法_javascript技巧

解决方法如下: 复制代码 代码如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>xml转化成字符串</title> <script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script> <script language=&qu

java对象转化-有时候我发现java初始化的一个对象不用new关键词的哦

问题描述 有时候我发现java初始化的一个对象不用new关键词的哦 是不是用get╳╳方法就可以得到一个对象,或者初始化一个对象呢,有时候我发现java初始化的一个对象不用new关键词的哦 解决方案 new的过程是在java虚拟机中分配内存地址,也就是分配地盘给你,如果你没有立足之地你怎么做其他事情.在spring框架中是已经帮你new好了,直接等你使用,这样可以提高效率.get/set方法只是获取值和赋值的方法而已. 解决方案二: get是封装过的 其实里边还是在new,只是你看不到.单利模式

java字符串替换排序实例_java

复制代码 代码如下: import java.util.LinkedList; public class OJ {  public OJ() {  super(); }  /*  * 功能:输入一行数字,如果我们把这行数字中的'5'都看成空格,那么就得到一行用空格分隔的非负整数(可能有些整数以'0'开头,这些头部的'0'应该被忽略掉  * ,除非这个整数就是由若干个'0'组成的,这时这个整数就是0). 对这些非负整数按从大到小的顺序排序.  *   * 输入: input,由0~9数字组成的字符

编码实现从无序链表中移除重复项(C和JAVA实例)_java

如果不能使用临时缓存,你怎么编码实现? 复制代码 代码如下: 方法一:不使用额外的存储空间,直接在原始链表上进行操作.首先用一个指针指向链表头节点开始,然后遍历其后面的节点,将与该指针所指节点数据相同的节点删除.然后将该指针后移一位,继续上述操作.直到该指针移到链表. void delete_duplicate1(node* head){    node*pPos=head->next;    node*p,*q;    while(pPos!=NULL){//用pPos指针来指示当前移动到什么

深入学习Java编程中的字符串的进阶使用_java

JAVA虽然是在C++基础上发展而来,但却对C++的许多缺陷有所改进,其中一个不得不提的就是字符串,我们知道,随着学习的深入,进入MFC时,当处理字符串或字符时,常会需要通过_T()宏将字符或字符串变成UNICODE型,否则,会在处理中出现BUG,而在JAVA中,字符char或存储在Character类中的字符,不是一个字节,而是2个字节,采用UNICODE,这是为了支持全世界上的所有字符.         字符的序列组成字符串,有两种类型的字符串:一种是创建以后不需要修改的,称为字符串常量,在

Java中JSON字符串与java对象的互换实例详解_java

在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级的数据格式比xml效率要高,XML需要很多的标签,这无疑占据了网络流量,JSON在这方面则做的很好,下面先看下JSON的格式, JSON可以有两种格式,一种是对象格式的,另一种是数组对象, {"name":"JSON","address":"北京市西城区","age":25}//JSON的对象格式的字符串 [

Gson对Java嵌套对象和JSON字符串之间的转换

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,具有良好的跨平台特性.近几年来已经和XML一样成为C/S架构中广泛采用的数据格式.有关JSON的更多知识,请参考以下内容:http://json.org/json-zh.html 在服务器和客户端之间使用JSON数据格式进行通信,经常会涉及到JAVA对象和JSON字符串之间的转换.通常,我们可以使用一些JSON解析工具,例如:Gson,FastJson等.当然,我们也可以手动解析,只是会比较繁琐. 下面