gpt4 book ai didi

java - 这两者之间的区别

转载 作者:行者123 更新时间:2023-12-01 12:30:36 25 4
gpt4 key购买 nike

我试图解决 spoj 上的问题,但我的答案是不接受给出错误的答案,我想知道这两段代码之间的区别。

Spoj 接受此内容

public class Test {
public static void main(String[] args) throws java.lang.Exception {
java.io.BufferedReader r = new java.io.BufferedReader(
new java.io.InputStreamReader(System.in));
String s;
while (!(s = r.readLine()).startsWith("42"))
System.out.println(s);
}
}

但 Spoj 不接受这一点

 class Test {
public static void main(String[] args) throws java.io.IOException {
new Test().universe();
}

public void universe() throws java.io.IOException {
System.out.println("Enter Number");
java.util.Scanner scan = new java.util.Scanner(System.in);
String input;
while (!(input = scan.next()).startsWith("42")){
System.out.println(input);
}
scan.close();

}

}

问题出在这里http://www.spoj.com/problems/TEST/

最佳答案

第一个片段逐行读取文件,而另一个片段则逐个 token 读取文件。如果每行有多个标记,结果可能会有所不同。

最后,这两个代码都冒着读取文件而不检查是否还有内容需要读取的风险。在第一种情况下,它可能抛出 NullPointerException,在第二种情况下,它可能抛出 NoSuchElementException

关于java - 这两者之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25950303/

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