我有以下数据:
Maths abc10 4 def08 6 ;
English hrd45 3 ngh05 10 ; .
开头的单词是一个也在枚举中的关键字,以下数据是用户名和登录对(可以有无限数量的这些。每个关键字的数据以';'和数据终止由'。'
终止我正在使用扫描仪类,但我不能让它循环,以便它可以产生以下内容:
Maths abc10 4
Maths def08 6
English hrd45 3
English ngh05 10
任何想法?谢谢!
答案 0 :(得分:3)
将所有内容存储在Map<String, Map<String, Integer> >
中。迭代线条,抓住主题,然后是名称。 (循环从这里开始)。检查名称是否为;
,如果是,则退出。获取分数,然后将其添加到Map<String, Integer>
。然后抓住下一个名字。 (循环在这里结束)。将当前Map<String, Integer>
添加到大Map<>
,然后重新执行。
答案 1 :(得分:1)
你可以看看正则表达式java.util.regex,如果它是家庭作业,你也会了解那些,相信我,它不会受到伤害。对于这么简单的事情,不值得去解析器方式恕我直言。