java中字符串比较--注意事项

尽量用String.equals()方法比较,不然可能会出现预期之外的结果。

 public String forgetPwd2(String username, String question, String answer) {
        String result = null;
        try {
            session = HibernateInitialize.getSession();
            Criteria criteria = session.createCriteria(User.class);
            criteria.add(Restrictions.like("username", username));
            List<User> list = (List<User>) criteria.list();
            User user = new User();
            for (User user1 : list) {
                user.setAnswer(user1.getAnswer());
                user.setPwd(user1.getPwd());
            }
            String AnswerChecker=user.getAnswer();
            //如果写成if(AnswerChecker==answer)会判断成false,emmmm~~(阿里Java技术手册要好好看看鸭)
            if (AnswerChecker.equals(answer)) {
                result = user.getPwd();
            } else {
                result = "您输入的密码提示问题答案错误!";
            }
        } catch (HibernateException e) {
            e.printStackTrace();
            result = "您输入的密码提示问题答案错误!";
        }finally {
            HibernateInitialize.closeSession();
        }
        return result;
    }
发布了131 篇原创文章 · 获赞 18 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43356428/article/details/105385373