关于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对象,是不是同一个对象?

答案是,是同一个对象。

目录
相关文章
|
7月前
|
缓存 Java
Java 引用类型(四种)
Java 引用类型(四种)
|
6月前
|
存储 缓存 算法
JVM第三讲:深入理解java虚拟机之垃圾回收算法?CMS垃圾回收的基本流程?对象引用类型?
JVM第三讲:深入理解java虚拟机之垃圾回收算法?CMS垃圾回收的基本流程?对象引用类型?
109 0
|
1月前
|
存储 Java C语言
【Java】以数组为例简单理解引用类型变量
【Java】以数组为例简单理解引用类型变量
15 1
|
1月前
|
Java
【JVM】深入理解Java引用类型:强引用、软引用、弱引用和虚引用
【JVM】深入理解Java引用类型:强引用、软引用、弱引用和虚引用
103 0
|
1月前
|
缓存 Java
Java中四种引用类型(强、软、弱、虚)
Java中四种引用类型(强、软、弱、虚)
|
6月前
|
Java
Java 最常见的面试题:java 中都有哪些引用类型?
Java 最常见的面试题:java 中都有哪些引用类型?
|
6月前
|
存储 Java 对象存储
每日一道面试题之Java中都有哪些引用类型?
每日一道面试题之Java中都有哪些引用类型?
|
2月前
|
存储 Java 对象存储
[Java]基本数据类型与引用类型赋值的底层分析的小结
[Java]基本数据类型与引用类型赋值的底层分析的小结
68 0
|
6月前
|
缓存 Java
【面试题精讲】Java中的五种引用类型
【面试题精讲】Java中的五种引用类型
|
6月前
|
缓存 Java
【Java中四种引用类型】
【Java中四种引用类型】