永发信息网

java作业求改错

答案:1  悬赏:0  手机版
解决时间 2021-11-11 14:15
java作业求改错
最佳答案
修改函数如下,修改处见注释。错在判断两个字符串是否相等的问题,不能直接用等号。字符串也是对象,比如Object a,Object b,用等号是比较两个变量(a,b)的值,它们的值是引用的两个对象的地址,两个地址当然不一样,就不可能==。如果是比较基本数据类型,比如int,float,char等等就不存在这个问题,因为它们的值就是它们自己。

而比较对象的时候一般是通过覆写Object类的equals方法来实现(给外部调用equals方法)。
String类有两个equals方法,我代码里面用的是equals,区别大小写。而equalsIgnoreCase是不区别大小写。
    public void b1ActionPerformed(ActionEvent evt)
    {
        if (jcb.getSelectedIndex() == 0)
        {
            if (t1.getText() == null)
            {
                JOptionPane.showMessageDialog(null, "用户名不可为空!");
            }
            else if (t2.getText() == null)
            {
                JOptionPane.showMessageDialog(null, "密码不可为空!");
            }
            //t1.getText() == "s"这是不可能的,两个对象不能通过等号来判断,t2同理
            else if ("s".equals(t1.getText()) && "s".equals(t2.getText()))
            {
                JOptionPane.showMessageDialog(null, "学生用户登录成功");
            }
            else
            {
                JOptionPane.showMessageDialog(null, "用户名不存在或者密码不正确!");
            }
        }
        if (jcb.getSelectedIndex() == 1)
        {
            if (t1.getText() == null)
            {
                JOptionPane.showMessageDialog(null, "用户名不可为空!");
            }
            else if (t2.getText() == null)
            {
                JOptionPane.showMessageDialog(null, "密码不可为空!");
            }
            //t1.getText() == "s"这是不可能的,两个对象不能通过等号来判断,t2同理
            else if ("t".equals(t1.getText()) && "s".equals(t2.getText()))
            {
                JOptionPane.showMessageDialog(null, "教师用户登录成功");
            }
            else
            {
                JOptionPane.showMessageDialog(null, "用户名不存在或者密码不正确!");
            }
        }
    }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
女17岁一年以上 矫正视力是什么意思 郑字视力
订婚的起厨是什么意思
脚后跟凉是怎么回事
高阶非线性微分方程组能用打靶法求吗
晚上过了九点洗澡对女人好吗?
烫斗和挂烫机哪个好用
怎样防止toad报ora-29275
某氏园中,有古木,。。。。。。盖二鹊招鹳援
快手奶豆哥哥经典语录
一支蜻蜓常落我家窗纱上有什么说法吗?
257+258+259+260+261+262+263=多少乘多少等于
被拖给耍了,只要回一半
体温从36·3渐渐升到36·8后十几天又往下慢慢
从人民南路南园路交叉口到太仓人民南路正和路
1个月后去国外出差,有什么办法可以迅速突击
推荐资讯
一般送人适合送什么品牌的茶叶?
我在汽车厂,做上胶有毒吗?
龙门铁泉温泉度假村距离恵州南站多远
贷款宝骏2017款1.5t需要哪些条件
谁有椿的卡片图片
男装外套180\104a适合的身高体重是多少
巴黎恋人婚纱摄影(新马桥中心卫生院东南)地址
温州至北京的列车有哪些站点?
鲁襄公二十二年文言文中孔子长九尺有六寸,人
建兴eBAU108怎么样?建兴eBAU108好吗
有关孔子爱国的故事
单字名字大全
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?