Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 标记化数组中的空格_Java_File Io - Fatal编程技术网

Java 标记化数组中的空格

Java 标记化数组中的空格,java,file-io,Java,File Io,我正在编写一个Java程序,它接受一个文本文件,在空白和上拆分它,然后通过Integer.parseInt()和Double.parseDouble()对数字进行操作 然而,每当我试图运行我的程序时,我都会得到一个NumberFormatException,因为我的程序显然是在为令牌拾取空白。下面是我的代码、文本文件和错误 代码: 错误消息: Exception in thread "main" java.lang.NumberFormatException: For input string:

我正在编写一个Java程序,它接受一个文本文件,在空白和
上拆分它,然后通过
Integer.parseInt()
Double.parseDouble()
对数字进行操作

然而,每当我试图运行我的程序时,我都会得到一个
NumberFormatException
,因为我的程序显然是在为令牌拾取空白。下面是我的代码、文本文件和错误

代码:

错误消息:

Exception in thread "main" java.lang.NumberFormatException: For input string: ""
    at java.lang.NumberFormatException.forInputString(Unknown Source)
    at java.lang.Integer.parseInt(Unknown Source)
    at java.lang.Integer.parseInt(Unknown Source)
    at csu.mcdonald.ASrch.main(ASrch.java:33)

我试图执行你的程序。我注意到,通过拆分变量“line”来获取字符串数组将产生一个数组

[1, 0, , , 1, 6, 2, 6, 3, 6]
这就是为什么要排队

edges.add(new Edge(Integer.parseInt(tokens[i]), 
                        Double.parseDouble(tokens[i + 1]))); 
正在引发异常

这里tokens[i]是一个空字符串,它将抛出一个NumberFormatException


请检查您的逻辑。

尝试用此代码替换以下代码,这样可以解决您的问题

拆分的输出是-
[1,0,1,6,2,6,3,6]

旧代码

 if(tokens[i + 2] == null || tokens[i] == ""))
if(tokens[i + 2] == null || tokens[i].equals(""))
新代码

 if(tokens[i + 2] == null || tokens[i] == ""))
if(tokens[i + 2] == null || tokens[i].equals(""))

您能给出导致此错误的行吗?什么是
状态
,以及类
边缘
?另外,
State
似乎是一个自定义类。对不起
states
是一个包含我将在程序中使用的状态列表的
HashMap
Edge
State
几乎是同一个类,只是有一些不同的变量。给出错误的行是
edges.add(newedge(Integer.parseInt(tokens[I]),Double.parseDouble(代币[i+1]));
@mynorka发布了我的答案,看看它是否对你有帮助我意识到了这一点,这就是我发布这个问题的原因。我对为什么会发生这种情况感到困惑。此外,我已经运行了我的程序好几次,但似乎找不到发生这种情况的原因。你能谈谈你的实际需求,以及你想要的类边缘和逻辑吗执行。这将帮助我解决你的问题