有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java我的意图错误来自哪里?

我的程序中的一切似乎都很正常,但出于某种奇怪的原因,每当它到达输入部分,在输入部分选择乘法或除法时,它就会终止程序,就像它已经完成一样

这个怎么了

我尝试过改变if(Choice.equals(Multiply)) 到“Multiply”,另一个也一样

但是没有运气

这是我的代码:

import java.util.Scanner;


public class APJAVAPROGRAM {


    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
    Scanner numberinput = new Scanner(System.in);
    Scanner stringinput = new Scanner(System.in);

    System.out.print("Input a numerator >>>");              // inputs first Numerator
    double Numerator = numberinput.nextDouble();

    System.out.print("Input a Denominator >>>");            // Inputs first denominator
    double Denominator = numberinput.nextDouble();


    System.out.print("Input a second numerator >>>");               //Inputs second Numerator
    double Numerator2 = numberinput.nextDouble();

    System.out.print("Input a second Denominator >>>");         // Inputs second denominator
    double Denominator2 = numberinput.nextDouble();


    System.out.println("Your entered fractions are " + Numerator + "/" + Denominator + "  and "+ Numerator2 + "/" + Denominator2);
    // Will print out the entered fractions

    System.out.println("What would you like to do with these?");          //asks user what should be done
    System.out.print("Multipy, Divide, Add, or Subtract >>>");
    String Choice = stringinput.nextLine();                               

    double Multiply = Numerator * Numerator2;                              
    double Multiply2 = Denominator * Denominator2;
    if(Choice.equals("Multiply"))
    {
    System.out.println(Multiply + "/" + Multiply2 + " Is your answer.");
    // If the input is multiply it will do as such
    }
    else    
    {
    double Divide = Numerator * Denominator2;
    double Divide2 = Numerator2 * Denominator;
    if(Choice.equals("Divide"))
    System.out.println(Divide + "/" + Divide2 + " Is your answer.");




    }
    }
}

共 (2) 个答案

  1. # 1 楼答案

    我刚刚运行了你的代码,没关系。这里是我得到的输入/输出:

    Input a numerator >>>1
    Input a Denominator >>>2
    Input a second numerator >>>3
    Input a second Denominator >>>4
    Your entered fractions are 1.0/2.0  and 3.0/4.0
    What would you like to do with these?
    Multipy, Divide, Add, or Subtract >>>Multiply
    3.0/8.0 Is your answer.
    
  2. # 2 楼答案

    .equals(Object obj)是区分大小写的,如果您用大写字母键入“乘法”或“除法”,它将正确运行

    使用.equalsIgnoreCase(Object obj)进行字符串到字符串的比较,忽略大小写注意事项