[20160725]MyComparableTest
知识点:
1、Collections的使用。
2、自定义类泛型的使用。
3、自定义类,toString();equals();hashCode()方法的重写。
import java.util.*;
public class MyComparableTest{
public static void main(String[] args) {
List<Name> a=new LinkedList<Name>();
a.add(new Name("shang","zeng"));
a.add(new Name("qi","li"));
a.add(new Name("mei","niang"));
a.add(new Name("peingfei","chen"));
System.out.println(a);
Collections.sort(a);
System.out.println(a);
System.out.println(a.remove(new Name("peingfei","chen")));
System.out.println(a);
}
}
class Name implements Comparable<Name>{
String firstname,lastname;
public Name(String firstname,String lastname){
this.firstname=firstname;
this.lastname=lastname;
}
public String toString(){
return(firstname+" "+lastname);
}
/* //equals()method one
public boolean equals(Object obj){
if (obj==null){ return false; }
else
{ if(obj instanceof Name)
{
Name n = (Name)obj;
if (this.firstname.equals(n.firstname) && this.lastname.equals(n.lastname)){return true;}
}
return false;
}
}
*/
// equals()methoed two
public boolean equals(Object obj){
if(obj instanceof Name){
Name n=(Name)obj;
return (this.firstname.equals(n.firstname))
&& (this.lastname.equals(n.lastname));
}
return super.equals(obj);
}
public int hashCode(){ return firstname.hashCode(); }
public int compareTo(Name o){
int lastnamecompare=lastname.compareTo(o.lastname);
return
(lastnamecompare!=0?lastnamecompare:firstname.compareTo(o.firstname));
}
}
[20160725]MyComparableTest的更多相关文章
- iOS 学习笔记二【cocopods安装使用和安装过程中遇到的问题及解决办法】【20160725更新】
在osx 10.11之前cocopods问题不多,但是升级到11之后的版本,之前的cocopods大多用不了,需要重新安装,对于我这种使用测试版系统的技术狂来说,每次都需要重新安装很多东西, 当然,c ...
- [20160725]ArithmeticTest
public class ArithmeticTest{ public static void main(String[] args) { int [] a={1,3,5,7,9,11,13,15}; ...
- 深入理解MySql子查询IN的执行和优化
IN为什么慢? 在应用程序中使用子查询后,SQL语句的查询性能变得非常糟糕.例如: SELECT driver_id FROM driver where driver_id in (SELECT dr ...
- swift开发新项目总结
新项目用swift3.0开发,现在基本一个月,来总结一下遇到的问题及解决方案 1,在确定新项目用swift后,第一个考虑的问题是用纯swift呢?还是用swift跟OC混编 考虑到新项目 ...
- 【20160722-20160728】NOI2016滚粗记&&酱油记&&游记
先挖坑 #include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs.c ...
- [Python数据分析]新股破板买入,赚钱几率如何?
这是本人一直比较好奇的问题,网上没搜到,最近在看python数据分析,正好自己动手做一下试试.作者对于python是零基础,需要从头学起. 在写本文时,作者也没有完成这个小分析目标,边学边做吧. == ...
- js基础3
内置对象 内置对象就是JS提供的一套工具箱,我们通过内置可以很方便的进行一些操作. Math对象: Math.ceil() //向上取整,天花板 Math.floor() //向下取整,地板 Math ...
- 线程池深入(li)
java线程池.在jdk5之后为我们提供了线程池,只需要使用API,不用去考虑线程池里特殊的处理机制.jdk5线程池分好多种,固定尺寸的线程池.可变尺寸连接池等.常用的是ThreadPoolExecu ...
- 【iCore3 双核心板】【发布基于 iCore3的显示模块(包含7寸屏,4.3寸屏,vga模块等】
====================注意 ==================== 1.本代码仅仅对iCore3客户(使用者)开放: 2.iCore3使用者凭购买id或者订单号给 gingko[A ...
随机推荐
- jar war
区别:Jar.war.EAR.在文件结构上,三者并没有什么不同,它们都采用zip或jar档案文件压缩格式.但是它们的使用目的有所区别: Jar文件(扩展名为. Jar,JavaApplication ...
- Linux下显示ip所属位置
在linux下,要是网络出现延迟,通常我们需要分析自己到对端的服务器的网络环境 例:ping www.baidu.com traceroute www.baidu.com 通过分析来确定大概是什么问题 ...
- safari 调用隐藏fileInput
在safari上,用自定义按钮调用隐藏fileInput,注意点 1. event listener中,不要 return false2. 不要使用display:none,可使用 opacity:0 ...
- android自定义控件(6)-详解在onMeasure()方法中如何测量一个控件尺寸
今天的任务就是详细研究一下protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)方法.如果只是说要重写什么方法有什么 ...
- js调用ios的方法
摘要 在做h5应用的时,有时有些功能js并不能实现的特别完美.比如下载进度条或上传文件进度等.如果能调用ios或者android的方法,实现进度,以及文件上传或者下载列表更好一些.如果使用第三方的js ...
- 关于shell脚本时遇value too great for base (error token is "08")
今天在书写一个定时cp脚本时遇到了一个问题,value too great for base (error token is "08") 在网上查看到原来是以0开头的数字 系统会默 ...
- Eclipse闪退无法打开的解决方法
使用Eclipse过程中但是有时会出现打不开闪退的情况,这是为什么呢,遇到这种情况怎么解决.东坡小编通过查找资料,发现如下方法可以解决eclipse打不开闪退,具体操作如下: Eclipse打不开闪退 ...
- Jquery Md5加密解密
首先需要调用md5解析的js文件.(右击-目标另存为方式下载) http://files.cnblogs.com/files/colinliu/md5.js 加密方法参考: <script ty ...
- Android与Dalvik
自学android的同事说:Android 这个妈蛋!! 当初就应该选择c++/c 来开发.现在为了效率又搞ART.简直是折腾,art在android5.0 的时候就是默认了.前段时间还在学习andr ...
- 关于QString::toWCharArray 无法解析的外部符号
1>CommManger.obj : error LNK2019: 无法解析的外部符号 "public: int __thiscall QString::toWCharArray(un ...