首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Java中的"Get和和“布尔变量的操作

Java中的"Get和和“布尔变量的操作
EN

Stack Overflow用户
提问于 2015-07-20 02:26:28
回答 7查看 2.7K关注 0票数 19

在Java中是否可以为布尔逻辑运算符使用类似于(i++++i)的语法?

我有一个布尔变量,它只适用于foreach循环的第一次迭代。必须跳过这个迭代。

完整语法是

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for (...)
{
    if (bool)
    {
        bool &= false;
        continue;
    }
}

我想知道是否有任何方法可以在不使用AtomicBoolean的情况下缩短语法。例如,构造if (bool &= false)在语法上是正确的,但我认为它将比较最终结果而不是原始值。

Google不是我的朋友,因为搜索查询有误导性。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2015-07-20 02:29:56

就我个人而言,我会将您当前的代码简化为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for (...)
{
    if (bool)
    {
        bool = false;
        continue;
    }
    // Rest of code
}

..。但是,如果您真的想在if条件下作为副作用来执行此操作,则可以使用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for (...)
{
    if (bool && !(bool = false))
    {
        continue;
    }
    // Rest of code
}

在这里,&&操作符的第一个操作数将涵盖后续操作,!(bool = false)将始终计算为true,并将bool设置为false。

另一种选择来自评论:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for (...)
{
    if (bool | (bool = false))
    {
        continue;
    }
    // Rest of code
}

这在每次迭代中执行赋值,但每次仍然给出正确的结果。

我真的,真的不会使用这最后两种选择。

票数 51
EN

Stack Overflow用户

发布于 2015-07-20 02:32:27

您的代码是通常要做的事情。然而,还有一种选择:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
for (SomeType thing : Iterables.skip(things, 1)) {
    // process thing
}

这使用Google的Iterables.skip()方法,并生成预期的输出--每个循环遍历集合并跳过第一个元素。

票数 22
EN

Stack Overflow用户

发布于 2015-07-20 02:36:28

或者,只需使用一个整数变量,并使用++后增量它。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
int iter = 0;
for (...) {
    if (iter++ == 0) {
        continue;
    }
    ...
}

如果您想跳过第一次迭代,这甚至可能更容易理解。

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

https://stackoverflow.com/questions/31514139

复制
相关文章
布尔型变量java怎么用_java中布尔型数据怎么用
1. 赋值2113:boolean isTest = true; //直接5261赋值,如果不赋值,默4102认是falseboolean isTest = Boolean.valueOf("true"); //从字符串中1653转换后直接赋值boolean isTest = isTestFunction(); //执行方法专后,把方法返回值赋值2. 使用属:if(isTest){ //折行,如果isTest为true}或直接调用方法得到布尔值if(isTestFunction("aa")){ //折行,如果isTestFunction返回true},首先你应该知到布尔型分为true.false.你可以声明一变量先为false.当要达到要执行莫代码时再把其设为true.追问比如我自己编写了一个Name类,在类里面写了一个boolean型的方法,如public boolean equals(Name,other Name)。但是在其他程序中,我声明了两个Name型的变量name1和name2,当要调用这个类的boolean型方法的时候,应该怎么写??平常调用都是name1.A(//A表示一个方法名),但是在这个中对象应该是放在boolean的括号里面的??,建议你到 网上搜些视频看看 有关于这方面的 电驴有www.shufadashi.com防采集。
用户7886150
2021/04/28
3.6K0
好与坏的布尔变量
  要想定义一件事物,你必须要明白和理解该事物才能做出定义。那么我们评判该定义是否恰当甚至是好坏,我们可以用该定义是否恰当表达出该事物。
Qt君
2020/07/02
4570
Java中的变量
我们通过变量来操纵存储空间中的数据,变量就是指代这个存储空间!空间位置是确定的,但是里面放置什么值不确定!
帅飞
2019/01/22
2.3K0
Python中的布尔类型
布尔类型还可以与其他数据类型进行逻辑运算,Python规定:0、空字符串、None为False,其他数值和非空字符串为True。
py3study
2020/01/09
1.7K0
Java中Get和Post的使用
项目地址:https://github.com/Snowstorm0/learn-get-post
代码的路
2022/08/23
9380
Java中Get和Post的使用
Python中的全局变量操作
http://blog.csdn.net/vipygd/article/details/7797778
bear_fish
2018/09/20
3.1K0
Python中的布尔类型以及布尔值介绍
布尔类型是一种逻辑类型,它只有两个取值:True(真)和False(假)。在Python中,True和False是内置的布尔类型常量,用于表示真和假的状态。
小博测试成长之路
2023/09/01
9200
Python中的布尔类型以及布尔值介绍
【Python】布尔类型 ( 布尔类型变量 | 比较运算符 )
Python 中的 布尔类型 ( bool ) 用于 逻辑判断 , 布尔类型 是 数字类型 ( Number ) 的一种 , 其有两种 字面量 取值 :
韩曙亮
2023/10/11
5080
【Python】布尔类型 ( 布尔类型变量 | 比较运算符 )
java中的常量与变量
常量的分类: 1.字符串常量:凡是用双引号引起来的部分,叫做字符串常量。例如:“abc”、“Hello”、“123”。 2.整数常量:直接写上数字,没有小数点。例如:100,200,0,-250。 3.浮点数常量:直接写上的数字,有小数点。例如:2.5、-3.14、0.0。 4.字符常量:凡是用单引号引起来的单个字符,就是字符常量。例如:‘A’、‘b’、‘9’、‘中’。 5.布尔常量:只有两种取值。true、false。 6.空常量:null。代表没有任何数据。
用户7886150
2021/04/29
1K0
Java中的域与变量
Java中的Field译为“字段”,也译为“域”,Field和成员变量(Member Variable)是相同的。所以域是变量中的一种。
WindCoder
2018/09/19
3.6K1
Java 中变量的作用域
变量的作用域是一个程序的重要组成部分。因为它决定了某个时候每个地方某个变量是否可访问。与 C/C++ 一样。静态语言的作用域在编译期就是确定的。而且独立于函数调用堆栈。
技术从心
2019/08/06
1.9K0
Java 中变量的作用域
java中final变量的用法
final变量的数值不能在初始化之后进行改变(你希望a=3,有很多用到a的场合, 你当然不能在程序中就用3来代替a)。
马克java社区
2021/03/04
6330
java中final变量的用法
Python 中的布尔值
这是因为在输出的时候,判断 a or 'world' ,当 a 为 True 的时候,会输出 a ,同样的道理,当 b = '' 的时候,也就是 b 为 False, 这个时候会输出后面为真的内容。也就是 'world' 。
zucchiniy
2019/10/30
1.7K0
【说站】java volatile变量的并发操作
java volatile变量的并发操作 1、线程编写volatile变量的过程 (1)在线程工作内存中更改volatile变量复印件的值。 (2)将变更后的复印值从工作内存更新为主内存。 2、线程读取volatile变量的过程 从主内存中读取volatile变量的最新值,然后进入线程工作内存。 从工作内存中读取volatile变量的复印件。 但是,如果多个线程同时更新更新的变量值,则可能得到的值不是预期的结果 以上就是java volatile变量的并发操作,希望对大家有所帮助。
很酷的站长
2022/11/23
1680
【说站】java volatile变量的并发操作
java(5)——数据类型中的字符型和布尔类型
char在内存中占两个字节,字符型用单引号括起来,并且里面只能写一个单字符,空格也只能打一个。
gzq大数据
2020/11/11
6810
java(5)——数据类型中的字符型和布尔类型
Java 菜鸟入门 | Java中的静态变量、实例变量、局部变量和成员变量
学习 Java 的过程中,一开始很容易被这些各种变量绕晕,这篇博客主要介绍了这几种变量之间的关系和区别。
村雨遥
2022/11/30
1.5K0
java中的JSON操作
JSON:JavaScript 对象表示法(JavaScript Object Notation) JSON是存储和交换文本信息的语法。
一点儿也不潇洒
2018/08/07
1.8K0
java中的IO操作
使用FileReader读取 用来读取字符文件的便捷类。此类的构造方法假定默认字符编码和默认字节缓冲区大小都是适当的。要自己指定这些值,可以先在 FileInputStream上构造一个 InputStreamReader。 FileReader 用于读取字符流。要读取原始字节流,请考虑使用 FileInputStream。
爱撒谎的男孩
2019/12/30
7350
java中的局部变量和全局变量哪个优先_java中成员变量是全局变量吗
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/171760.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/24
1.2K0
Java 中 Future 的 get 方法超时会怎样?
很多 Java 工程师在准备面试时,会刷很多八股文,线程和线程池这一块通常会准备线程的状态、线程的创建方式,Executors 里面的一些工厂方法和为什么不推荐使用这些工厂方法,ThreadPoolExecutor 构造方法的一些参数和执行过程等。
明明如月学长
2022/06/15
4.1K0
Java 中 Future 的 get 方法超时会怎样?

相似问题

对布尔变量的操作

30

Java和和或操作员不工作

36

Java布尔|=操作符

52

在JAVA中布尔对象和布尔变量问题

234

Java中的两个布尔变量

70
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

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