java编程细节总结(一):等于号的作用
很多人在编程的过程中有很多的疑问,比如说等于号,等于号谁都知道是由赋值的作用,那也仅仅对于变量而已,那对于对象呢?
好了,废话不多说。下面是小编的总结。
一、对变量而言
等于号具有赋值的作用,比如说a=3,就是把3赋值于a。这个是很简单的,大家都经常赋值,除了判断要双等于号外,但单等于号在初始化对象的时候进行赋值。
二、对引用对象而言
等于号具有传引用(隐式指针)的作用,这个也不难理解,比如说指针:a=b,对象a的指针指向对象b的地址,这时候a就引用了b的地址,起到了传地址的作用。
三、关于单等于号、双等于号和三等于号的作用
单等于号作用如上所述。下面从双等于号说起
1.双等于号
举一个例子,如if(a==b)就执行某某某语句,我们都知道实际上a==b不是所谓的变量对象值的比较,在java中一般两个变量的值的比较是a.equals(b)[其中a、b是两个变量对象值,任取]。所以实际上a==b是两个变量对象的栈地址的比较,这就涉及了栈、常量池和堆的概念,如果不懂请看博主的关于这三者的解释或者上网从java底层开始看。同时,双等于号是不严格等于。
不严格等于例子:
"1"== true;由于类型不同,会进行一个数据类型转换true转换为"1""1"== 1在把"1"转换为1在比较1 == 1所以true是等于1的
所以可以看出双等于的不严格性,三等于号就解决了这个问题。
2.三等于号
三等于号就是用来进行严格判断的,无论js还是java中都是如此,如下例的直观前端例子:
var c = "3"
var b = 3
c == b true
c === b false
其中c是字符串,b是数值,而因为var类型是js里一个变量类型,也是唯一的变量类型,这就是js为什么是弱类型语言的原因,因为java还有8个基本数据类型呢!(骄傲(‾◡◝))~哔~~~跳过
因为就是数值在转换过程中不严谨,双等于号成立,如果还要进行更加严格的判断,连一点差错都没有,那就是得是三等于号啦,所以就是这个严格的符号运用在一系列稳定的程序设计中。
java编程细节总结(一):等于号的作用相关推荐
- java中三个等号_Java细节:单等于号、双等于号、三等于号的作用及双等于号和equls的区别...
我们在编程时总是会用到=或==,但是等于号都有什么作用呢?下面我们来看一下 (注:下文会提及一点常量池.堆栈,由于本人了解还不是透彻,暂不做解释,日后会做总结,可先点击字面查看理解) 一.单等于号的作 ...
- Java细节:单等于号、双等于号、三等于号(js中才有)的作用及双等于号和equals(源码)的区别
我们在编程时总是会用到=或==,但是等于号都有什么作用呢?下面我们来看一下 (注:下文会提及一点常量池.堆栈,由于本人了解还不是透彻,暂不做解释,日后会做总结,可先点击字面查看理解) 一.单等于号的作 ...
- java原生的编译软件_原生态Java 程序员容易忽视的编程细节
Java是Java程序设计语言和Java平台的总称,要想学好一门语言,打好基础最关键的,学习一种新的编程语言比学习新的口头语言要容易得多.然而,在这两种学习过程中,都要付出额外的努力去学习不带口音地说 ...
- 非洲瓜哇JAVA布的特点_java语言的基本特性以及编程细节
前言 java语言的学习是一个体系,所以如果想要对java的编程有一个很精通的一个掌握,它离不开很多基础的知识点,比如JVM的原理.java多线程并发编程.数据结构等等.所以我这里对我学习的java的 ...
- Java编程中忽略这些细节,Bug肯定找上你
摘要:在Java语言的日常编程中,也存在着容易被忽略的细节,这些细节可能会导致程序出现各种Bug. 本文分享自华为云社区<Java编程中容易忽略的细节总结丨[奔跑吧!JAVA]>,作者:j ...
- java 1 2 等于_java 判断语句中一个等于号和两个等于号的区别是什么?
展开全部 一个等于号 是赋值操作的意e5a48de588b63231313335323631343130323136353331333365633864思 比如 int i = 5 就是把i的值赋为5 ...
- Java中getneighbor,桩号转经纬度的实现[Java编程]
赞助商链接 本文"桩号转经纬度的实现[Java编程]"是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体 ...
- Java中等于号,传值和传址区别
1.Java等号的两种作用 java的等于号在进行数据之间赋值时就是传值:在引用对象之间,等于号作用就是传地址. 比如自建类 ListNode xList=ListNode(0); ListNode ...
- Partially Labeled Dirichlet Allocation(PLDA)算法的理解与编程细节(Java)
本文作者:合肥工业大学 电子商务研究所 钱洋 email:1563178220@qq.com . 内容可能有不到之处,欢迎交流. 未经本人允许禁止转载. 文章目录 论文来源 模型 公式推理 编程细节 ...
最新文章
- [转载]Linux从程序到进程
- python语音播报-用Python写一个语音播放软件
- C++中前置操作符和后置操作符的重载
- 根据 *_train_test.prototxt文件生成 *_deploy.prototxt文件
- php调用不存在的方法,php如何调用不存在的方法
- jaxb注解使用_使用JAXB时
- 垃圾回收算法以及垃圾回收器_什么是垃圾回收?
- leetcode421. 数组中两个数的最大异或值(贪心算法)
- linux命令kill百科,Linux 命令 kill
- 看看你爱的他今天是什么‘颜色‘ -- Python爬取微博评论制作专属偶像词云
- 【数据结构和算法】广度优先BFS遍历图(树的层序遍历的拓展)
- 苹果macfcpx视频剪辑软件:Final Cut Pro X
- 9.企业应用架构模式 --- 领域逻辑模式
- 1.9 Important Themes(一些重要的概念)
- 微型计算机的硬件原理图,电脑硬件基础图解
- 易优cms设置完伪静态之后,产品板块出现404
- 迷惘一代、沉默一代、X世代、Z世代……美国的几代人
- linux系统安装佳能打印机驱动,如何在Debian和Debian系统上安装(Canon)打印机
- True Liars (POJ - 1417)带权并查集+dp路径
- Android项目小结——硬解码(MediaCodec实现[MP4]转YUV420各种格式)