首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >也是表达式的Java语句,请解释

也是表达式的Java语句,请解释
EN

Stack Overflow用户
提问于 2021-08-19 03:46:16
回答 1查看 173关注 0票数 1

请帮我从纯粹术语的角度来解释这句话:

“从技术上讲,由于变量赋值可用作进一步赋值或操作的值,因此可以将它们视为语句和表达式。”

技术上什么意思?什么不是技术上的?如果

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
a = (b = 1);

我们所知道的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
a = (b = 1); 

是陈述。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(b = 1) 

是一种表达。

问题1:

A= (b = 1);也是表达式吗?或者它只是这样写成这样的表达式:a= (b = 1),不带分号,在另一个语句或表达式中使用?

第2项:

(b = 1)是否也是一种语句(假设它是一种赋值)?或者每句话都必须以;?

问题3.

B是(b = 1)中的表达式还是一个变量?

1是(b = 1)中的表达式还是文字表达式?

是a= (b = 1)中的表达式还是变量?

关于Q3的一些澄清:

我想文字和变量可以是它们自己的表达式。例如,在语句中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
a = 1;

1是一个表达式。

但是,对于示例语句的内部表达式1也是这样吗:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
a = (b = 1); 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-19 04:01:05

表达式是可以计算为值的任何东西,所以a = (b = 1)是一个表达式(它是一个右操作数是另一个赋值表达式的赋值表达式 )。

代码a = (b = 1);是一条语句;请注意其末尾的分号;。具体来说,它是一个表达式语句。表达式语句是由编写表达式和分号组成的语句。(并非所有类型的表达式都允许作为表达式语句,例如,1 + 1;不是有效语句。)

所以严格地说,分号使这两段代码不同。但是,如果我们不是正式的,那么我们可以说a = (b = 1)可以作为表达式或语句来编写。

为了回答其他关于什么是或不是语句或表达式的问题,我建议检查Java语言规范:

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68847263

复制
相关文章
为什么说java既是编译型语言也是解释型语言
2. JIT 会把编译过的机器码保存起来,以备下次使用,因此从理论上来说,采用该 JIT 技术可以接近以前纯编译技术。
知识浅谈
2022/03/22
5190
模型|“请解释”黑盒机器学习模型的解释性
2019年2月,波兰政府对银行法进行了修订,赋予客户在做出信贷拒绝时获得解释的权利。这是在欧盟实施GDPR的直接后果之一。这意味着,如果决策过程是自动的,银行需要能够解释为什么不发放贷款。
陆勤_数据人网
2019/05/14
1.3K0
JavaScript立即执行函数的解释分析(1)—表达式与语句的区别
也许你知道,这是立即执行函数,但为什么这样能立即执行呢?也许是该好好聊聊了!但是,我们先来聊点其他的。
FEWY
2019/05/26
7040
Java 运算符、表达式、语句
文章目录 1. 运算符 2. 表达式 3. 语句 1. 运算符 赋值运算 = +, -, *, /, % 算术运算 +, -, !, ~ 一元运算 关系运算 >, <, >=, <=, ==, !=
Michael阿明
2021/09/06
2790
java 常量表达式,需要常量表达式? (Java switch语句)[通俗易懂]
I have no idea what is causing this error. My teacher and I went over it and couldn’t find what was wrong.
全栈程序员站长
2022/11/11
8970
java运算符、表达式和语句
1.加减运算符:  +,-     加减运算符是二目运算符;加减运算符的结合方向是从左到右;加减运算符的操作元是整型或浮点型数据,加减运算符的优先级是4级。  2.乘、除和求余运算符: *,/,% 以上运算符是二目运算符,结合方向是从左到右,乘、除和求余运算符的操作元是整型或浮点型数据。运算符的优先级是3级。 3.算术表达式   用算术符号和括号连接起来的符合java语法规则的式子,称为算术表达式。
用户7886150
2021/04/22
5770
25 - switch 语句解释说明​
原文:https://dev.to/bhagatparwinder/js-switch-statement-explained-101c
前端黑板报
2022/12/01
3550
请解释一下TreeMap?
TreeMap是一个有序的key-value集合,基于红黑树(Red-Black tree)的 NavigableMap实现。该映射根据其键的自然顺序进行排序,或者根据创建映射时提供的 Comparator进行排序,具体取决于使用的构造方法。
剑走天涯
2019/09/10
4640
explain 分析sql语句字段的解释
+----+-------------+-------+------------+------+---------------+-----+---------+------+------+----------+-------+ | id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra | +----+-------------+-------+
秋白
2018/05/24
3.2K0
java循环语句_Java中的循环语句
while 语句也称为条件判断语句. 循环方式 : 利用一个条件来控制是否要反复执行这个语句.
全栈程序员站长
2022/09/08
4.5K0
56 - 请描述lambda表达式的作用
请阐述什么是lambda表达式,并用代码描述lambda表达式的应用场景 ''' lambda表达式: 就是匿名函数,可以作为参数值传给函数或方法 ''' a = [('a',1), ('b',2), ('c',3), ('d',4)] a_1 = list(map(lambda x:x[0], a)) a_2 = list(map(lambda x:x[1], a)) print(a_1) print(a_2) ['a', 'b', 'c', 'd'] [1, 2, 3, 4]
ruochen
2021/06/05
3450
56 - 请描述lambda表达式的作用
[MySQL]explain语句中type字段的具体解释
以下排序从最优到最差: system:表内只有一行数据。 const:最多只会有一条记录匹配,常用于主键或者唯一索引为条件查询。 eq_ref:当连接使用的索引为主键和唯一时会出现。 ref:使用普通索引 = 或 <=> 运算符进行比较将会出现。 fulltext:使用全文索引。 ref_or_null:跟 ref 类型类似,只是增加了 null 值的判断,实际用的不多。语句为 where name = ‘kaka’ and name is null,name 为普通索引。 index_merge:查询语句使用了俩个以上的索引,常见在使用 and、or 会出现,官方文档将此类型放在 ref_or_null 之后,但是在很多的情况下由于读取索引过多性能有可能还不如 range。 unique_subquery:用于 where 中的 in 查询,完全替换子查询,效率更高。语句为 value IN (SELECT primary_key FROM single_table WHERE some_expr) index_subquery:子查询中的返回结果字段组合是一个索引(或索引组合),但不是一个主键或唯一索引。 range:索引范围查询,常见于使用 =,<>,>,>=,<,<=,IS NULL,<=>,BETWEEN,IN() 或者 like 等运算符的查询中。 index:索引全表扫描,把索引从头到尾扫一遍。 all:全表扫描,性能最差。
唯一Chat
2021/03/09
9300
通过引入switch表达式来增强Java switch语句
去年12月下旬,我发布了“ Switch Expressions Coming Java? 从那时起,进行了广泛的讨论,表达了意见分歧,现在就Java的switch表达式的未来达成了共识。 我曾尝试在12月的博客文章中评论与switch表达式有关的一些主要发展。 但是,我觉得这周琥珀色观察者邮件列表上的Brian Goetz消息标题“ [switch] switch的进一步统一 ”保证了有关Java switch表达式的新博客文章。
用户7886150
2021/04/26
5560
Java常见面试题分析:请解释&amp;和&amp;&amp;,|和||的区别
  |- 短路与: 如果前面的判断返回了false,后面不再判断,最终结果就是false
用户1289394
2018/10/25
9430
Java常见面试题分析:请解释&amp;和&amp;&amp;,|和||的区别
请解释一下this和super的区别?
切记: · this.方法():先从本类查找是否存在指定的方法,如果没有找到,则调用父类操作; · super.方法():直接由子类调用父类之中的指定方法,不再找子类。
葆宁
2019/04/19
4230
请解释一下this和super的区别?
Java战争的回忆,请善待Java
本文来自微信公众号:金捷幡(ID:jin-jiefan),作者:金捷幡,封面:拉里·埃里森(东方IC)
Java帮帮
2019/08/26
7460
Java战争的回忆,请善待Java
C语言-if语句_c语言if语句表达式
1、一般形式 if(表达式)表达式1 else 表达式2 :表达式成立(为真)则执行表达式1,否则执行表达式2.
全栈程序员站长
2022/09/20
1.2K0
经典面试题-请解释Spring Bean的自动装配?
在Spring框架中,在配置文件中设定bean的依赖关系是一个很好的机制,Spring容器还可以自动装配合作关系bean之间的关联关系。这意味着Spring可以通过向Bean Factory中注入的方式自动搞定bean之间的依赖关系。自动装配可以设置在每个bean上,也可以设定在特定的bean上。 下面的XML配置文件表明了如何根据名称将一个bean设置为自动装配:
cwl_java
2019/11/05
1.7K0
经典面试题-请解释自动装配模式的区别?
在Spring框架中共有5种自动装配,让我们逐一分析。 no: 这是Spring框架的默认设置,在该设置下自动装配是关闭的,开发者需要自行在bean定义中用标签明确的设置依赖关系。 byName: 该选项可以根据bean名称设置依赖关系。当向一个bean中自动装配一个属性时,容器将根据bean的名称自动在在配置文件中查询一个匹配的bean。如果找到的话,就装配这个属性,如果没找到的话就报错。 byType: 该选项可以根据bean类型设置依赖关系。当向一个bean中自动装配一个属性时,容器将根据bean的
cwl_java
2019/11/05
6510
点击加载更多

相似问题

请解释这条Java布尔逻辑语句

80

请解释此Tcl if语句中的表达式

217

请解释continue语句

11

请解释perl语句

20

请解释这条jQuery语句

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文