Java 如何检查其他元素是否为偶数
我的代码只适用于第一个索引,它只返回Java 如何检查其他元素是否为偶数,java,algorithm,Java,Algorithm,我的代码只适用于第一个索引,它只返回8true 例如,如果我将第一个索引(nums[0])更改为9,它将跳过3,并打印4 true 我如何使它检查其余的元素(即其他所有元素),从而使它适用于其他所有索引 public static boolean solution(int[] nums) { for(int i = 0; i < nums.length; i++) { if(i % 2 == 0 && nums[i] % 2 == 0) {
8true
例如,如果我将第一个索引(nums[0]
)更改为9,它将跳过3
,并打印4 true
我如何使它检查其余的元素(即其他所有元素),从而使它适用于其他所有索引
public static boolean solution(int[] nums) {
for(int i = 0; i < nums.length; i++) {
if(i % 2 == 0 && nums[i] % 2 == 0) {
System.out.print(nums[i] + " ");
return true;
}
}
return false;
}
public static void main(String args[]) {
int[] nums = {8,3,4,1,6,5,12,1};
System.out.println(solution(nums));
}
公共静态布尔解决方案(int[]nums){
对于(int i=0;i
我想你要做的是检查所有的偶数索引,看看是否有偶数,你可以这样做:
public static boolean solution(int[] nums) {
for(int i = 0; i < nums.length; i++) {
if(i % 2 == 0 && nums[i] % 2 != 0) {
System.out.print(nums[i] + " ");
return false;
}
}
return true;
}
公共静态布尔解决方案(int[]nums){
对于(int i=0;i
我想你要做的是检查所有的偶数索引,看看是否有偶数,你可以这样做:
public static boolean solution(int[] nums) {
for(int i = 0; i < nums.length; i++) {
if(i % 2 == 0 && nums[i] % 2 != 0) {
System.out.print(nums[i] + " ");
return false;
}
}
return true;
}
公共静态布尔解决方案(int[]nums){
对于(int i=0;i
您的代码中有一个(逻辑)错误,还有一个可以改进的部分:
public static boolean solution(int[] nums) {
for(int i = 0; i < nums.length; i++) {
if(i % 2 == 0 && nums[i] % 2 == 0) {
System.out.print(nums[i] + " ");
return true;
}
}
return false;
}
公共静态布尔解决方案(int[]nums){
对于(int i=0;i
在当前代码中,第一次有效测试返回true,这意味着不测试以下情况。更改代码,以便对所有代码进行测试,并且只有在遇到无效值时才在流期间返回
public static boolean solution(int[] nums) {
for(int i = 0; i < nums.length; i++) {
if(i % 2 == 0 && nums[i] % 2 != 0) {
System.out.print(nums[i] + " ");
return false;
}
}
return true;
}
公共静态布尔解决方案(int[]nums){
对于(int i=0;i
您可以改进的第二件事是,不要在每次迭代中检查偶数索引。只需将i值增加2而不是1:
public static boolean solution(int[] nums) {
for(int i = 0; i < nums.length; i+=2) {
if( nums[i] % 2 != 0) {
System.out.print(nums[i] + " ");
return false;
}
}
return true;
}
公共静态布尔解决方案(int[]nums){
对于(int i=0;i
您的代码中有一个(逻辑)错误,还有一个可以改进的部分:
public static boolean solution(int[] nums) {
for(int i = 0; i < nums.length; i++) {
if(i % 2 == 0 && nums[i] % 2 == 0) {
System.out.print(nums[i] + " ");
return true;
}
}
return false;
}
公共静态布尔解决方案(int[]nums){
对于(int i=0;i
在当前代码中,第一次有效测试返回true,这意味着不测试以下情况。更改代码,以便对所有代码进行测试,并且只有在遇到无效值时才在流期间返回
public static boolean solution(int[] nums) {
for(int i = 0; i < nums.length; i++) {
if(i % 2 == 0 && nums[i] % 2 != 0) {
System.out.print(nums[i] + " ");
return false;
}
}
return true;
}
公共静态布尔解决方案(int[]nums){
对于(int i=0;i
您可以改进的第二件事是,不要在每次迭代中检查偶数索引。只需将i值增加2而不是1:
public static boolean solution(int[] nums) {
for(int i = 0; i < nums.length; i+=2) {
if( nums[i] % 2 != 0) {
System.out.print(nums[i] + " ");
return false;
}
}
return true;
}
公共静态布尔解决方案(int[]nums){
对于(int i=0;i
更改for循环中的增强。不要增加一个,每次迭代增加两个。另外:不要在for循环中返回true。之后才返回true。return false如果遇到一个值,使得所有这些值都不可能被忽略,那么您将停止检查所有元素,因为您在循环中遇到了return
。尝试重新构造该结构。如果预期输出为8 4 6 12 true
或8 true 4 true 6 true 12 true
,请更改for循环中的增广。不要增加一个,每次迭代增加两个。另外:不要在for循环中返回true。之后才返回true。return false如果遇到一个值,使得所有这些值都不可能被忽略,那么您将停止检查所有元素,因为您在循环中遇到了return
。尝试重新构造它。预期输出是8 4 6 12 true
还是8 true 4 true 6 true 12 true
?