Java字符串输入比较

标签 java

想通了。多谢你们。我知道这不是一个完美的答案,但是我是java新手。

包Dr._Coles_Practice_Problems;

导入java.util.Scanner;

公共(public)类 GpaCalc {

public static void main(String[] args) {

   // Needed variables 

    double credits = 0.0;

    double totalcredits = 0.0;

    double grade = 0.0;

    double qualitypoints = 0;

    int classes;

    String lettergrade;

    Scanner input = new Scanner(System.in);

    System.out.println("Enter the amount of classes for this semester");

    classes = input.nextInt();

    while (classes > 0) {

    System.out.println("Enter the amount of credits for this class");

    credits = input.nextDouble();

    System.out.println("Enter the grade achieved for this class");

    lettergrade = input.next();

        if (lettergrade.equalsIgnoreCase("a")) {

            grade += 4.00;

        }

        if (lettergrade.equalsIgnoreCase("a-")) {

            grade += 3.67;

        }

        if (lettergrade.equalsIgnoreCase("b+")) {

            grade += 3.33;

        }

        if (lettergrade.equalsIgnoreCase("b")) {

            grade += 3.00;

        }

        if (lettergrade.equalsIgnoreCase("b-")) {

            grade += 2.67;

        }

        if (lettergrade.equalsIgnoreCase("c+")) {

            grade += 2.33;

        }

        if (lettergrade.equalsIgnoreCase("c")) {

            grade += 2.00;

        }

        if (lettergrade.equalsIgnoreCase("c-")) {

            grade += 1.67;

        }

        if (lettergrade.equalsIgnoreCase("d+")) {

            grade += 1.33;

        }

        if (lettergrade.equalsIgnoreCase("d")) {

            grade += 1.00;

        }

        if (lettergrade.equalsIgnoreCase("f")) {

            grade += 0.00;

        }

        classes--;

        totalcredits += credits;  

    }      

     qualitypoints = grade * credits;   

    // GPA is calculated via total credits / total quality points 
   //of which are calculated by multiplying the credit(s) * the quality point value


    System.out.println("Your total credit(s)are: " + totalcredits);

    System.out.println("Your total quality points are: " + qualitypoints);

    System.out.println("Your GPA is: " + (qualitypoints / totalcredits));
}

}

/*

布鲁姆斯堡大学的评分标准

A = 4.00 卓越成就

A- = 3.67

B+ = 3.33

B = 3.00 高于平均水平

B-=2.67

C+ = 2.33

C = 2.00 平均成绩

C- = 1.67

D+=1.33

D = 1.00 最低达到

F = 0.00 失败

*/

最佳答案

 if (grade.toLowerCase() == "a") {

由于 "a"grade.toLowerCase() 是对象(String 类型),因此将它们与 == 进行比较 比较对象的引用,而不是字符串的内容。

使用equals()方法。

if (grade.toLowerCase().equals("a")) {

更多地使用equalsIgnoreCase方法来忽略大小写。

if (grade.equalsIgnoreCase("a")) {

关于Java字符串输入比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20160707/

相关文章:

java - 在 webview Android 应用程序中启用 Flash

java - Neo4j-带有if else条件的密码查询中的多个匹配语句

java - 写一个字母的n次方

java - 针对不同 Java 版本的源代码之间的性能差异?

java - 如何将 SQL 查询转换为 Spring JPA 查询

java - RabbitMQ 始终远程连接到 guest 用户

java - 使 Mapbox 标记可点击并返回标记的 ID

java - public<T> void run (T object ) { } 是什么意思?

java - 模式 "Form 1987A"的正则表达式

java - 使用 jackson jersey 将复杂的 hashmap 转换为 JSON