Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用Scanner类?_Java_Arraylist - Fatal编程技术网

Java 如何使用Scanner类?

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>(

在下面的代码中,我得到了一个基于我自己定义的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>();
    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