我想用另一个类的main方法中的for循环接受多个输入来初始化另一个类中的构造函数。但输出仅来自一个输入。请解决我的问题。
s1.java
import java.util.*;
public class s1 {
public static void main(String args[]) {
String name="";int roll=0;
Scanner sc=new Scanner(System.in);
for(int i=0;i<2;i++) {
name=sc.nextLine();
roll=sc.nextInt();
s2 sample=new s2(name,roll);
sample.display();
}
}
}
s2.java
public class s2 {
String name="";int roll=0;
s2(String name,int roll) {
this.name=name;
this.roll=roll;
}
void display() {
System.out.println(name+" "+roll);
}
}
答案 0 :(得分:1)
如果要多于1次,请更改条件i<2
,该条件将循环限制为一次迭代。
例如更改为i<10
以获得9倍(10-1)输入/输出的uoto
添加条件
if(sc.hasNextInt()) {
roll=sc.nextInt();
s2 sample=new s2(name,roll);
sample.display();
}