昨天我的一个老师给我布置了一个 题目,就是用java做一个猜拳游戏,这个游戏中包含四个类,类一是Person 类二是Computer 还有的就是Charge类和GameStart类了。
在这个题目中,我曾经用了在命令行输入“y”和“n”的方式来决定是否决定要不要继续把游戏进行下去。当时我用的是Scanner类中的nextLine方法,但是当我用nextLine获得“y”
和“n”进行判断的时候,总是出错误。但是因为系统没有报错,我一开始一直以为我的错误是在自己语句的写法和逻辑错误。可是当我改了又改我的逻辑判断语句的时候,却发现一直都存在问题。然后我察看了一些的百度和帮助文档,发现了next()方法读取的是有效的String类型,只读取有效的部分。但是nextLine()方法可以读取整个的一行的输入的字符串。但是这个和我的题目有什么关系呢?我到现在都还有点迷糊啊?我的核心的迷糊的地方就是我的用nextLine方法获得的字符串用了equals()方法和用next()方法获得的字符串用equals()方法的得到结果不同的问题。呵呵,或许这是一个bug吧,以后要注意就行了。