Java 如何使用Scanner类?
在下面的代码中,我得到了一个基于我自己定义的arraylist的输出Java 如何使用Scanner类?,java,arraylist,Java,Arraylist,在下面的代码中,我得到了一个基于我自己定义的arraylist的输出 import java.util.ArrayList; import java.util.Collections; import java.util.List; public class DinoMania { public static void main(String[] args) { List<Dinosaur> dinoList = new ArrayList<Dinosaur>(
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class DinoMania {
public static void main(String[] args) {
List<Dinosaur> dinoList = new ArrayList<Dinosaur>();
Dinosaur d1 = new Dinosaur(1970, 1985);
Dinosaur d2 = new Dinosaur(1980, 1981);
Dinosaur d3 = new Dinosaur(1990, 2015);
Dinosaur d4 = new Dinosaur(2000, 2007);
Dinosaur d5 = new Dinosaur(2010, 2012);
Dinosaur d6 = new Dinosaur(2020, 2030);
Dinosaur d7 = new Dinosaur(2030, 2035);
dinoList.add(d7);
dinoList.add(d6);
dinoList.add(d5);
dinoList.add(d4);
dinoList.add(d3);
dinoList.add(d2);
dinoList.add(d1);
//System.out.println(dinoList);
Collections.sort(dinoList);
//System.out.println(dinoList);
int maxCount = 0;
List<String> ls=new ArrayList<String>();
for (Dinosaur dino : dinoList) {
// System.out.println("start date" + dino.getStartDate());
// System.out.println("end date"+ dino.getEndDate());
int count = 0;
for (Dinosaur dino2 : dinoList) {
if (dino2.getStartDate() <= dino.getEndDate()
&& dino2.getEndDate() >= dino.getStartDate())
count++;
}
//System.out.println(count);
if (maxCount < count) {
maxCount = count;
ls.clear();
ls.add(dino.getStartDate()+"-"+dino.getEndDate());
}
else if(maxCount==count)
{
ls.add(dino.getStartDate()+"-"+dino.getEndDate());
}
}
//System.out.println(maxCount);
//System.out.println(ls);
System.out.println("Max no of Dinos alive at the same time :"+maxCount);
}
import java.util.ArrayList;
导入java.util.Collections;
导入java.util.List;
公共级恐龙{
公共静态void main(字符串[]args){
List dinoList=new ArrayList();
恐龙d1=新恐龙(1970年、1985年);
恐龙d2=新恐龙(1980年、1981年);
恐龙d3=新恐龙(1990年、2015年);
恐龙d4=新恐龙(20002007);
恐龙d5=新恐龙(2010年、2012年);
恐龙d6=新恐龙(2020年、2030年);
恐龙d7=新恐龙(2030年、2035年);
添加(d7);
添加(d6);
添加(d5);
添加(d4);
添加(d3);
加上(d2);
加上(d1);
//系统输出打印LN(dinoList);
集合。排序(dinoList);
//系统输出打印LN(dinoList);
int maxCount=0;
List ls=新的ArrayList();
(恐龙恐龙恐龙:恐龙主义者){
//System.out.println(“开始日期”+dino.getStartDate());
//System.out.println(“结束日期”+dino.getEndDate());
整数计数=0;
对于(恐龙恐龙恐龙2:恐龙主义者){
if(dino.getStartDate()=dino.getStartDate())
计数++;
}
//系统输出打印项次(计数);
如果(最大计数<计数){
最大计数=计数;
ls.clear();
add(dino.getStartDate()+“-”+dino.getEndDate());
}
else if(maxCount==count)
{
add(dino.getStartDate()+“-”+dino.getEndDate());
}
}
//系统输出打印项次(最大计数);
//系统输出打印项次(ls);
System.out.println(“同时存活的恐龙的最大数量:“+maxCount”);
}
}
我想知道如何动态定义ArrayList,当用户从控制台输入时,您可以使用以下内容:
Scanner s = new Scanner(System.in);
System.out.println("please enter 5 records");
List<Dinosaur> dinoList = new ArrayList<Dinosaur>();
for (int i = 0; i < 5; i++) {
int num1 = s.nextInt();
int num2 = s.nextInt();
Dinosaur d = new Dinosaur(num1, num2);
dinoList.add(d);
}
Scanner s=新的扫描仪(System.in);
System.out.println(“请输入5条记录”);
List dinoList=new ArrayList();
对于(int i=0;i<5;i++){
int num1=s.nextInt();
int num2=s.nextInt();
恐龙d=新恐龙(num1,num2);
添加(d);
}
问题是什么?谷歌“我如何使用扫描器类”问题是,这里我自己定义Arraylist,例如恐龙d2=新恐龙(1980、1981);恐龙d3=新恐龙(1990年、2015年);恐龙d4=新恐龙(20002007);恐龙d5=新恐龙(2010年、2012年);恐龙d6=新恐龙(2020年、2030年);恐龙d7=新恐龙(2030年、2035年);程序运行良好,达到了预期的输出。我想知道如何从键盘获取输入,而不是使用预定义的arraysCheck