Toist_hack it 2021-12-07 16:35 采纳率: 57.1%
浏览 48
已结题

只要告诉我下列代码的是怎么得到结果的步骤就行

public class Elements {

  boolean[] array1 = {false,false,false};

  int count = 0;

 void set(boolean[] arr, int x){

        arr[x] = true;

        count++;

        System.out.println(count);

  }

void func(){

  if(array1[0] && (

     array1[++count - 2] || array1 [count - 1]))

  count++;

  System.out.println("count = " + count);

}

public static void main(String[] args){

  Elements EObject1 = new Elements();

  EObject1.set(EObject1.array1, 2);

  EObject1.set(EObject1.array1, 2);

  EObject1.set(EObject1.array1, 2);

   EObject1.func();

}

}

  • 写回答

3条回答 默认 最新

  • 南七灵 2021-12-07 16:55
    关注

    EObject1.set(EObject1.array1, 2);输出1
    EObject1.set(EObject1.array1, 2);输出2
    EObject1.set(EObject1.array1, 2);输出3
    这三句结束后,array1变成了{false,false,true},count = 3
    调用EObject1.func();由于array1[0]为false
    array1[0] && (array1[++count - 2] || array1[count - 1])为false不进入if语句
    count仍然是3
    输出"count = 3"

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月15日
  • 已采纳回答 12月7日
  • 赞助了问题酬金 12月7日
  • 创建了问题 12月7日

悬赏问题

  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
  • ¥15 相敏解调 matlab
  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图