package collection;
import java.util.ArrayList;
class Person1{
private String name;
private int age;
public Person1(String name,int age){
this.age=age;
this.name=name;
}
public Person1(){}
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;
}
@Override
public int hashCode() {
// TODO Auto-generated method stub
return this.age;
}
@Override
public boolean equals(Object obj) {
if(!(obj instanceof Person1)){
return false;
}
Person1 p=(Person1)obj;
return this.name.equals(p.name)&&this.age==p.age;
}
@Override
public String toString() {
return "Person@name:"+this.name+"age:"+this.age;
}
}
public class Demo1 {
public static void main(String[] args) {
ArrayList arr=new ArrayList();
Person1 p1=new Person1("jack",20);
Person1 p2=new Person1("rose",18);
Person1 p3=new Person1("rose",18);
arr.add(p1);
arr.add(p2);
arr.add(p3);
System.out.println(arr);
ArrayList arr2=new ArrayList();
for(int i=0;i<arr.size();i++){
Object obj=arr.get(i);
Person p=(Person)obj;
if(!(arr2.contains(p))){
arr2.add(p);
}
}
System.out.println(arr2);
}
}
package collection;
import java.util.Iterator;
import java.util.LinkedList;
//逆序迭代
public class Demo2 {
public static void main(String[] args) {
LinkedList list=new LinkedList();
list.add("aa");
list.add("bb");
list.add("cc");
Iterator dit=list.descendingIterator();
while(dit.hasNext()){
System.out.println(dit.next());
}
}
}
package collection;
import java.util.Enumeration;
import java.util.Vector;
//vector:线程安全的ArrayList
public class Demo3 {
public static void main(String[] args) {
Vector v=new Vector();
v.addElement("aaa");
v.addElement("bbb");
v.addElement("ccc");
System.out.println(v);
System.out.println(v.elementAt(2));
Enumeration ens=v.elements();
while(ens.hasMoreElements()){
System.out.println(ens.nextElement());
}
}
}
package collection;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
//使用迭代器清空
public class Demo4 {
public static void main(String[] args) {
Collection coll=new ArrayList();
coll.add("aaa");
coll.add("bbb");
coll.add("ccc");
System.out.println(coll);
Iterator it=coll.iterator();
while(it.hasNext()){
it.next();
it.remove();
}
System.out.println(coll);
}
}
package collection;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;
public class Demo5 {
public static void main(String[] args) {
ArrayList list=new ArrayList();
list.add("net");
list.add("os");
list.add("computer");
System.out.println(list);
ListIterator lit=list.listIterator();
while(lit.hasNext()){
String next=(String)lit.next();
System.out.println(next);
}
System.out.println("*********");
while(lit.hasPrevious()){
String next=(String) lit.previous();
System.out.println(next);
}
}
}
package collection;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.ListIterator;
public class Demo6 {
public static void main(String[] args) {
ArrayList list=new ArrayList();
list.add("net");
list.add("os");
list.add("computer");
list.add("java");
System.out.println(list);
ListIterator lit=list.listIterator();
lit.next();
lit.next();
System.out.println(lit.next());
lit.add("C++");
System.out.println(list);
}
}
package collection;
import java.util.TreeSet;
//TreeSet继承Comparable实现compareto方法
class Person implements Comparable{
private String name;
private int age;
private String gender;
public Person(String name,int age,String gender){
this.name=name;
this.age=age;
this.gender=gender;
}
public String getName(String name){
return name;
}
public void setName(String name){
this.name=name;
}
public int getAge(){
return age;
}
public void setAge(int age){
this.age=age;
}
public String getGender(){
return gender;
}
public void setGender(String gender){
this.gender=gender;
}
@Override
public int hashCode() {
return name.hashCode()+age*37;
}
@Override
public boolean equals(Object obj) {
if(!(obj instanceof Person)){
return false;
}
Person p=(Person)obj;
return this.name.equals(p.name)&&this.age==p.age;
}
@Override
public String toString() {
return "Person [name:"+name+",age="+age+",gender="+gender+"]";
}
@Override
public int compareTo(Object o) {
Person p=(Person)o;
System.out.println(this+" compareTo:"+p);
if(this.age>p.age){
return 1;
}
if(this.age<p.age){
return -1;
}
return this.name.compareTo(p.name);
}
}
public class Demo7 {
public static void main(String[] args) {
TreeSet ts=new TreeSet();
ts.add(new Person("aa",20,"男"));
ts.add(new Person("bb",18,"女"));
ts.add(new Person("cc",17,"男"));
ts.add(new Person("dd",30,"男"));
ts.add(new Person("dd",15,"女"));
System.out.println(ts);
System.out.println(ts.size());
}
}
package collection;
import java.util.Comparator;
import java.util.TreeSet;
class Book{
private String name;
private double price;
public Book(){}
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}
public double getPrice(){
return price;
}
public void setPrice(double price){
this.price=price;
}
public Book(String name,double price){
this.name=name;
this.price=price;
}
@Override
public String toString() {
return "Book[name="+name+",price="+price+"]";
}
}
class MyComparator implements Comparator{
@Override
public int compare(Object o1, Object o2) {
Book b1=(Book)o1;
Book b2=(Book)o2;
System.out.println(b1+"comparator "+b2);
if(b1.getPrice()>b2.getPrice()){
return 1;
}
if(b1.getPrice()<b2.getPrice()){
return -1;
}
return b1.getName().compareTo(b2.getName());
}
}
public class Demo8 {
public static void main(String[] args) {
TreeSet ts=new TreeSet(new MyComparator());
ts.add(new Book("think in java",100));
ts.add(new Book("java核心",70));
ts.add(new Book("现代操作系统",50));
ts.add(new Book("java就业教程",35));
ts.add(new Book("abc in java",100));
System.out.println(ts);
}
}
package collection;
import java.util.TreeSet;
//切割字符串的空格
public class Demo9 {
public static void main(String[] args) {
String str="8 10 15 5 2 7";
String[] strs=str.split(" ");
TreeSet ts=new TreeSet();
for(int x=0;x<strs.length;x++){
int y=Integer.parseInt(strs[x]);
ts.add(y);
}
System.out.println(ts);
}
}
package collection;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
//获取map的键值
public class Demo10 {
public static void main(String[] args) {
Map<Integer,String> map=new HashMap<Integer,String>();
map.put(1, "aaa");
map.put(2, "bbb");
map.put(3, "ccc");
System.out.println(map);
Set<Integer> ks=map.keySet();
Iterator<Integer> it=ks.iterator();
while(it.hasNext()){
Integer key=it.next();
String value=map.get(key);
System.out.println("key="+key+" value="+value);
}
//获取map的value元素
Collection<String> vs=map.values();
Iterator<String> ite=vs.iterator();
while(ite.hasNext()){
String value=ite.next();
System.out.println("value="+value);
}
//使用entry类存储映射关系
Set<Map.Entry<Integer, String>> es=map.entrySet();
Iterator<Map.Entry<Integer, String>> ites=es.iterator();
while(ites.hasNext()){
Map.Entry<Integer, String> en=ites.next();
Integer key=en.getKey();
String value=en.getValue();
System.out.println("key="+key+" value="+value);
}
}
}
package collection;
//泛型
public class Demo11<T> {
public static void main(String[] args) {
Demo11 d11=new Demo11<Integer>();
int d=(int) d11.getData(5);
System.out.println(d);
}
public T getData(T data){
return data;
}
public void reverse(T[] arr){
int start=0;
int end=arr.length-1;
for(int i=start,j=end;i<j;i++,j--){
T temp=arr[i];
arr[i]=arr[j];
arr[j]=temp;
}
}
}
package collection;
public class Demo12 {
public static void main(String[] args) {
Father<String> f=new Father<String>("jack");
System.out.println(f.getT());
Father<Integer> f2=new Father<Integer>(20);
System.out.println(f2.getT());
}
}
class Father<T>{
private T t;
public Father(){}
public Father(T t){
super();
this.t=t;
}
public T getT(){
return t;
}
public void setT(T t){
this.t=t;
}
}
package collection;
public class Demo13 {
public static void main(String[] args) {
MyInter<String> my=new MyInter<String>();
my.print("泛型");
}
}
interface Inter<T>{
void print(T t);
}
class MyInter<T> implements Inter<T>{
public void print(T t){
System.out.println("myprint:"+t);
}
}
Collection(practice)
最新推荐文章于 2018-03-20 09:41:21 发布