gpt4 book ai didi

java - 线程 java.util.NoSuchElementExcpetion 中的异常 java

转载 作者:行者123 更新时间:2023-12-02 04:35:53 24 4
gpt4 key购买 nike

我有一个线程必须验证字符串是否等于错误之一。如果是,他设置一个flag=1。我的问题是线程永远不会进入 if 并且他给出了这个异常:java.util.NoSuchElementExcpetion:没有找到行。这是我的代码的一部分:

    String can = String.valueOf(jComboBox1.getSelectedItem());
String pad = String.valueOf(jComboBox2.getSelectedItem());

final String err = String.valueOf("WARNING: NO PAD nodes found on channel "+can+" . Exit!");
final CountDownLatch latch = new CountDownLatch(1);
final int[] flag = new int[1];
flag[0]=0;

try {
if(pathFile!=null){
p = Runtime.getRuntime().exec("testpad -i -c"+can+" -n"+pad+" "+pathFile);
final InputStream inStream = p.getInputStream();
Thread uiThread = new Thread("UIHandler") {
@Override
public void run() {
InputStreamReader reader = new InputStreamReader(inStream);
Scanner scan = new Scanner(reader);

while (scan.hasNextLine()) {
System.out.println(scan.nextLine());

if(err==scan.nextLine()){
flag[0] = 1;

}
latch.countDown();

}
}
};
uiThread.start();
latch.await();

if(flag[0]!=1){
this.dispose();
new menu().setVisible(true);
}
else{
Exception e = new Exception("Error!");
Component f = null;
JOptionPane.showMessageDialog(f, err, e.getMessage(), JOptionPane.WARNING_MESSAGE);
}

}
else{
Exception e = new Exception("Error!");
Component f = null;
JOptionPane.showMessageDialog(f, "Choose a configuration file", e.getMessage(), JOptionPane.WARNING_MESSAGE);
}

} catch (IOException ex) {
Logger.getLogger(inizio.class.getName()).log(Level.SEVERE, null, ex);
} catch (InterruptedException ex) {
Logger.getLogger(inizio.class.getName()).log(Level.SEVERE, null, ex);
}

我是java新手,我已经尝试了我所知道的一切。

最佳答案

当你这样做时:

System.out.println(scan.nextLine());

if(err==scan.nextLine()){

您的代码读取两行而不是一行。

String s = scan.nextLine()
System.out.println(s);

if(err.equals(s){

应该工作得更好。

关于java - 线程 java.util.NoSuchElementExcpetion 中的异常 java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30759546/

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