Java实验5 4月20日

1.利用随机函数生成20个随机数,并将它们有序地存入到一个TreeSet对象中,然后利用迭代器有序地输出。

package wxy;
import  java.util.Iterator;
import java.util.TreeSet;

public  class wxy1{
    private  TreeSet<Double> set =new TreeSet<Double>();
    public void add(){
        for (int i=0;i<20;i++)
        {
            this.set.add(new Double( Math.random()));
        }
    }
    public void list()
    {
        Iterator <Double>iterator =set.iterator();
        while (iterator.hasNext()){
            Double d=iterator.next();
            System.out.println(d.doubleValue());
        }
    }
    public static  void main(String[] args)
    {
        wxy1 wxy=new wxy1();
        wxy.add();
        System.out.println("TreeSet's element");
       wxy.list();
    }
}

2.利用HashMap类对象存储公司电话号码薄,其中包含公司的电话号码和公司名称,然后删除一个公司和查询一个公司的操作。

package wxy;

public class Corporation {
    private String name;
    private String tel;
    public Corporation(){}
    public Corporation(String name,String tel){
        super();
        this.name=name;
        this.tel=tel;
    }
    public String getName()
    {
        return  name;
    }
    public void setName(String name)
    {
        this.name=name;
    }
    public String getTel()
    {
        return  tel;
    }
    public void setTel(String tel)
    {
        this.tel=tel;
    }
    @Override
    public String toString()
    {
        return "name="+name+",tel="+tel;
    }
}
package wxy;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Set;

public class wxy2
{
    private HashMap<Integer,Corporation>map=null;
    public wxy2(){
        map=new HashMap<Integer,Corporation>();
    }
    public void append()
    {
        Corporation cp1=new Corporation("重庆长城","02368151551");
        Corporation cp2=new Corporation("重庆现代","02368151552");
        Corporation cp3=new Corporation("重庆龙湖","02368151553");
        Corporation cp4=new Corporation("重庆金科","02368151554");
        Corporation cp5=new Corporation("重庆德庄","02368151555");
        Corporation cp6=new Corporation("重庆秦妈","02368151556");
        map.put(101,cp1);
        map.put(102,cp2);
        map.put(103,cp3);
        map.put(104,cp4);
        map.put(105,cp5);
        map.put(106,cp6);

    }
    public void deleted (String name )
    {
        Set<Integer>set=map.keySet();
        Iterator<Integer>iterator=set.iterator();
        while (iterator.hasNext())
        {
            Integer key =iterator.next();
            Corporation value=map.get(key);
            if(value.getName().equals(name)){
                iterator.remove();
            }
        }
    }
    public void query(String name) {
        Set<Integer> set = map.keySet();
        Iterator<Integer> iterator = set.iterator();
        while (iterator.hasNext()) {
            Integer key = iterator.next();
            Corporation value = map.get(key);
            if (value.getName().equals(name)) {
                System.out.println(value);
            }
        }
    }
    public void show ()
    {
        Set<Integer> set=map.keySet();
        Iterator<Integer>iterator=set.iterator();
        while (iterator.hasNext())
        {
            Integer key=iterator.next();
            Corporation value =map.get(key);
            System.out.println(value);
        }
    }
        public static void main(String [] args)
        {
            wxy2 wxy=new wxy2();
           wxy.append();;

            System.out.println("\n删除前:");
           wxy.show();

            System.out.println("\n删除后:");
            wxy.deleted("重庆德庄");
            wxy.show();

            System.out.println("\n查询重庆金科公司:");
            wxy.query("重庆金科");
        }
    }

3.利用ArrayList类创建一个对象,并向其添加若干个字符串型元素,然后随机选一个元素输出。

package wxy;

import java.util.ArrayList;

public class wxy3{
    private ArrayList<String> list=new ArrayList<String>();
    public void add(int n){
        for(int i=0;i<n;i++){
            list.add("wxy:"+i);
        }
    }
    public void chouQu(){
        int index;
        int x=String.valueOf(list.size()).length();
        index=(int)(Math.random()*Math.pow(10,x))%list.size();
        String temp=list.get(index);
        System.out.println("随机抽取的字符串:");
        System.out.println(temp);
    }public static void main(String[] args){
        wxy3 wxy=new wxy3();
        wxy.add(100);
      wxy.chouQu();
    }
}

4.将1~100之间的整数存放到一个LinkedList对象中,然后将下标能被2整除的元素从列表中删除。

package wxy;

import java.util.Iterator;
import java.util.LinkedList;

public class wxy4{
    private LinkedList<Integer> list=new LinkedList<Integer>();
    public void init(){
        for(int i=1;i<=100;i++){
            list.add(new Integer(i));
        }
    }
    public void remove(){
        Iterator<Integer> iterator=list.iterator();
        int n=0;
        while(iterator.hasNext()){
            iterator.next();
            if(n%2==0){
                iterator.remove();
            }
            n++;
        }
    }
    public void list(){
        for(int i=0;i<list.size();i++){
            System.out.printf("%4d",list.get(i));
            if((i+1)%10==0)
                System.out.println();
        }
    }
    public static void main(String[] args) {
        wxy4 wxy=new wxy4();
        wxy.init();
        System.out.println("删除前:");
        wxy.list();
        System.out.println("\n删除后:");
        wxy.remove();
        wxy.list();
    }

}

5.集合A={1,2,3,4}和集合B={1,3,5,7,9,11},编程求A与B的交集、并集和差集。

package wxy;
import java.util.*;

public class wxy5{
    private ArrayList<Integer> a=new ArrayList<Integer>();
    private ArrayList<Integer> b=new ArrayList<Integer>();
    private ArrayList<Integer> t=new ArrayList<Integer>();
    public void add(){
        a.add(1);
        a.add(2);
        a.add(3);
        a.add(4);
        a.add(5);
        b.add(1);
        b.add(3);
        b.add(5);
        b.add(7);
        b.add(9);
        b.add(11);
    }
    public void bingji(){
        t.addAll(a);
        t.addAll(b);
        this.display(t);
    }
    public void jiaoji(){
        t.clear();
        t.addAll(a);
        t.retainAll(b);
        this.display(t);
    }

    public void chaji(){
        t.clear();
        t.addAll(a);
        t.removeAll(b);
        this.display(t);
    }
    public void display(ArrayList<Integer> list){
        Object[] obj=list.toArray();
        System.out.println(Arrays.toString(obj));
    }
    public static void main(String[] args){
       wxy5 wxy=new wxy5();
        wxy.add();
        System.out.println("并运算结果:");
        wxy.bingji();
        System.out.println("\n交运算结果:");
        wxy.jiaoji();
        System.out.println("\n差运算结果:");
       wxy.chaji();
    }
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值