Java的。试图将legnth 4数组拆分为索引(0,1)(1,2)(2,3)的数组

时间:2017-03-24 04:38:42

标签: java arrays eclipse

我的主要方法已经完整且正确。在主要的“isEverywhere”被调用,这就是我想要完成的。我需要“isEverywhere”将数组分成3个子数组,例如arr1 {1,2,1,3}需要{1,2} {2,1} {1,3}。然后我需要一些东西,我相信一个循环将遍历每个数组并搜索1.如果子数组中有一个1,它应该打印为true,如果没有,则应该打印false,这只会是ARR3。

public class TinyCode3 {
    public boolean isEverywhere(int[] nums, int value) {
      boolean b = true;
      // YOUR CODE HERE

  public static void main(String [] args) {
        TinyCode3 tc = new TinyCode3();
        int val = 1;
    int [] arr1 = {1,2,1,3};
    boolean answer = tc.isEverywhere(arr1,val);
        System.out.println("Expected true, got " + answer);

        int []arr2 = {2,1,2,1};
        answer = tc.isEverywhere(arr2,val);
        System.out.println("Expected true, got " + answer);

       int [] arr3 = {3,1,2,2};
       answer = tc.isEverywhere(arr3,val);
       System.out.println("Expected false, got " + answer);
   }
}

1 个答案:

答案 0 :(得分:0)

也许是这样的:

public boolean isEverywhere(int[] nums, int value) {

    for (int i = 0; i < nums.length - 1; i++) {
        if (nums[i] != value && nums[i + 1] != value) {
            return false;
        }
    }

    return true;
}

由于每个子数组由i和i + 1组成(即当前数字和后面的数字),我使用for循环检查每对{i,i + 1},和只要两者都不包含所需的值

,就会返回false