import javax.swing.*;
import java.util.*;public class Infinity {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("输入你的名字:");
String nameA = in.next();
System.out.println(nameA);
//第二种输入
String nameB = JOptionPane.showInputDialog("输入你的名字:");
System.out.println(nameB);
}
}
为什么第二种输入无法正常执行下去,而将两段顺序换一下,就可以正常执行?
import javax.swing.*;
import java.util.*;public class Infinity {
public static void main(String[] args) {
String nameB = JOptionPane.showInputDialog("输入你的名字:");
System.out.println(nameB);
}
}
import java.util.*; public class Infinity {
public static void main(String[] args) {
//这样可以正常执行
String nameB = JOptionPane.showInputDialog("输入你的名字:");
System.out.println(nameB); Scanner in = new Scanner(System.in);
System.out.println("输入你的名字:");
String nameA = in.next();
System.out.println(nameA);
}
}
public static void main(String[] args) {
String a = "aa";
Scanner in = new Scanner(a);
System.out.println("1:");
String nameA = in.nextLine();
in.close();
System.out.println(nameA); String nameB = JOptionPane.showInputDialog("2:");
System.out.println(nameB); }
就运行下去了 用system.in的话貌似我加了in.close(); 它还是出于可以输入状态一直在等待输入。但它确实是close了,因为执行其他方法它就报Scanner close。但close了为什么还出入等待输入状态呢?这我就不知道了。HOHO。