1. Object的toString方法返回的格式是 类名+@+散列码的十六进制表示。toString约定我们必须覆盖这个方法。
例如在PhoneNumber的toString方法里可以 写成 区号-电话号码的形式,给客户一个约定的友好的展示。
String.format方法可以进行一些必要格式的显示,比较高效
如:
String.format("%1$,12d", 85022088)
具体实现可以参阅:http://www.iteye.com/topic/339734
2.考虑实现comparable接口
如果你要对一个ServiceEvent的事件进行排序,最好在这个实体里就实现comparable接口
形如:
@Override
public int compareTo(Object o) {
return this.eventTime.compareTo(((ServiceCtrlEvent)o).getEventTime());
}
这样就可以很简单的和很多集合类一起使用,排序可以直接使用集合的排序,
Collections.sort(serviceCtrlEvents);
有一点值得一提:
由于compareTo方法只是指定了返回值的符号,并没有制定返回值,在通常我们些的compareTo方法上会有一定的改进空间:
如实现电话号码的比较时
public int compareTo(PhoneNumber pn){
if(areacode<pn.areaCode){
return -1;
}
if
if(areacode>pn.areaCode){
return 1;
}
if(lineNumber<pn.lineNumber){
return -1;
}
if(lineNumber>pn.lineNumber){
return 1;
}
return 0;
}
可以改进为:
public int compareTo(PhoneNumber pn){
areaCodeDiff =areacode- pn.areaCode;
if(areaCodeDiff !=0){
areaCodeDiff;
}
……
return 0;
]
Java平台的所有值类Integer、BigDecimal 等都实现了这个comparable接口。
分享到:
相关推荐
2. **排序字符数组**:利用Java内置的排序方法,如`Arrays.sort()`,对字符数组进行排序。默认情况下,这个方法会按照Unicode值对字符进行排序,对于a-z的字母来说,这与字母顺序是一致的。 3. **构建新字符串**:...
面向对象是相对面向过程而言 面向对象和面向过程都是一种思想 面向过程 强调的是功能行为 面向对象 将功能封装进对象,强调具备了功能的对象。 面向对象是基于面向过程的。
《Effective Java》是Java编程领域的一本经典著作,由Joshua Bloch撰写,该书的第三版继续提供了关于如何编写高效、优雅、可维护的Java代码的指导。以下是基于给出的目录和部分内容提取的一些关键知识点: ### 第一...
《Effective Java》是Java开发领域的经典著作,作者Joshua Bloch深入浅出地阐述了编写高效、健壮的Java代码的技巧和最佳实践。以下是对该书部分内容的详细解释: 1. **产生和销毁对象** - Item1:静态工厂方法相比...
Java是一种强大的、面向对象的编程语言,以其跨平台、安全性和可移植性著称。Java程序主要分为两种类型:Application和Applet。Application是独立运行的程序,它们有自己的main()方法,可以单独启动,而Applet是嵌入...
在编程领域,特别是Java开发中,"Effective Java"是一本非常经典的书籍,由Joshua Bloch撰写,书中提出了一系列最佳实践和设计原则,以帮助开发者编写出更高效、更安全的代码。根据提供的标题和描述,我们将探讨三个...
Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM...
在Java中,可以使用`Arrays.toString()`方法将数组转换为字符串形式方便打印。 6. **结束条件**:当所有元素都在正确的位置上时,排序结束。在实际的冒泡排序代码中,通常会有一个标志位(如布尔值`swapped`)来...
Java 提供了多种方式进行排序,包括使用 `Collections.sort()` 方法配合自定义比较器(`Comparator`)。本文将详细介绍如何在 Java 中对包含中文姓氏的对象列表或字符串列表进行排序。 #### 二、基本概念 1. **...
Java集合框架中的`List`接口提供了一个`sort(Comparator<? super E> comparator)`方法,可以接受一个比较器(Comparator)来定义自定义的排序规则。默认情况下,Java使用自然排序,即按照字符串的Unicode值进行排序...
计算机后端-Java-Java核心基础-第14章 面向对象06 18. toString()的使用.avi
Java实验2-类-构造方法 本实验主要目的是实践Java类的定义和对象的创建,熟悉类与对象的概念与关系,并掌握Java类的定义、对象的创建、成员变量的访问、成员方法的调用和封装的概念及意义。 一、实验类型和目的 ...
在Java编程中,`toString()`方法是一个非常关键的成员函数,它用于返回对象的字符串表示形式,通常包含类名和对象的属性值。当我们需要打印或调试对象时,`toString()`方法尤其有用。本篇文章将深入探讨几种在Java中...
在beyond compare的菜单tools里选择import settings进行导入,这样在对比或者同步java的编译文件的时候就能看源码了,方便对比。 具体切换在双击打开class文件对比的时候选择编译方式为Java Class to source。一般会...
然而,对于`List`中存储的是自定义对象(例如`UserInfo`)的情况,如何实现一个通用且灵活的排序方法则成为了一个值得探讨的问题。 #### 二、问题分析与解决方案 本节将围绕上述问题,提出一个具体的解决方案。...
如果一个类希望支持克隆操作,则需要实现该接口,并覆盖`Object`类中的`clone()`方法。 #### 类 ##### `Boolean` 类 `Boolean` 类提供了将基本类型`boolean`包装成对象的功能。该类还提供了一些静态工厂方法和...
java内常用包,date类,toString的使用方法