所以我有这段代码:
public Student(String name, String subject) {
if(subject.substring(17,18) == "e"){
subjectName = "English";
}else if(subject.substring(17,18) == "m") {
subjectName = "Math";
}
studentName = name;
}
我正在以一个字符串的名义喂养学生,然后是一个像这样的形式的主题:
..\text\students\english\grades
现在我在其上使用子字符串并仅获取主题的第一个字母。如果这封信是e,那么课程名称是英文等等。
但由于某些原因,我的IF检查根本没有通过,如果我在其中抛出一个sysout,没有任何反应,检查永远不会通过它...
这可能是什么问题?
答案 0 :(得分:4)
您正在使用String
对==
进行比较,您需要.equals()
使用String
方法
尝试将代码更改为以下内容:
if(subject.substring(17,18).equals("e")){
subjectName = "English";
}else if(subject.substring(17,18).equals("m")) {
subjectName = "Math";
}