标题:我才学JAVA几天 求人帮我看看这个程序有人什么错 咋结果不正确?
只看楼主
chenghan818
Rank: 2
等 级:论坛游民
帖 子:27
专家分:22
注 册:2011-5-21
结帖率:37.5%
已结贴  问题点数:0 回复次数:12 
我才学JAVA几天 求人帮我看看这个程序有人什么错 咋结果不正确?
import java.util.Scanner;
class Scannertest{
      public static void main(String[] args){
      String str0="窗前明月光";
      String str1="疑似地上霜";
      String str2="举头望明月";
      String str3="低头思故乡";
      String Str4=null;
      Scanner keyin=new Scanner(System.in);
      System.out.println("请输入《静夜思》的任一句:");
      str4=keyin.nextLine();
      if(str4==str0) {System.out.println("下一句是:"+str1);}
      else if(str4==str1) {System.out.println("下一句是:"+str2);}
      else if(str4==str2) {System.out.println("下一句是:"+str3);}
      else if(str4==str3) {System.out.println("下一句是:"+str0);}
      else System.out.println("你输错了 你小学语文没学好哦!");
         }
   }
搜索更多相关主题的帖子: str1 public import 静夜思 
2011-10-11 19:22
虾B写
Rank: 8Rank: 8
来 自:湖北
等 级:蝙蝠侠
威 望:3
帖 子:395
专家分:922
注 册:2009-10-1
得分:3 
注意大小写

白娘故意下雨骗许仙的伞。祝英台十八里相送时装疯卖傻调戏梁山伯。七仙女挡住了董永的去路。牛郎趁织女洗澡时拿走了她的衣服。。。这些故事告诉我们;伟大爱情的开始,总归的有一个要先耍流氓!
2011-10-11 20:15
付政委
该用户已被删除
得分:3 
提示: 作者被禁止或删除 内容自动屏蔽
2011-10-11 21:14
chenghan818
Rank: 2
等 级:论坛游民
帖 子:27
专家分:22
注 册:2011-5-21
得分:0 
回复 3楼 付政委
我改了 之后运行还是一样的结果 无论输进什么就是只输出“你输错了 你小学语文没学好哦!”最后这句话 是什么原因 ?
2011-10-11 21:39
ninghz
Rank: 2
等 级:论坛游民
帖 子:34
专家分:34
注 册:2011-7-8
得分:3 
字符可以用“==”的么,试用下equals来判断一下吧!!这样应该就可以解决了!!

程序改变生活
2011-10-11 23:20
朴青涵
Rank: 1
等 级:新手上路
帖 子:2
专家分:3
注 册:2010-10-6
得分:3 
对!“==”比的是两个变量的引用地址!很明显,你输入的是一个new的变量!地址不一样!要比较内容的话,可以试试equals。
2011-10-12 09:05
husiwen
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:227
专家分:1125
注 册:2010-5-23
得分:3 
用equals。。String和integer一样,对象是要new出来的。在堆中,只能用equals对判断。。只有int long char这种是在栈中,可以直接用=号
2011-10-12 22:35
xianglgd
Rank: 1
等 级:新手上路
帖 子:15
专家分:5
注 册:2011-10-15
得分:3 
哇哇!!! 来瞄瞄,我收获 颇多,大虾们都 好厉害!!!  

180331920   JAVA 交流群,学习群 ,
大虾,小虾,小菜 们都 请进来,多多交流!
2011-10-15 15:44
jcmycasd
Rank: 1
等 级:新手上路
帖 子:2
专家分:3
注 册:2011-10-9
得分:3 
import java.util.Scanner;

class Scannertest {
    public static void main(String[] args) {
        String str0 = "窗前明月光";
        String str1 = "疑似地上霜";
        String str2 = "举头望明月";
        String str3 = "低头思故乡";
        String Str4;
        Scanner keyin = new Scanner(System.in);
        System.out.println("请输入《静夜思》的任一句:");
        Str4 = keyin.nextLine();
        if (Str4.equals(str0)) {
            System.out.println("下一句是:" + str1);
        } else if (Str4.equals(str1)) {
            System.out.println("下一句是:" + str2);
        } else if (Str4.equals(str2)) {
            System.out.println("下一句是:" + str3);
        } else if (Str4.equals(str3)) {
            System.out.println("下一句是:" + str0);
        } else
            System.out.println("你输错了 你小学语文没学好哦!");
    }
}
我是这么改的..
2011-10-17 20:28
chenghan818
Rank: 2
等 级:论坛游民
帖 子:27
专家分:22
注 册:2011-5-21
得分:0 
谢谢各位 居然把这么基本的东西都弄丢了(亏我们还学了C)!
2011-10-25 22:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-352108-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.308391 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved