java129-hashmap的方法

简介: java129-hashmap的方法
import java.util.Date;
 public class Car {
     private String brand;//品牌
     private Date createDate;
     private int housepower;//马力
     private int speed;//速度
     public void setBrand(String brand) {
         this.brand = brand;
     }
     public String getBrand() {
         return brand;
     }
     public Date getCreateDate() {
         return createDate;
     }
     public void setCreateDate(Date createDate) {
         this.createDate = createDate;
     }
     public void setHousepower(int housepower) {
         this.housepower = housepower;
     }
     public int getHousepower() {
         return housepower;
     }
     public void setSpeed(int speed) {
         this.speed = speed;
     }
     public int getSpeed() {
         return speed;
     }
 }
 测试类import java.util.*;
 public class test68 {
     public static void main(String[] args) {
         Car c0 = new Car();
         c0.setBrand("宝马");
         c0.setCreateDate(new Date());
         c0.setHousepower(4);
         c0.setSpeed(200);
         Car c1 = new Car();
         c1.setBrand("创奇");
         c1.setCreateDate(new Date());
         c1.setHousepower(5);
         c1.setSpeed(220);
         Car c2 = new Car();
         c2.setBrand("发力");
         c2.setCreateDate(new Date());
         c2.setHousepower(4);
         c2.setSpeed(240);
         Car c3 = new Car();
         c3.setBrand("丰田");
         c3.setCreateDate(new Date());
         c3.setHousepower(4);
         c3.setSpeed(230);
         //Car c4 = c3;
        // c4.setBrand("大众");
         //c4.setCreateDate(new Date());
         //c4.setHousepower(4);
         //c4.setSpeed(230);
         //添加hashmap的对象
         Map carMap = new HashMap();
         //使用put添加对象
         carMap.put("k1", c0);
         carMap.put("k2", c1);
         carMap.put("k3", c2);
         carMap.put("k4", c3);
         //carMap.put("k4",c4);
         //使用get返回自己需要的值
         Object obj = carMap.get("k4");
         if (obj != null) {
             Car target = (Car) obj;
             System.out.println(target.getBrand() + target.getHousepower());
         } else {
             System.out.println("未找到");
         }
         /*获取map集合的所有值*/
         Set keySet = carMap.keySet();
         Car c = null;
         for (Object k : keySet) {
             Car temp = (Car) carMap.get(k);
             System.out.println(temp.getBrand() + temp.getHousepower() + temp.getSpeed());
         }
         /*获取所有值对象*/
         Collection coll = carMap.values();
         for (Object v : coll) {
             System.out.println(((Car) v).getBrand());
         }
         /*判断是否包含某个给定的key*/
         boolean boo = carMap.containsKey("k9");
         System.out.println("是否包含k9" + boo);
         System.out.println(carMap.containsValue(c3));
         /*移除键值对象*/
         if (carMap.containsKey("k3")) {
             Object removeobj = carMap.remove("k3");
             System.out.println(((Car) removeobj).getBrand());
         }
         System.out.println(carMap.size());
     }
 }

image.png

相关文章
|
26天前
|
Java
让星星⭐月亮告诉你,HashMap中保证红黑树根节点一定是对应链表头节点moveRootToFront()方法源码解读
当红黑树的根节点不是其对应链表的头节点时,通过调整指针的方式将其移动至链表头部。具体步骤包括:从链表中移除根节点,更新根节点及其前后节点的指针,确保根节点成为新的头节点,并保持链表结构的完整性。此过程在Java的`HashMap$TreeNode.moveRootToFront()`方法中实现,确保了高效的数据访问与管理。
27 2
|
3天前
|
存储 Java 程序员
Java基础的灵魂——Object类方法详解(社招面试不踩坑)
本文介绍了Java中`Object`类的几个重要方法,包括`toString`、`equals`、`hashCode`、`finalize`、`clone`、`getClass`、`notify`和`wait`。这些方法是面试中的常考点,掌握它们有助于理解Java对象的行为和实现多线程编程。作者通过具体示例和应用场景,详细解析了每个方法的作用和重写技巧,帮助读者更好地应对面试和技术开发。
28 4
|
14天前
|
Java API
Java 对象释放与 finalize 方法
关于 Java 对象释放的疑惑解答,以及 finalize 方法的相关知识。
35 17
|
7天前
|
Java 测试技术 Maven
Java一分钟之-PowerMock:静态方法与私有方法测试
通过本文的详细介绍,您可以使用PowerMock轻松地测试Java代码中的静态方法和私有方法。PowerMock通过扩展Mockito,提供了强大的功能,帮助开发者在复杂的测试场景中保持高效和准确的单元测试。希望本文对您的Java单元测试有所帮助。
13 2
|
15天前
|
Java 开发者
在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口
【10月更文挑战第20天】在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口。本文揭示了这两种方式的微妙差异和潜在陷阱,帮助你更好地理解和选择适合项目需求的线程创建方式。
13 3
|
17天前
|
Java 大数据 API
别死脑筋,赶紧学起来!Java之Steam() API 常用方法使用,让开发简单起来!
分享Java Stream API的常用方法,让开发更简单。涵盖filter、map、sorted等操作,提高代码效率与可读性。关注公众号,了解更多技术内容。
|
15天前
|
Java 开发者
在Java多线程编程中,选择合适的线程创建方法至关重要
【10月更文挑战第20天】在Java多线程编程中,选择合适的线程创建方法至关重要。本文通过案例分析,探讨了继承Thread类和实现Runnable接口两种方法的优缺点及适用场景,帮助开发者做出明智的选择。
12 2
|
15天前
|
安全 Java
Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧
【10月更文挑战第20天】Java多线程通信新解:本文通过生产者-消费者模型案例,深入解析wait()、notify()、notifyAll()方法的实用技巧,包括避免在循环外调用wait()、优先使用notifyAll()、确保线程安全及处理InterruptedException等,帮助读者更好地掌握这些方法的应用。
12 1
|
15天前
|
Java 开发者
Java多线程初学者指南:介绍通过继承Thread类与实现Runnable接口两种方式创建线程的方法及其优缺点
【10月更文挑战第20天】Java多线程初学者指南:介绍通过继承Thread类与实现Runnable接口两种方式创建线程的方法及其优缺点,重点解析为何实现Runnable接口更具灵活性、资源共享及易于管理的优势。
26 1
|
15天前
|
Java
在Java多线程编程中,`wait()`和`notify()`方法的相遇如同一场奇妙的邂逅
在Java多线程编程中,`wait()`和`notify()`方法的相遇如同一场奇妙的邂逅。它们用于线程间通信,使线程能够协作完成任务。通过这些方法,生产者和消费者线程可以高效地管理共享资源,确保程序的有序运行。正确使用这些方法需要遵循同步规则,避免虚假唤醒等问题。示例代码展示了如何在生产者-消费者模型中使用`wait()`和`notify()`。
22 1