一个简单的Java基础程序,但不能正常输出结果

public class Main {
public static void main(String[] args){

    int count =0;
    for(int i = 27;i<100;i++){
        
        int j = i -27;
        String k="",m = String.valueOf(i),str = "";
        
        for(int n = m.length()-1;n>=0;n--){
            str =str + m.charAt(n);
        }
        
        if(j<10) k = "0"+j;
        else k="" + j;
        System.out.println("str ="+str);
        System.out.println("k ="+k);
        if(k == str) count++;        
    }
    System.out.println(count);
}

}
当i等于30的时候if(k == str) 就成立了,但输出结果还是零

if(k == str) count++;
改为:
if(k.equals(str)) count++;

==和equals比较字符串是有区别的