1. 程式人生 > 其它 >Java 校驗是否為連續的區間

Java 校驗是否為連續的區間

工作中遇到需要校驗是否為連續

給出示例

0 100
100 600
600

-1

從0到正無窮的連續區間。

使用-1代表無窮大

可以考慮使用二維陣列array來存放資料,同樣使用二維陣列比較資料是最方便的。

可以找到規則

  1. array[0][0]=0,第一個資料總是等於0
  2. array[0][1]=array[1][0]
  3. array[1][1]=array[2][0],從第二個資料開始,等於下一個的第一個資料,以此類推
  4. array[2][1]=-1,最後一個總是等於-1(正無窮大)

通過以上分析,可以使用二維陣列來校驗是否為連續的區間

package javatest;

import org.apache.commons.lang.StringUtils;

import java.util.List;

/**
 * @version V1.0
 * @Description: 測試
 * @author: niaobulashi
 * @date: 2020/09/23
 */
public class Test {
    public static void main(String[] args) {
        // 建立一個二維陣列
        String a[][] = {{"0", "800000"}, {"800000", "1600000.2"}, {"1600000.2", "-1"}};
        if (!"0".equals(a[0][0])) {
            System.out.println("返回錯誤資訊:不是以0開頭,該區間為不連續區間");
        }
        if (!"-1".equals(a[a.length - 1][a[0].length - 1])) {
            System.out.println("返回錯誤資訊:不是以正無窮結尾,該區間為不連續區間");
        }
        for (int k = 0; k < a.length - 1; k++) {
            if (!StringUtils.equals(a[k][1], a[k + 1][0])) {
                System.out.println("返回錯誤資訊:該區間為不連續區間");
            }
        }
    }
}