问题描述
- Scnner类的next()方法,返回的值为什么在比较前需要toString一下
-
Scanner input = new Scanner(System.in); System.out.println("请输入预测结果:花/数字"); String result = input.next(); System.out.println("接收的字符串:"+result); //生成随机数(偶数为花/奇数为数字) String res = ""; Random rand = new Random(); int num = rand.nextInt(); if(num%2 == 0){ //偶数 res = "花"; }else{ //奇数 res = "数字"; } System.out.println("结果:"+res); if(result.toString().equals(res)){ System.out.println("预测正确!"); }else{ System.out.println("失败了,下次努力!"); }
如果在比较的时候不加 toString() 时,返回的boolean类型总为 false,这是为什么啊?
解决方案
我把你的代码去掉tostring运行了下 没问题,没有你所说的问题
时间: 2024-09-29 00:56:10