文章目录
- 一、先上结论
- 二、C++中的逗号
- 逗号运算符和逗号表达式
- 三、JAVA中的逗号
- 四、实战验证
- 情况一:在定义(或声明)变量时利用逗号
- C++
- JAVA
- 情况二:在for循环条件中使用逗号
- C++
- JAVA
- 情况三:在函数形参参数列表中使用逗号
- C++
- JAVA
- 情况四:在非定义变量时使用逗号将多个表达式分隔开
- C++
- JAVA
- 情况五:调用多个函数时使用逗号
- C++
- 情况六:调用函数对变量进行赋值时使用逗号
- C++
- JAVA
- 五、回顾结论
参考文章:这里
一、先上结论
C++中的逗号几乎可以说是 随便使用,但是JAVA中的逗号就要注意了:JAVA中使用逗号(,
)来分隔多条赋值语句时,只能在 分隔方法的参数、定义变量 时或用于 for
循环的表达式 时使用,别的地方一律不能,只能将每条语句用分号(;
)隔开。
二、C++中的逗号
逗号运算符和逗号表达式
C++提供一种特殊的运算符—逗号运算符,又称为“顺序求值运算符”。它用于将两个表达式连接起来。
- 逗号表达式的一般形式:
表达式1,表达式2
- 逗号表达式的求解过程:先求解表达式1,再求解表达式2。整个逗号表达式的值为表达式2的值。
- 逗号表达式的一般形式可以扩展为:
表达式1,表达式2,表达式3,...,表达式n
- 在许多情况下,使用逗号表达式只是要分别得到每个表达式的值,而并非要得到整个逗号表达式的值。最常用于
for
循环语句中。 - C++中几乎任何能用到逗号(
,
)的情况都可以用逗号(,
)。
三、JAVA中的逗号
JAVA中的逗号(,
)属于普通分隔符。JAVA里没有逗号表达式,逗号(,
)仅仅可以用在 变量定义(或声明)时,可以多条赋值语句用逗号分隔开,语句最后加一个分号(;
);或者是 函数传参数时,多个参数用逗号(,
)隔开;亦或是 for
循环中需要两个及以上的循环变量或循环条件或循环变量的自增(或自减)语句 多个可以用逗号(,
)隔开。仅此而已,其余情况利用逗号来分隔多条语句都是错误的。
四、实战验证
上面我们给出了C++与JAVA中逗号的区别,下面我们具体来验证一下上述的结论。
情况一:在定义(或声明)变量时利用逗号
C++
- C++中正确执行,没有报错。
JAVA
- JAVA中也正常执行,没有报错。
情况二:在for循环条件中使用逗号
C++
- C++中正确执行,没有报错。
JAVA
- JAVA中也正常执行,没有报错。
情况三:在函数形参参数列表中使用逗号
C++
- C++中正确执行,没有报错。
JAVA
- JAVA中也正常执行,没有报错。
情况四:在非定义变量时使用逗号将多个表达式分隔开
C++
- C++中正确执行,没有报错。
JAVA
- JAVA出现 错误。那我们怎样才能改对呢?我们试着把逗号换成分号,即每条语句后接一个分号。
- 这样就不会报错了,说明我们逗号的使用有误。
情况五:调用多个函数时使用逗号
C++
- C++中正确执行,没有报错。
- JAVA中出现 错误,只要将逗号改为分号即可。
- 可以正常输出了!
情况六:调用函数对变量进行赋值时使用逗号
C++
- C++中正常输出,没有任何报错,改成下面情况也是照常输出。
JAVA
- JAVA可以正常运行,但是我们上面是在定义变量时给变量赋值的,我们试试能不能在定义后为变量赋值。
- 报错了! 其实这种情况也就是 情况四 。当然我们改正的方法也是将逗号改为分号。
- 好了!正常输出,没有报错。
五、回顾结论
经过上述的验证我们可以知道,文章开头给出的结论是正确的。这个逗号问题其实就是一个语法问题,C++和JAVA在语法上的一些小差异,这也是我最近学习JAVA时遇到的问题,分享给大家。我们只要记住两者的区别就可以:C++中有逗号运算符和逗号表达式而JAVA中的逗号仅仅是普通的分隔符,所以JAVA中逗号的使用需要注意。或者如果害怕分不清楚的话,我们就每条语句后加一个分号,不要将多条语句写在一起,用逗号隔开,只在最后一条语句后加一个分号。