4-4错误提示NoSuchElementException

4-4错误提示NoSuchElementException

	public static void main(String[] args) {
		
		//定义HashMap的对象并添加数据
		Map<Integer, String> map = new HashMap<Integer, String>();       
		Scanner sc = new Scanner(System.in);
		int i = 0;
		while(i<5){
			System.out.println("请输入足球年份:");
			Integer a = sc.nextInt();
			System.out.println("请输入冠军球队");
			String v = sc.next();
			map.put(a, v);
			i++;
		}		
		System.out.println("--------------------------");
		//使用迭代器的方式遍历
		Iterator<String> it = map.values().iterator();
		while(it.hasNext()){
			System.out.println(it.next()+" ");
		}
		System.out.println();  
		System.out.println("--------------------------");
		//使用EntrySet同时获取key和value
		System.out.println("年份"+"\t"+"冠军");
		Set<Entry<Integer, String>> set = map.entrySet();
		for(Entry<Integer, String> entry:set){
			System.out.print(entry.getKey()+"\t");
			System.out.println(entry.getValue());
		}
	}
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:862)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.nextInt(Scanner.java:2117)
at java.util.Scanner.nextInt(Scanner.java:2076)
at FootballDemo.main(FootballDemo.java:18)


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
chrismorgen 2018-09-13 18:05:46

测试了你的代码并没有报错呀,如下是我测试的代码,

package snippet;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Scanner;
import java.util.Set;

public class Snippet {
    public static void main(String[] args) {
         
        //定义HashMap的对象并添加数据
        Map<Integer, String> map = new HashMap<Integer, String>();       
        Scanner sc = new Scanner(System.in);
        int i = 0;
        while(i<5){
            System.out.println("请输入足球年份:");
            Integer a = sc.nextInt();
            System.out.println("请输入冠军球队");
            String v = sc.next();
            map.put(a, v);
            i++;
        }       
        System.out.println("--------------------------");
        //使用迭代器的方式遍历
        Iterator<String> it = map.values().iterator();
        while(it.hasNext()){
            System.out.println(it.next()+" ");
        }
        System.out.println();  
        System.out.println("--------------------------");
        //使用EntrySet同时获取key和value
        System.out.println("年份"+"\t"+"冠军");
        Set<Entry<Integer, String>> set = map.entrySet();
        for(Entry<Integer, String> entry:set){
            System.out.print(entry.getKey()+"\t");
            System.out.println(entry.getValue());
        }
    }
}

效果如下图,祝学习愉快~

http://img1.sycdn.imooc.com//climg/5b9a36540001787205290564.jpg

  • 提问者 RSF #1
    这是在网页里面的
    2018-09-13 18:09:18
  • chrismorgen 回复 提问者 RSF #2
    额,没明白同学的意思,可以具体描述一下么?或者贴一下报错提示的截图,祝学习愉快~
    2018-09-13 18:45:02
  • 提问者 RSF 回复 chrismorgen #3
    我是说不是在MyEclipse里面的错误提示,是在网页代码提交,也就是编程练习提交作业那个页面
    2018-09-14 14:24:44
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师