gpt4 book ai didi

java - 获得一系列结果的最佳方法是什么?

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

我有一个程序可以从命令行运行,使用 -R 指定要返回的结果范围。 -R 采用 n:n 形式的参数。

好像 n:n 可能是 1-5 或 10000-500000,获取 : 两边值的最佳方法是什么?

-R 后的参数传递给方法后,我开始执行以下操作:

private int[] parseRangeResults(String range) {
int[] rangeResults = new int[2];

if(!(range.contains(":"))) {
throw new Exception("Invalid range syntax");
}

String[] numbers = range.split(":")
rangeResults[0] = Integer.parseInt(numbers[0]);
rangeResults[1] = Integer.parseInt(numbers[2]);

return rangeResults;
}

但我认为如果有人输入特殊字符或 1000:::::5000,这会崩溃,那么处理这个问题的最佳方法是什么?

最佳答案

检查输入的最佳方法是使用正则表达式,如果此 regex("\\d*-\\d*") 匹配,则您的输出是正确的。这是您的函数的代码

    String regex = "(\\d*):(\\d*)";
Pattern checkInput = Pattern.compile(regex);

Matcher matcherInput = checkInput.matcher(range);

if(matcherInput.matches()){
rangeResults[1] = Integer.parseInt(matcherInput.group(1));
rangeResults[2] = Integer.parseInt(matcherInput.group(2));



}

关于java - 获得一系列结果的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17749256/

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