关于java的引用类型

简介: 关于java的引用类型

假设我有几个成员变量,是下面这个样子:

List<User> userList;
Map<String,User> userMap;
Map<Integer,List<User>> userAgeMap;

然后我在set方法中为其赋值,如下:

public void setUserList(List<User> users){
  this.userList=users;
  this.userMap=users.stream().collect(Collectors.toMap(User::getName,Function.identity());
  this.userAgeMap=user.stream().collect(Collectors.groupingBy(User::getAge));
}

然后我有下面一段代码:

public void main(String[] args){
  User user=userList.get("Bob");
  user.setAddress("这是一个新的地址");
  //打印list,map,maplist
  System.out.println(userList);
  System.out.println(userMap);
  System.out.println(userAgeMap);
}

打印出来是何情景呢?

其实我想问的是,此时list,map和maplist中的Bob对象,是不是同一个对象?

答案是,是同一个对象。

相关文章
|
缓存 Java
Java 引用类型(四种)
Java 引用类型(四种)
|
存储 缓存 算法
JVM第三讲:深入理解java虚拟机之垃圾回收算法?CMS垃圾回收的基本流程?对象引用类型?
JVM第三讲:深入理解java虚拟机之垃圾回收算法?CMS垃圾回收的基本流程?对象引用类型?
773 0
|
缓存 算法 Java
Java面试题:深入探究Java内存模型与垃圾回收机制,Java中的引用类型在内存管理和垃圾回收中的作用,Java中的finalize方法及其在垃圾回收中的作用,哪种策略能够提高垃圾回收的效率
Java面试题:深入探究Java内存模型与垃圾回收机制,Java中的引用类型在内存管理和垃圾回收中的作用,Java中的finalize方法及其在垃圾回收中的作用,哪种策略能够提高垃圾回收的效率
198 1
Java 最常见的面试题:java 中都有哪些引用类型?
Java 最常见的面试题:java 中都有哪些引用类型?
|
存储 Java 对象存储
每日一道面试题之Java中都有哪些引用类型?
每日一道面试题之Java中都有哪些引用类型?
213 0
|
存储 Java 程序员
【一步一步了解Java系列】:何为数组,何为引用类型
【一步一步了解Java系列】:何为数组,何为引用类型
254 1
|
缓存 Java 开发者
深入理解Java的五种引用类型
深入理解Java的五种引用类型
|
Java 程序员
【JAVA面试题】基本类型的强制类型转换是否会丢失精度?引用类型的强制类型转换需要注意什么?
【JAVA面试题】基本类型的强制类型转换是否会丢失精度?引用类型的强制类型转换需要注意什么?
|
存储 安全 Java
Java一分钟之Java数据类型概览:基本类型与引用类型
【5月更文挑战第7天】本文概述了Java中的基本和引用数据类型,强调了理解它们对高效编程的重要性。基本类型包括数值、布尔和字符类型,而引用类型涉及类、接口、数组等。注意基本类型的精度损失和溢出问题,以及引用类型的空指针异常和内存泄漏。通过明确类型范围、使用包装类、空值检查和及时释放资源来避免这些问题。代码示例展示了基本类型和引用类型的使用。理解这些核心概念有助于编写更健壮的Java代码。
296 1
|
Java 数据库
详聊Java的四种引用类型
最近,在回顾关于JVM的相关知识,其中有一个比较简单,同时又容易被大家忽视的知识点,就是关于4种引用的定义与使用场景,其实仔细刨析源码的时候会发现,在Java中很多地方都有涉及到关于不同引用的问题,并且有些面试官也会在面试的时候问及到这一块的内容
214 1