我的java程序跳过步骤

我的java程序跳过步骤,java,math,skip,Java,Math,Skip,因此,我的程序一直运行良好,直到最后必须计算并显示结果。它只显示结果,而不计算最后的“如果” public class Convertisseur1 { public static void main(String[] args) { String valeurInitial; String valeurPoid; String valeurDesire; String valeurInitial2; String valeurInitial3;

因此,我的程序一直运行良好,直到最后必须计算并显示结果。它只显示结果,而不计算最后的“如果”

 public class Convertisseur1 {
    public static void main(String[] args) {
    String valeurInitial;
    String valeurPoid;
    String valeurDesire;
    String valeurInitial2;
    String valeurInitial3;

    //seperation des string
    valeurInitial = (args[0]);
    valeurInitial2 = (args[0]);
    valeurDesire = (args[1]);
    valeurInitial3 = (args[0]);

    valeurInitial = valeurInitial.replace("kg",""); 
    valeurInitial = valeurInitial.replace("g","");      
    valeurInitial = valeurInitial.replace("t","");      
    valeurInitial = valeurInitial.replace("lb","");     
    double valeurdouble = Double.parseDouble(valeurInitial);

    valeurInitial2 = valeurInitial2.substring(valeurInitial2.length()-2);
    valeurInitial3 = valeurInitial3.substring(valeurInitial3.length()-1);       
    //convertion    
    System.out.println(valeurInitial2);
    System.out.println(valeurDesire);
    System.out.println(valeurdouble);
    if(valeurInitial2 == "kg" &&valeurDesire == "g"){
        valeurdouble = (valeurdouble*1000); 
        System.out.println("La convertion finale : " + valeurdouble);
    }else if(valeurInitial2 == "kg"&&valeurDesire == "lb")
        valeurdouble = (valeurdouble/2.2046226);

    /*System.out.println(valeurdouble);
    //System.out.println(valeurPoid);
    System.out.println(valeurDesire);
    System.out.println(valeurInitial2);
    System.out.println(valeurInitial3);*/

    }
}   

您缺少else if上的{},并且它在最后一个if上不打印任何内容,因为它需要另一个System.out.println(),因为它不是循环

}else if(valeurInitial2.equals( "kg" ) && valeurDesire.equals("lb" ) ){
    valeurdouble = (valeurdouble/2.2046226);
    System.out.println("La convertion finale : " + valeurdouble);
}

答案是ty,但程序仍然跳过了计算,这是我在cmd上输入8kg cmd:kg g g 8.0时得到的结果。我看到你使用“==”来比较字符串,在java中,你需要使用.equals函数来比较字符串。如果(valeurInitial2.equals(“kg”)和&valeurDesire.equals(“g”){//stuff}它可以工作,感谢alot Ramiro!投票结束,这是另一个字符串比较问题。