Java Object类 instanceof关键字 练习:判断是否为同一人 集合按照人的年龄排序,如果年龄相同按名字的字母顺序升序 Comparator比较器
package com.swift;
public class Same_Person_Test {
public static void main(String[] args) {
/*
* Object判断是否是同一人
*/
Person per1=new Person("zhangsan",30);
Person per2=new Person("lisi",27);
Person per3=new Person("lisi",27);
System.out.println(per3.equals(per2));
System.out.println(per1.equals(per2));
System.out.println(per2.equals(per2));
}
}
class Person{
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Person(String name, int age) {
super();
this.name = name;
this.age = age;
}
public boolean equals(Object obj) {
if(this==obj) {
return true;
}
if(obj instanceof Person) {
Person per=(Person) obj;
return this.getName().equals(per.getName())&&this.getAge()==per.getAge();
}
return false;
}
}
对人进行按年龄排序,升序,如果年龄相同按名字字母拼音升序
package com.swift; import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.ListIterator; public class Same_Person_Test { public static void main(String[] args) {
/*
* Object判断是否是同一人 集合按照人的年龄排序,如果年龄相同按名字的字母顺序升序
*/
Person[] per =new Person[5];
per[1]=new Person("zhangsan",30);
per[2]=new Person("lisi",27);
per[3]=new Person("wangwu",19);
per[4]=new Person("wangliu",19);
per[0]=new Person("tianqi",37);
List<Person> list=new ArrayList<Person>();
for(Person person:per) {
list.add(person);
} System.out.println(per[3].equals(per[2]));
System.out.println(per[1].equals(per[2]));
System.out.println(per[2].equals(per[2])); Collections.sort(list, new Comparator<Person>() { @Override
public int compare(Person arg0, Person arg1) {
int num=arg0.getAge()-arg1.getAge();
return num==0?arg0.getName().compareTo(arg1.getName()):num;
}
}); ListIterator it=list.listIterator();
while(it.hasNext()) {
Person p=(Person) it.next();
System.out.println(p.toString());
}
} } class Person{
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Person(String name, int age) {
super();
this.name = name;
this.age = age;
} public boolean equals(Object obj) {
if(this==obj) {
return true;
}
if(obj instanceof Person) {
Person per=(Person) obj;
return this.getName().equals(per.getName())&&this.getAge()==per.getAge();
}
return false;
}
@Override
public String toString() {
return "Person [name=" + name + ", age=" + age + "]";
} }

Java Object类 instanceof关键字 练习:判断是否为同一人 集合按照人的年龄排序,如果年龄相同按名字的字母顺序升序 Comparator比较器的更多相关文章
- instanceof关键字用于判断一个引用类型变量所指向的对象是否是一个类(或接口、抽象类、父类)的实例。
http://lavasoft.blog.51cto.com/62575/79864/ 深入Java关键字instanceof 2008-06-02 07:50:43 标签:Java 关键字 休 ...
- [zz]Java中的instanceof关键字
1.What is the 'instanceof' operator used for? stackoverflow的一个回答:http://stackoverflow.com/questions/ ...
- Java基础系列--instanceof关键字
原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/8492158.html instanceof关键字是在Java类中实现equals方法最常使 ...
- Java Object类 和 String类 常见问答 6k字+总结
写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解.所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项 ...
- Java中的instanceof关键字
instanceof是Java的一个二元操作符,和==,>,<是同一类东东.由于它是由字母组成的,所以也是Java的保留关键字.它的作用是测试它左边的对象是否是它右边的类的实例,返回boo ...
- Java Object类及其equals方法
基本概念: Object类位于java.lang包中,java.lang包包含着Java最基础和核心的类,在编译时会自动导入: Object类是所有Java类的祖先.每个类都使用 Object 作为超 ...
- java Object 类
Object o=new Object(); 其中有两个受保护的方法: 1.protected void finalize() 2.protected ...
- AJPFX关于Java Object类常用方法小总结
java.lang.Object java.lang包在使用的时候无需显示导入,编译时由编译器自动导入. Object类是类层次结构的根,Java中所有的类从根本上都继承自这个类. Object类 ...
- Java Object类中的equals方法
Object类中的equals方法用于检测一个对象是否等于另外一个对象.在Object类中,这个方法将判断两个对象是否具有相同的引用.如果两个对象具有相同的引用,它们一定是相等的.从这点上看,将其作为 ...
随机推荐
- cogs 421. HH的项链
421. HH的项链 http://218.28.19.228/cogs/problem/problem.php?pid=421 ★★★ 输入文件:diff.in 输出文件:diff.out ...
- 第六章 “我要点爆”微信小程序云开发实例之爆文详情页制作
爆文详情页制作 从首页中数据列表打开相应详情页面的方法: 给数据列表中每个数据项加一个点击事件,同时将当前数据项的id暂时记录在本地,然后跳转到详情页面detail goopen: function ...
- HTML5元素拖放设置总结
将元素图片放入div盒子内 1.首先设置元素为可拖放:在img标签内加入draggable=”true”. <img draggable="true"> 2.设置元素的 ...
- 笔记-JavaWeb学习之旅18
AJAX:ASynchronous JavaScript And XML 异步的JavaScript 和XML 异步和同步:客户端和服务器端相互通信的基础上 同步:客户端操作后必须等待服务器端的响应, ...
- 使用JMETER进行REST API测试
我确定你在这里是因为你需要加载测试Json Rest API.这并不奇怪,因为Rest API现在越来越受欢迎. 这本指南的目的:帮助您进行负载测试一个Json的 REST API 通过一个具体的例子 ...
- easyui的datagrid用js插入数据等编辑功能的实现
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- java中 json和bean list map之间的互相转换总结
JSON 与 对象 .集合 之间的转换 JSON字符串和java对象的互转[json-lib] 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级 ...
- Proto.Actor模型
Proto.Actor模型 http://proto.actor/ https://github.com/axzxs2001/ProtoActorSample https://www.cnblogs. ...
- ms sqlserver 清除数据库日志脚本
USE [master] GO ALTER DATABASE F360DW SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE F360DW SET ...
- DialogHelper
//require ScrollHelper.js function DialogHelper() { var _this = this; var doc = window.document; _th ...