Java 如何设置将n/a与int一起使用的异常
我对Java相当陌生。 我试图读取一个文本文件,对于一个整数值,输入可能是文件中的n/a。现在,我必须把它进一步传递给一个列表,它将被排序。这个n/a元素将使用比较器进行比较。你能帮我一点忙吗?非常感谢 更新1: 想要添加代码。正如你在上面看到的。其中一个标记可以是值n/a,该值被进一步传递给构造函数,然后添加到名为data的列表中。我想知道如何解决这个问题Java 如何设置将n/a与int一起使用的异常,java,list,comparator,Java,List,Comparator,我对Java相当陌生。 我试图读取一个文本文件,对于一个整数值,输入可能是文件中的n/a。现在,我必须把它进一步传递给一个列表,它将被排序。这个n/a元素将使用比较器进行比较。你能帮我一点忙吗?非常感谢 更新1: 想要添加代码。正如你在上面看到的。其中一个标记可以是值n/a,该值被进一步传递给构造函数,然后添加到名为data的列表中。我想知道如何解决这个问题 while (sc.hasNext()) { String l = sc.next().trim(); S
while (sc.hasNext()) {
String l = sc.next().trim();
String[] tokens = l.split(":");
String n = tokens[0];
String img = tokens[1];
try{
Integer he = Integer.parseInt(tokens[2]);
Integer a = Integer.parseInt(tokens[3]);
Integer ho = Integer.parseInt(tokens[4]);
Integer k = Integer.parseInt(tokens[5]);
Integer t = Integer.parseInt(tokens[6]);
Integer w = Integer.parseInt(tokens[7]);
ImageIcon im = new ImageIcon(imagePath + File.separator + img);
SpaceShip ss = new SpaceShip(n, im, he, a, ho, k, t, w);
data.add(ss);
}
如果您的意图是仅创建“SpaceShip”的实例,并在您正在解析的字符串不包含任何“n/a”值的情况下将其添加到“数据”列表中,那么在尝试创建SpaceShip之前,您可以尝试检查您的令牌以查看它是否包含任何“n/a”值
if (Arrays.asList(tokens).contains("n/a")) {
throw new Exception("Can't create SpaceShip with n/a values");
// you could just continue here if you want to ignore lines with n/a
// values but still create SpaceShips if you have valid values
// continue;
}
您试过了吗?是的,我试过使用try&catch,但是我仍然无法传递数据,当以整数形式被列表读取时,带n/a的元素被拒绝。您如何解析该文件?您将输入传递到哪种类型的列表?正在进行哪些转换?让我们看一些代码。然后请分享您添加的代码。请现在回复