Java校驗是否為連續(xù)的區(qū)間問題
Java校驗是否為連續(xù)的區(qū)間
工作中遇到需要校驗是否為連續(xù)
給出示例
| 0 | 100 |
| 100 | 600 |
| 600 | -1 |
從0到正無窮的連續(xù)區(qū)間。
使用-1代表無窮大
可以考慮使用二維數(shù)組array來存放數(shù)據(jù),同樣使用二維數(shù)組比較數(shù)據(jù)是最方便的。
可以找到規(guī)則
- array[0][0]=0,第一個數(shù)據(jù)總是等于0
- array[0][1]=array[1][0]
- array[1][1]=array[2][0],從第二個數(shù)據(jù)開始,等于下一個的第一個數(shù)據(jù),以此類推
- array[2][1]=-1,最后一個總是等于-1(正無窮大)

通過以上分析
可以使用二維數(shù)組來校驗是否為連續(xù)的區(qū)間
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) {
// 創(chuàng)建一個二維數(shù)組
String a[][] = {{"0", "800000"}, {"800000", "1600000.2"}, {"1600000.2", "-1"}};
if (!"0".equals(a[0][0])) {
System.out.println("返回錯誤信息:不是以0開頭,該區(qū)間為不連續(xù)區(qū)間");
}
if (!"-1".equals(a[a.length - 1][a[0].length - 1])) {
System.out.println("返回錯誤信息:不是以正無窮結(jié)尾,該區(qū)間為不連續(xù)區(qū)間");
}
for (int k = 0; k < a.length - 1; k++) {
if (!StringUtils.equals(a[k][1], a[k + 1][0])) {
System.out.println("返回錯誤信息:該區(qū)間為不連續(xù)區(qū)間");
}
}
}
}總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
MyBatis-Puls插入或修改時某些字段自動填充操作示例
這篇文章主要為大家介紹了MyBatis-Puls插入或修改時某些字段自動填充操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12
Java從內(nèi)存角度帶你理解數(shù)組名實質(zhì)是個地址的論述
這篇文章主要介紹了Java如何從內(nèi)存解析的角度理解“數(shù)組名實質(zhì)是一個地址”,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習吧2022-09-09
Java 數(shù)據(jù)結(jié)構(gòu)之堆的概念與應(yīng)用
堆是一顆完全二叉樹,在這棵樹中,所有父節(jié)點都滿足大于等于其子節(jié)點的堆叫大根堆,所有父節(jié)點都滿足小于等于其子節(jié)點的堆叫小根堆,堆雖然是一顆樹,但是通常存放在一個數(shù)組中,父節(jié)點和孩子節(jié)點的父子關(guān)系通過數(shù)組下標來確定2021-10-10
Java編程實現(xiàn)深度優(yōu)先遍歷與連通分量代碼示例
這篇文章主要介紹了Java編程實現(xiàn)深度優(yōu)先遍歷與連通分量代碼示例,2017-11-11
springboot Rabbit MQ topic 配置文件綁定隊列和交換機的
本文詳細講解了在SpringBoot中使用RabbitMQ進行隊列與交換機的綁定方法,包括創(chuàng)建交換機、隊列和綁定它們的步驟,以及如何發(fā)送和接收消息,適用于開發(fā)高并發(fā)系統(tǒng),如秒殺系統(tǒng)等2024-09-09

