Java 无效数据帮助我

Java 无效数据帮助我,java,Java,我正试图解析我的代码,以便将无效数据编辑为类似“data is invalid”的内容。我在使拆分器正常工作时遇到了问题 单词一个单词两个单词三个单词四个单词五个单词 有没有比将每个令牌排序到数组中更简单的方法。因此,在单词后面加上“-”的地方,我想知道如何更改它并显示类似“无效数据”的内容,只需围绕“-”进行拆分,因为数据就是这样被分离的。每当在数组中获得一个空格作为索引时,就知道数据不包含该数据。在检查数据是否为空白或数据是否与数字匹配时,请尝试此操作 while(read.hasNex

我正试图解析我的代码,以便将无效数据编辑为类似“data is invalid”的内容。我在使拆分器正常工作时遇到了问题

单词一个单词两个单词三个单词四个单词五个单词 有没有比将每个令牌排序到数组中更简单的方法。因此,在单词后面加上“-”的地方,我想知道如何更改它并显示类似“无效数据”的内容,只需围绕“-”进行拆分,因为数据就是这样被分离的。每当在数组中获得一个空格作为索引时,就知道数据不包含该数据。在检查数据是否为空白或数据是否与数字匹配时,请尝试此操作

  while(read.hasNextLine())
  {
      line = read.nextLine();
      String[] words = line.split("-");
      if(words.length == 5)
      {
          Title[counter] = words[0].matches("\\s+") ? "No Title" : words[0];
          Author[counter] = words[1].matches("\\s+") ? "No Author" : words[1];
          Price[counter] = !words[2].matches("\\d+") ? 0 : Integer.parseInt(words[2]);
          Publisher[counter] = words[3].matches("\\s+") ? "No Publisher" : words[3];
          ISBN[counter] = !words[4].matches("\\d+") ? 0 : Integer.parseInt(words[4]);
          System.out.println(Title[counter] + Author[counter] + Price[counter] + Publisher[counter] + ISBN[counter]);
          counter++;
      }
      else
      {
          System.out.println("Invalid Data format: " + line);
      }
  }

示例invalidvalid数据是-这是有效的还是无效的?你能重新解释什么应该被接受,什么不应该被接受吗?示例数据既无效又有效。所以第三行是有效的,但是第一行是无效的。所以如果它有一个
-
没有前导和尾随空格,它是无效的?是的,那是无效的。检查一下
单词的长度如何?另外,你到底想对无效数据做什么?嗨!谢谢你!这很有帮助,但是这给了我一个关于
“无价格”
“无ISBN”
部分的类型不匹配错误,有什么方法可以解决这个问题吗?如果你想让
“价格可能无效”
当价格无效时,您必须将price的数据类型更改为
String
I将其更改为将无效ISBN和price的默认值设置为0,因为它们是整数,很抱歉出现错误@HelpMe@HelpMe在编辑之前,你有一个像乔·布洛格斯这样的名字。这是有效的还是无效的?万一你用破折号或类似的方法分开,这部分可能会失败。