gpt4 book ai didi

java - 为此我需要单个循环还是嵌套循环?

转载 作者:行者123 更新时间:2023-11-29 08:32:37 25 4
gpt4 key购买 nike

假设我有一个数组和一个 boolean 方法。如果所有正数出现在所有非正数(包括 0)之前,此 boolean 方法将返回 true。否则,它将返回一个错误值。第一个数组 newArrayTrue 将返回一个真值,因为所有正数都出现在所有非正数和 0 之前。而在 newArrayFalse 中,它将返回一个假值,因为 0 出现在 5 之前,而 5 是正数。

int[] newArrayTrue = {3,1,-4,0,-5};
int[] newArrayFalse = {3,1,-4,0,5};

public static boolean isPositiveFirst(int[] numbers) {

for (int i=0; i<numbers.length; i++) {
for (int j=i+1; i<numbers.length; i++) {
if (numbers[i] > 0 && (numbers[i+1] < 0 || numbers[i+1] == 0)) {
return true;
}
}
}
return false;
}
}

我是否需要在 boolean 方法中嵌套 for 循环,或者它可以在一个 for 循环中完成?我需要我的条件帮助,因为我真的不明白它有什么问题。感谢任何帮助。

最佳答案

这应该足够了:

public static boolean isPositiveFirst(int[] numbers) {
for(int i = 1; i < numbers.length; i++) {
if(numbers[i] > 0 && numbers[i-1] <= 0) {
return false;
}
}
return true;
}

也归功于@Ryan,因为他删除了我的代码所基于的他的答案。

关于java - 为此我需要单个循环还是嵌套循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46712824/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com