Commons Lang 类介绍(未完待续)

本文介绍如何利用Apache Commons Lang库自定义toString()方法格式化输出对象信息,并展示了ArrayUtils类提供的数组操作方法,包括数组反转、克隆、转换及查找等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.自动生成toString() 方法.

用于对象的自动生成toString()方法.

用到 import org.apache.commons.lang.builder.ReflectionToStringBuilder;

类中重写toString()方法如下:

public String toString(){

return ReflectionToStringBuilder.toString(this);

}

打印结果类似:com.gua.Lang1.PoliticalCandidate@ca0b6[lastName=瓜,firstName=瓜,dateOfBirth=Sun Apr 15 19:41:04 CST 1979,moneyRaised=284398493849.22998046875,homeState=com.gua.Lang1.State@69b332[abbreviation=VA,name=Virginia]]

通过反射机制,获取属性值打印出来
,不过格式比较不方便,输出到了一行上.

假如在类中重写toString()方法如下的话:

public String toString(){
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("姓",firstName).append("名",lastName).toString();
}

输出为:

com.gua.Lang1.PoliticalCandidate@14318bb[
姓=Liu
名=Steven
]
这样的重写,可以把格式顺便写如toString()方法

* 在使用ToStringBuilder时候,假如想只输出某些属性.可以用append("属性名",值) 来定制.

* ToStringStyle的静态样式 常用如下几种:

DEFAULT_STYLE 无格式

MULTI_LINE_STYLE 每个属性间+一个换行

NO_FIELD_NAMES_STYLE 不显示属性名

SIMPLE_STYLE 只输出值


2. ArrayUtils

反转数组: reverse(数组)

输出数组内容: ArrayUtils.toString(数组);

克隆数组: ArrayUtils.clone(数组);

对象数组<--->基本类型数组 相互转换 ArrayUtils.toObject () ArrayUtils.toPrimitive();

数组有否包含XX数据 ArrayUtils.contains(数组,数据(可以是对象))

数据在数组的坐标 ArrayUtils.indexOf(数组,数据(可以是对象))

数据在数组的最后坐标 ArrayUtils.lastIndexOf(数组,数据(可以是对象))

多维数组生成MAP ArrayUtils.toMap()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值