下面我们来看一段代码

 public static void main(String[] args) {int ret = 1;int a = 10;ret = a++;a = a++;System.out.println(ret);System.out.println(a);}

大家可以估计一下输出的值
是不是 ret = 10 , a = 12 ?
但其实不是的 ret = 10 ,a = 11
其实这样赋值的本质是

java中 每个方法都有一个属于自己的地方,叫做栈帧
栈帧又分为:局部变量表,操作数栈等等
局部变量表 : 主要用户存储方法参数和定义在方法体内的局部变量
操作数栈 : 主要用于保存计算过程的中间结果,同时作为计算过程中变量临时的存储空间

下面就是 a = a++;的具体详细过程
先将 a的值 赋值一份到操作数栈中,然后在对局部变量表中的a加1,此时a = 12
然后将a = 11 的值从操作数栈中取出来赋值给a
这样就将a == 12的值给覆盖了

大家可以自己分析一下 ret = a++; 和 a = a++; 的区别

java 中 a = a++ 的分析相关推荐

  1. java数组释放内存空间,Java中数组的内存分析

    正文 引言: 墨白在文末给大家准备了程序员的适用壁纸,需要的小伙伴自取,今天的内容是给大家聊聊Java中数组的内存分析和原理,很多朋友可能已经忘记了,毕竟这是非常基础的点了,这次算是给大家复习了吧! ...

  2. Java中ArrayList源码分析

    一.简介 ArrayList是一个数组队列,相当于动态数组.每个ArrayList实例都有自己的容量,该容量至少和所存储数据的个数一样大小,在每次添加数据时,它会使用ensureCapacity()保 ...

  3. Java中关于内存泄漏分析和解决方案,都在这里了!

    作者:李序锴 www.jianshu.com/p/54b5da7c6816 最近正在熟悉Java内存泄漏的相关知识,上网查阅了一些资料,在此做个整理算是对收获的一些总结,希望能对各位有所帮助,有问题可 ...

  4. Java中csv文件读写分析

    文章目录 一.txt.csv.tsv文件 二.csv文件规范 三.csv使用场景 四.Java中的csv类库 1. javacsv 2. opencsv 写入器 读取器 解析器 注解 映射策略 过滤器 ...

  5. 使用深度学习模型在 Java 中执行文本情感分析

    积极的? 消极的? 中性的? 使用斯坦福 CoreNLP 组件以及几行代码便可对句子进行分析. 本文介绍如何使用集成到斯坦福 CoreNLP(一个用于自然语言处理的开源库)中的情感工具在 Java 中 ...

  6. Java中Int转byte分析

    针对声明变量 int i = 3,j = 8; int占4个字节,i = 3 在Java二进制表示: 00000000 00000000 00000000 00000011 j = 8 在Java二进 ...

  7. Java中的Enum的使用与分析

    示例: public enum EnumTest { FRANK("The given name of me"), LIU("The family name of me& ...

  8. Java异常打印输出中常见方法的分析

    Java异常是在Java应用中的警报器,在出现异常的情况下,可以帮助我们程序猿们快速定位问题的类型以及位置.但是一般在我们的项目中,由于经验阅历等多方面的原因,依然有若干的童鞋在代码中没有正确的使用异 ...

  9. JAVA产生异常并打印,Java中异常打印输出的常见方法整理

    前言 Java异常是在Java应用中的警报器,在出现异常的情况下,可以帮助我们程序猿们快速定位问题的类型以及位置.但是一般在我们的项目中,由于经验阅历等多方面的原因,依然有若干的童鞋在代码中没有正确的 ...

最新文章

  1. linux 病毒脚本,解析常见的Linux病毒
  2. 关于laravel 框架运行数据库迁移文件的一个小坑以及常用php artisan命令
  3. 洛谷 - P4011 孤岛营救问题(bfs+状态压缩)
  4. 可疑文件_特制的ZIP文件能够绕过电子邮件安全网关
  5. 前端学习(2433):创建页面组件
  6. 企业级工作流解决方案(十六)--工作流--工作流实体模型
  7. mySQL 插入,更新和删除数据
  8. java 遍历arrayList的四种方法
  9. opencv java 特征提取_OPENCV特征点java提取与匹配与比较
  10. Citrix为什么要兼容第三方服务器虚拟化平台
  11. python 学习第十二课
  12. 【王道考研】计算机网络知识点
  13. Chrome离线安装包下载方式
  14. 实现微信 委托代扣/包月服务
  15. Windows系统下使用WCP搭建自己的本地知识库管理平台
  16. 揭开MySQL数据库的神秘面纱!
  17. upc 生命曲线 线段树+lazy
  18. bvlc_googlenet.caffemodel模型及描述文件地址
  19. 深入了解C/C++开发就业前景如何?
  20. java基础数据类型大小

热门文章

  1. Leetcode 101.对称二叉树 (每日一题 20210709)
  2. 集众家之所长,你工作中遇到的可视化问题,如何在 Tableau 官网提交 Case?
  3. numpy.triu详解
  4. 浅析Faiss在推荐系统中的应用及原理
  5. spring-session用redis实现session共享实践
  6. Windows命令计算MD5与SHA1/256值
  7. Dapper,大规模分布式系统的跟踪系统--转
  8. 秒杀业务架构优化之路--转
  9. zookeeper应用实例
  10. Linux 精准获取进程pid--转