栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JavaOOP学习

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaOOP学习

第九天

不知道为什么标题不能加入时间了,以后日期就写在内容中了。

今日学习的集合,上笔记:

集合框架:
1.数组与集合的区别:
    集合没有固定长度,数组有
    集合可以存入映射对象(键值对)
2.集合主要类型:Set(集),List(列表),Queue(队列),Map(映射)
3.集合存放的是对象的引用而非对象本身,集合不能存储基本数据类型
4.ArrayList(List子类):大小可变,自动增长,可以动态增加,减少元素
5.不同的集合 增删的方法不同,但是查都可以通过迭代器查询。
6.数组与集合可以互相转化(可以通过Arrays,Collections操作)
7.添加泛型后只能在集合中存入泛型指定内容,否则可以存入任意内容
 

今日题目:

1.编写一个Book类,该类至少有name和price两个属性。
该类要实现Comarable接口,在接口的compareTo()方法中规定两个Book类实例的大小关系为二者的price属性的大小关系。
在主函数中,选择合适的集合类型存放Book类的若干个对象,然后创建一个新的Book类的对象,并检查该对象与集合中的哪些对象相等。

package java_1216;

public class Book implements Comparable{
    String name;
    double price;

    public Book(String name, double price) {
        this.name = name;
        this.price = price;
    }

    @Override
    public int compareTo(Object o) {
          Book b=(Book)o;
        return (int)(this.price-b.price);
    }
}
package java_1216;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class TestBook {
    public static void main(String[] args) {
        List list=new ArrayList();
        list.add(new Book("果冻",20));
        list.add(new Book("旺仔小馒头",10));
        Book book=new Book("果冻",20);
         Iterator i=list.iterator();
         while (i.hasNext()){
             Book book1=i.next();
             if (book1.compareTo(book)==0) {
                 System.out.println(book1.name+"相同");
             }
         }
    }
}

2.编写一个应用程序,用户分别从两个文本框输入学术的姓名和分数,程序按成绩排序将这些学生的姓名和分数显示在一个文本区中。

package java_1216;

import java.util.*;

public class Demo01 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        String name;
        int score;
        Map map=new HashMap();
        do {
            System.out.print("请输入姓名:(输入end结束)");name=sc.next();
            System.out.print("请输入分数:");score=sc.nextInt();
            map.put(name,score);
        }while (!name.equals("end"));
     List> list=new ArrayList>(map.entrySet());
     Collections.sort(list, new Comparator>() {
         @Override
         public int compare(Map.Entry o1, Map.Entry o2) {
             return o1.getValue().compareTo(o1.getValue());
         }
     });
        for (Map.Entry m:list) {
            System.out.println(m.getKey()+":"+m.getValue());
        }
    }
}

3.创建一个list,在list中增加三个工人,基本信息如下:
姓名   年龄   工资
zhang3   18   3000
li4      25   3500
wang5    22   3200
在li4之前插入一个工人,信息为:姓名:zhao6,年龄:24,工资3300
删除wang5的信息

package java_1216;

public class Worker {
    String name;
    int age;
    double price;

    public Worker(String name, int age, double price) {
        this.name = name;
        this.age = age;
        this.price = price;
    }
}
package java_1216;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Demo02 {
    public static void main(String[] args) {
        List list=new ArrayList();
        list.add(new Worker("zhang3",18,3000));
        list.add(new Worker("li4",25,3500));
        list.add(new Worker("wang5",22,3200));
        list.add(1,new Worker("zhao6",24,3300));
        list.remove(3);
          Iterator i =list.iterator();
          while (i.hasNext()) {
              Worker w= (Worker) i.next();
              System.out.println(w.name+" "+w.age+" "+w.price);
          }
    }
}

呼~真累~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/666373.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号