如果在Java拆分中找不到字符串怎么办
该程序接受32或5等自然语言数字。如果在Java拆分中找不到字符串怎么办,java,string,split,Java,String,Split,该程序接受32或5等自然语言数字。 那么如果输入5,我的incomingNumbers数组中会有什么 您将获得一个大小为1的数组,其中包含原始值: String incomingNumbers[ ] = writtenNumber.split("\\-"); 您可以在以下程序中看到这一点: Input Output ----- ------ thirty-two {"thirty", "two"} five {"five"} 当你尝试它的时候发
那么如果输入5,我的incomingNumbers数组中会有什么
您将获得一个大小为1的数组,其中包含原始值:
String incomingNumbers[ ] = writtenNumber.split("\\-");
您可以在以下程序中看到这一点:
Input Output
----- ------
thirty-two {"thirty", "two"}
five {"five"}
当你尝试它的时候发生了什么?@donroby它按照它应该的方式把它分成三十、二和五。但是,当我试图使用它们访问hashmap中的键时,我使用的异常告诉我它不能使用它们。我将使用下面的注释框向您展示一些代码;静态{numberMap.put(新字符串(“一”),新整数(1));etc字符串incomingNumbers[]=number.split(\\-”,0);int被乘数=0;if(numberMap.containsKey(incomingNumbers[0]){被乘数+=(整数)numberMap.get(incomingNumbers[0]);else{throw new Exception();}@don roby实际上是带“-”的比如三十二个很好,但不是五个、六个或十九个。顺便问一句,有人知道为什么我的问题被分配了-4吗?@ArmandoMoncada似乎你已经写了你没有尝试过。下次使用Eclipse和调试器查看内部arrays@cl-但是有时候你不想尝试并拥有即时的技术
class Test {
static void checkResult (String input) {
String [] arr = input.split ("\\-");
System.out.println ("Input : '" + input + "'");
System.out.println (" Size: " + arr.length);
for (int i = 0; i < arr.length; i++)
System.out.println (" Val : '" + arr[i] + "'");
System.out.println();
}
public static void main(String[] args) {
checkResult ("thirty-two");
checkResult ("five");
}
}
Input : 'thirty-two'
Size: 2
Val : 'thirty'
Val : 'two'
Input : 'five'
Size: 1
Val : 'five'