我正在尝试创建一个2D ArrayList并为其添加值。出于某种原因,我不断获得NoSuchElementException
。
以下是我要解决的问题:https://www.hackerrank.com/challenges/java-arraylist
import java.io.*;
import java.util.*;
import java.text.*;
import java.math.*;
import java.util.regex.*;
public class Solution {
public static void main(String[] args) {
/* Enter your code here. Read input from STDIN. Print output to STDOUT. Your class should be named Solution. */
Scanner input = new Scanner(System.in);
int TestCases = input.nextInt();
ArrayList<ArrayList<Integer>> listOfLists = new ArrayList<ArrayList<Integer>>();
List<ArrayList<Integer>> Sdarraylist = new ArrayList<ArrayList<Integer>>();
//ArrayList<ArrayList<String>> 2darraylist = new ArrayList<>();
//ArrayList<String> 1darraylist=new ArrayList<>();
for(int i=0;i<TestCases;i++){
ArrayList<Integer> Fdarraylist=new ArrayList<Integer>();
//size of Arraylist
int NumbersOnCurrentLine = input.nextInt();
for(int j=0;i<NumbersOnCurrentLine;j++){
//add numbers on the current line to the list
Fdarraylist.add(input.nextInt());
}
Sdarraylist.add(Fdarraylist);
}
// data.add(new ArrayList<String>());
//data.get(0).add("String");
}
}
答案 0 :(得分:0)
当您尝试从输入读取但没有可用输入时,会发生该异常。一种解决方法是使用hasNextInt()方法来确保可用的可读输入。 前)
if (input.hasNextInt()) {
Fdarraylist.add(input.nextInt());
}
这可能是输入的结果,说当前行有三个数字,实际上只有两个。
1
3 1 4 <= would cause exception.