java--集合案例

来源:互联网 发布:崩坏学园漫画淘宝 编辑:程序博客网 时间:2024/06/04 18:23

案例一 :

简单回顾:

@Test
public void test3(){
List<Integer> list=new ArrayList<Integer>();
list.add(15);
list.add(343);
list.add(43);
list.add(13);
list.add(5);
list.add(75);
Collections.sort(list);
//System.out.println("排序后:"+list);

System.out.println("最大值:"+Collections.max(list));
System.out.println("最小值:"+Collections.min(list));
Collections.replaceAll(list, 7
5, 88);

for(int i:list){
System.out.println(i);
}
}


Fruit:

package Test;


public class Ft implements Comparable<Ft>{
private String name;
private int price;

public Ft(String name, int price) {
this.name = name;
this.price = price;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
@Override
public int compareTo(Ft o) {
if(this.price>o.getPrice()){
return 1;
}else{
return -1;
}
}



}

test:

@Test
public void test2(){
Map<String,Integer> map=new HashMap<String, Integer>();
Scanner sc=new Scanner(System.in);
for(int i=0;i<5;i++){
System.out.println("请输入水果名称:");
String name=sc.next();
System.out.println("请输入价格:");
int price=sc.nextInt();
map.put(name, price);
}
print(map);
List<Ft> list=new ArrayList<Ft>();
Set<String> smk=map.keySet();
Iterator<String> iter=smk.iterator();
while(iter.hasNext()){
String key=iter.next();
int value=map.get(key);
if(value>=5){
Ft f1=new Ft(key, value);
list.add(f1);
}
}
System.out.println("###########");

/*for(int i=0;i<list.size();i++){
for(int j=0;j<list.size()-1-i;j++){
if(list.get(j).getPrice()>list.get(j+1).getPrice()){
Ft tmp=list.get(j);
list.set(j, list.get(j+1));
list.set(j+1, tmp);
}
}
}*/

Collections.sort(list);//排序方法


for(Ft f:list){
System.out.println("水果:"+f.getName()+",价格:"+f.getPrice());
}

}

private void print(Map<String,Integer> map){
Set<Entry<String, Integer>> entryset=map.entrySet();
for(Entry<String, Integer> en:entryset){
System.out.println("水果:"+en.getKey()+",价格:"+en.getValue());
}
}


案例二:

User:

package Test;


public class User implements Comparable<User> {
private String name;
private int age;
private String sex;

public User(String name, int age, String sex) {
this.name = name;
this.age = age;
this.sex = sex;
}


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 String getSex() {
return sex;
}


public void setSex(String sex) {
this.sex = sex;
}


@Override
public String toString() {
return "姓名:"+this.name+",年龄:"+this.age+",性别:"+this.sex;
}


@Override
public int compareTo(User o) {
if(this.age>o.getAge()){
return 1;
}else{
return -1;
}
}


}

test:

package Test;


import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;


import org.junit.Test;


public class TestUser {
@Test
public void test1(){
List<User> list=new ArrayList<User>();
Scanner sc=new Scanner(System.in);
for(int i=0;i<3;i++){
System.out.println("请输入姓名:");
String name=sc.next();
System.out.println("请输入年龄:");
int age=sc.nextInt();
System.out.println("请输入性别:");
String sex=sc.next();
User user=new User(name, age, sex);
list.add(user);

}
for(User user:list){
System.out.println(user);
}
System.out.println("*******************");
System.out.println("排序后:");
Collections.sort(list);
for(User user:list){
System.out.println(user);
}

}
}


案例三:

@Test
public void test2(){
Map<String,Integer> ml=new HashMap<String,Integer>();
ml.put("张三", 800);
ml.put("李四", 1500);
ml.put("王五", 3000);
ml.put("张三", 2600);
System.out.println(ml.get("张三"));
System.out.println(ml.get("李四"));
System.out.println(ml.get("王五"));
System.out.println("##################");

Set<Entry<String, Integer>> entrySet=ml.entrySet();
for(Entry<String, Integer> entry:entrySet){
entry.setValue(entry.getValue()+100);
System.out.println("姓名:"+entry.getKey()); //获取Entry对象的key值
System.out.println("工资:"+entry.getValue()); //获取Entry对象的value值
}
System.out.println("*****************");
Set<String> ks = ml.keySet();
for(String k : ks) {
System.out.println("姓名:"+k);
System.out.println("工资:"+ml.get(k));
}


}


@Test
public void test2sjb(){
Map<String,Integer> ml=new HashMap<String,Integer>();
ml.put("张三", 800);
ml.put("李四", 1500);
ml.put("王五", 3000);
print(ml);
System.out.println("修改后");
ml.put("张三", 2600);
print(ml);

System.out.println("加薪后1:");
ml.put("张三",ml.get("张三")+100);
ml.put("李四",ml.get("李四")+100);
ml.put("王五",ml.get("王五")+100);
print(ml);

System.out.println("加薪后2");
Set<Entry<String, Integer>> ens=ml.entrySet();
for(Entry<String, Integer> entest:ens){
int money=entest.getValue()+100;
entest.setValue(money);
}
print(ml);
}
//1.
private void print(Map<String,Integer> ml){
Set<String> ks=ml.keySet();
Iterator<String> itr=ks.iterator();
while(itr.hasNext()){
String key=itr.next();
int value=ml.get(key);
System.out.println("key:"+key+"value:"+value);
}
}

@Test
public void test7(){
Employee zs=new Employee("张三", 800);
Employee ls=new Employee("李四", 1500);
Employee ww=new Employee("王五", 3000);
Map<String,Employee> ep1=new HashMap<String, Employee>();
ep1.put("张三", zs);
Map<String,Employee> ep2=new HashMap<String, Employee>();
ep2.put("李四", ls);
Map<String,Employee> ep3=new HashMap<String, Employee>();
ep3.put("王五", ww);
List<Map<String,Employee>> list=new ArrayList<Map<String,Employee>>();
list.add(ep1);
list.add(ep2);
list.add(ep3);
for(Map<String, Employee> map:list){
Set<Entry<String, Employee>> enset=map.entrySet();
for(Entry<String, Employee> en:enset){
//String key=en.getKey();
Employee value = en.getValue();
System.out.println("key:"+value.getName()+",value:"+value.getFee());
}
}
}
/*private void print(Map<String,Integer> ml){
//3.
Set<Entry<String, Integer>> entrySet = ml.entrySet();
Iterator<Entry<String, Integer>> itr=entrySet.iterator();
while(itr.hasNext()){
Entry<String, Integer> key=itr.next();
System.out.println("key="+key.getKey()+"value="+key.getValue()); //获取Entry对象的key值
//System.out.println("value="+key.getValue()); //获取Entry对象的value值
}

//2.
Set<Entry<String, Integer>> entrySet = ml.entrySet();
for(Entry<String, Integer> en : entrySet) {
System.out.println("key="+en.getKey()); //获取Entry对象的key值
System.out.println("value="+en.getValue()); //获取Entry对象的value值
}

}*/


案例四:

Car:

package Map;


public class Car {
private String name;
private int speed;

public Car(String name, int speed) {
this.name = name;
this.speed = speed;
}


public String getName() {
return name;
}


public void setName(String name) {
this.name = name;
}


public int getSpeed() {
return speed;
}


public void setSpeed(int speed) {
this.speed = speed;
}


}

test:

@Test
public void test3sjb(){
Car c1=new Car("奥拓", 100);
Car c2=new Car("宝马", 200);
Car c3=new Car("奔驰", 300);
Map<Car,Integer> ml=new HashMap<Car, Integer>();
ml.put(c1, 10000);
ml.put(c2, 500000);
ml.put(c3, 2000000);
Set<Entry<Car, Integer>> entry1=ml.entrySet();
for(Entry<Car, Integer> en1:entry1){
Car val = en1.getKey();
System.out.println(val.getName());

if(val.getName().equals("宝马")){
System.out.println("“宝马”的价格"+en1.getValue());
}
}
for(Entry<Car, Integer> en2:entry1){
double price=en2.getValue()*0.8;
System.out.println("品牌:"+en2.getKey().getName()+",价格为:"+price);
}
}

practice:1-6

@Test
public void test1(){
List i=new ArrayList();
i.add("abc");
i.add(true);
i.add(1);
System.out.println(i.size());//获取集合中元素的个数
System.out.println(i.get(0));//获取集合中的元素,索引值从0开始
i.remove("abc"); //删除集合中的元素
i.remove(0);//删除集合中的元素,索引从0开始
i.clear(); //删除集合中所有元素
System.out.println(i.contains("abc"));
}

@Test
public void test2(){
Set<Integer> set=new HashSet<Integer>();
set.add(1);
set.add(4);
set.add(3);
System.out.println(set.size());
/*Iterator<Integer> itr=set.iterator();
while(itr.hasNext()){
Integer i = itr.next();
System.out.println(i);
}*/
}
@Test
public void test3(){
Set<Integer> set=new HashSet<Integer>();
while(true){
int x=(int)(Math.random()*10);
System.out.println(x);
if(set.size()<5){
set.add(x);
}else{
break;
}
}
System.out.println(set.toString());
}
@Test
public void test4(){
Map<String,String> map=new HashMap<String, String>();
map.put("no1", "bj");
map.put("no2", "sh");
map.put("no3", "gz");
map.put("no4", null);
map.put(null, "bj");
System.out.println(map.get("no1"));
Set<String> set=map.keySet();
Iterator<String> ks=set.iterator();
while(ks.hasNext()){
String key = ks.next();
String value = map.get(key);
System.out.println(key+value);
}
System.out.println("###########");
for(String key:set){//Set<String> set=map.keySet();
String value=map.get(key);
System.out.println(key+value);
}
}

@Test
public void test5(){
Map<String,String> map=new HashMap<String, String>();
map.put("no1", "bj");
map.put("no2", "sh");
map.put("no3", "gz");
map.put("no4", null);
map.put(null, "bj");
Set<Entry<String, String>> set=map.entrySet();
Iterator<Entry<String, String>> ks=set.iterator();
while(ks.hasNext()){
Entry<String, String> ey = ks.next();
String key = ey.getKey();
String value = ey.getValue();
System.out.println(key+value);
}
System.out.println("**********");
for(Entry<String, String> en:set){//Set<Entry<String, String>> set=map.entrySet();
System.out.println(en.getKey()+en.getValue());
}
}
@Test
public void test6(){
List<Integer> list=new ArrayList<Integer>();
list.add(7);
list.add(45);
list.add(23);
list.add(78);
System.out.println(list.toString());
Collections.sort(list);
System.out.println(list.toString());
System.out.println(Collections.max(list));
System.out.println(Collections.min(list));
Collections.replaceAll(list, 45, 888);
System.out.println(list.toString());
}

}


@Test
public void test5() {
List<News> news = new ArrayList<News>();
News news1 = new News("中国多地遭雾霾笼罩空气质量再成热议话题");
News news2 = new News("春节临近北京“卖房热”");
news.add(news1);
news.add(news2);

Iterator<News> itr = news.iterator();

while(itr.hasNext()) {
News totlenews = itr.next();
String title = totlenews.getTitle();
if(title.length() >= 15) {
title = title.substring(0, 14)+"...";
}
totlenews.setTitle(title);
System.out.println(totlenews);
}
}

@Test
public void test5() {
List<News> news = new ArrayList<News>();
News news1 = new News("中国多地遭雾霾笼罩空气质量再成热议话题");
News news2 = new News("春节临近北京“卖房热”");
news.add(news1);
news.add(news2);

Iterator<News> itr = news.iterator();

while(itr.hasNext()) {
News totlenews = itr.next();
String title = totlenews.getTitle();
if(title.length() >= 15) {
title = title.substring(0, 14)+"...";
}
totlenews.setTitle(title);
System.out.println(totlenews);
}
}

原创粉丝点击