gpt4 book ai didi

java - 两个代码有什么区别

转载 作者:太空宇宙 更新时间:2023-11-04 14:56:09 37 4
gpt4 key购买 nike

我正在尝试在 spoj 上提交第二个代码,但它给出了错误的答案,但第一个代码被接受,尽管我认为两个代码的逻辑是相同的。

public class Main {
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);
}
}

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
if (n != 42) {
System.out.println(n);
}
}
}

最佳答案

您的第二个代码中没有循环。使用以下输入数据尝试您的代码:

1
2
88
42
99

您的第二个代码将仅处理输入的第一行(即 1)。以下是您的代码的工作示例:http://ideone.com/Qr1q3N

例如,您可以通过以下方式引入循环:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n;
while ((n = Integer.parseInt(br.readLine())) != 42) {
System.out.println(n);
}
}
}

在这里您可以看到此代码的运行情况:http://ideone.com/z8H4fP

关于java - 两个代码有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23180177/

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