A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 官珺伟 高级黑马   /  2014-1-1 17:16  /  1177 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 官珺伟 于 2014-1-2 07:59 编辑

  1. <p> </p>
复制代码

6.写出程序结果。
class Demo
{
public static void main(String[] args)
{
  int x = 1;
  for(show('a'); show('b') && x<3; show('c'))
  {
   show('d');
   x++;
  }
}
public static boolean show(char ch)
{
  System.out.println(ch);
  return true;
}
}

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

8 个回复

倒序浏览
  会编译出错...for(true;条件;true)是不行的.
回复 使用道具 举报
结果是abdcbdc,调用一次show()方法会打印字母,返回1,看X值会循环2次,第一次循环是abdc,第二次是bdc,你把show看成1就行了
回复 使用道具 举报
结果是abdcbdcb,少个B,哈哈马虎了,分析方法就这样
回复 使用道具 举报
还有问题么
回复 使用道具 举报
像这样的题,你就按照常规的for循环走就行了打印结果是a
b
d
c
b
d
c
b
回复 使用道具 举报
a
b
d
c
b
d
c
b
for循环第一次的执行顺序是先执行show(a) show(b)如果这两个条件返回的是true则执行show(d)再执行show(c);第二次循环则跳过了show(a),直接判断show(b)与x<3的条件 执行show(d)..show(c)...以此类推
回复 使用道具 举报
结果abdcbdcb
回复 使用道具 举报
本帖最后由 肖银 于 2014-1-1 21:47 编辑

按for循环执行顺序
下面图中用数字标明了执行顺序

for循环执行顺序.png (49.98 KB, 下载次数: 29)

for循环执行顺序.png

评分

参与人数 1技术分 +1 收起 理由
乔兵 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马