搜索
编程论坛
→
开发语言
→
『 JAVA论坛 』
→ 这个运行后为什么没有结果,求大神指点
标题:
这个运行后为什么没有结果,求大神指点
只看楼主
feihyhl
等 级:
新手上路
帖 子:3
专家分:0
注 册:2013-5-8
结帖率:
100%
楼主
已结贴
√
问题点数:20 回复次数:4
这个运行后为什么没有结果,求大神指点
public class Zuoye {
public static void main(String[] args){
for(int i=21;i==i%2;i=i/2){
int yu=i%2;
System.out.println(yu );
}
}
}
搜索更多相关主题的帖子:
public
2013-09-09 14:29
husiwen
等 级:
蜘蛛侠
威 望:
2
帖 子:227
专家分:1125
注 册:2010-5-23
第
2
楼
得分:10
21==21%2 返回false 跳出for了 你是要实现什么逻辑
2013-09-09 15:43
feihyhl
等 级:
新手上路
帖 子:3
专家分:0
注 册:2013-5-8
第
3
楼
得分:0
回复 2楼 husiwen
把那个数转换成二进制输出
2013-09-09 16:15
husiwen
等 级:
蜘蛛侠
威 望:
2
帖 子:227
专家分:1125
注 册:2010-5-23
第
4
楼
得分:10
回复 3楼 feihyhl
String result = Integer.toBinaryString(21);
如果你要自己 实现可以用 每次用掩码取最后一个数字出现 再拼成字符串
int a = 21;
String res = "";
while (a != 0) {
res = (a & 1) + "" + res;
a = a >> 1;
}
System.out.println(res);//输出:10101
再说明白点: a&1 相当于你的 a%2
a=a>>1 相当于你的 a=a/2;
[
本帖最后由 husiwen 于 2013-9-9 17:35 编辑
]
2013-09-09 17:21
feihyhl
等 级:
新手上路
帖 子:3
专家分:0
注 册:2013-5-8
第
5
楼
得分:0
回复 4楼 husiwen
谢谢你的耐心回答
2013-09-09 21:16
5
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-420330-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.051617 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved