首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java整数循环迭代速记

Java整数循环迭代速记
EN

Stack Overflow用户
提问于 2016-01-31 21:39:05
回答 4查看 931关注 0票数 16

在编码时,我发现自己经常做以下事情:

代码语言:javascript
复制
corner++; 
if(corner == 4) corner = 0;

有没有在一行中做这件事?

在这个例子中,角点应该是0,1,2,3,0,1,2,3,0....

EN

回答 4

Stack Overflow用户

发布于 2016-01-31 22:18:07

您可以使用以下简短的可读行(Demo):

代码语言:javascript
复制
corner = (corner + 1) % 4;

或者,甚至稍微短一点(Demo):

代码语言:javascript
复制
corner = ++corner % 4;
票数 31
EN

Stack Overflow用户

发布于 2016-01-31 21:40:38

使用余数。只有两行,但很干净。

代码语言:javascript
复制
corner++;
corner %= 4;
票数 8
EN

Stack Overflow用户

发布于 2016-01-31 21:42:33

您可以这样做:

代码语言:javascript
复制
corner = ++corner == 4 ? 0 : corner;

这将使您有可能在corner == 4测试未通过的情况下将其他内容赋给corner变量。

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

https://stackoverflow.com/questions/35114451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档