代码:
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
ArrayList<Book> bookList = new ArrayList<>();
Scanner scanner = new Scanner(System.in);
boolean flag = true;
while (flag) {
System.out.println("Title:");
String title = scanner.nextLine();
if (!title.isEmpty()) {
System.out.println("Pages:");
int pages = scanner.nextInt();
System.out.println("Publication year:");
int pub = scanner.nextInt();
Book info = new Book(title, pages, pub);
bookList.add(info);
} else if (title.isEmpty()) {
flag = false;
}
}
System.out.println("What informaiton will be printed?");
String choice = scanner.nextLine();
switch (choice) {
case "everything":
if (choice.equals("everything")) {
for (Book info : bookList) {
System.out.println(info.getTitle() + ", " + info.getPages() + " pages, " + info.getYear());
}
}
case "name": {
if (choice.equals("name")) {
for (Book infor : bookList) {
System.out.println(infor.getTitle());
}
}
}
}
}
我相信你要找的是Java中对扫描器及其方法的解释。对stackoverflow进行了一些搜索,帮助我找到了这一点。
此外,我发现新开发人员有时会忽略最明显的信息领域,即官方文档,这些文档对初学者总是有帮助的,因为一旦你能阅读它们,它们会让你的生活变得更容易。
为了补充我从提到的链接中借用的答案
nextLine()读取当前行的剩余部分,即使它为空。
nextInt()读取一个整数,但不读取转义序列“\n”。
next()读取当前行,但不读取“\n”。
我试图实现每秒循环一次的ScheduledExecutorService线程,但现在它只循环一次。 我的问题是如何设置它,使它周期性地循环,而不是一次迭代? 另外,如何将连接池传递给线程,以便每次迭代都可以查询数据库?任何帮助都非常感谢。
我需要12次外循环,每个外循环1次内循环 例如: 等 但现在我的内循环在第一次迭代的外循环上运行。 请帮助我如何使用for循环执行此操作。
我对python中双for循环的使用感到困惑,这是我的代码: 输出如下: 它只对外循环的第一个值执行内循环,为什么会发生这种情况?我怎样才能让它在第一个和第二个变量的所有组合上循环?
问题内容: 和别的: 两者都不起作用(强制关闭应用程序)。我可以尝试其他哪些选择? 问题答案: 您的代码失败,因为您在后台线程中执行睡眠,但是显示数据必须在UI线程中执行。 您必须从runOnUiThread(Runnable)运行displayData或定义处理程序并将消息发送给它。 例如:
问题内容: 在非常老的项目中修复错误期间,我遇到了奇怪的方法,它看起来像这样: 它会导致暂停时间,还是会因JVM优化而被忽略? 问题答案: JIT运行几次后将对其进行优化。JVM在第一次运行时,需要检查是否正在递增的值未在任何地方使用。
我创建了这个函数来计算我要测量的距离: 由于我不明白的原因,距离的值只返回一次。因此,如果我在forEach函数中抛出2个位置,并且在循环中使用console.log,我会看到所有的计算都是正确的。但如果我返回距离的值,则只返回一个值。 如何正确返回值? 我使用VueJS,其中'Distance toResponder'是一个计算属性来填充表: 因此函数应该返回每个响应者的距离。那么我需要如何调整