有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java布尔解释

我想做一个方法来检查数组是否被排序,数组的开头是最小的整数,结尾是最大的整数。我给数组序列命名

public boolean isSorted(){
   int i = 1;
   while(i < sequence.length && sequence[i] >= sequence[i-1]){
      i++;
   }
   return i >= sequence.length;
}

我是在一个朋友的帮助下得到这段代码的,但我并不完全理解它。返回的布尔值是多少?据我所知,在其他帖子上阅读,当我>;=序列长 考虑到当时的条件,我会变得更大或和序列一样。仅当数组已排序时才显示长度

我说得对吗?抱歉,如果我的格式很糟糕,我还是个新手


共 (2) 个答案

  1. # 1 楼答案

    一旦发现不匹配(一个位置证明数组没有排序,因为邻域按所需顺序排序),循环似乎就会中断。如果循环没有中断而是终止,则不匹配的位置会指向最后一个字符之后,这意味着不存在不匹配

  2. # 2 楼答案

    你说得对。循环检查阵列中的每对相邻元素。如果每个元素都大于前面的元素,则必须对其进行排序。如果任何一对不满足条件,循环立即中断,留下一个小于sequence.lengthi,因此条件i >= sequence.length告诉您整个数组已成功处理,必须正确排序