为什么我的作业没有通过?

时间:2018-01-18 04:09:05

标签: java loops for-loop if-statement variable-assignment

我正在尝试比较两个输入的第一个字母,例如“马”和“苹果”,并查看较大者,然后根据条件打印“是”或“否”。

当我将j的值赋给number1和number2时,它们在赋值后仍然保持为零。因此,在“是”和“否”if语句之前,如果您是Sysout number1和number2,则它们的值均为0。

我想知道为什么作业没有进行。谢谢!

此外,这是我试图解决的问题(如果您需要):https://www.hackerrank.com/challenges/java-strings-introduction/problem

import java.io.*;
import java.util.*;

public class Solution {

    public static void main(String[] args) {

        Scanner sc=new Scanner(System.in);
        String A=sc.next();
        String B=sc.next();
        int addition = A.length() + B.length();
        int number1 = 0;
        int number2 = 0;
        String[] Alphabet = new String[]{"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"};
        for (int j = 0; j < 25; j++) {
            if (A.substring(0) == Alphabet[j]){
                number1 = j;
                break;
            }
        }
        for (int j = 0; j < 25; j++) {
            if (B.substring(0) == Alphabet[j]){
                number2 = j;
                break;
            }
        }
        if (number1 > number2) {
            System.out.println("Yes");
        }
        else {
            System.out.println("No");
        }
    }
}

1 个答案:

答案 0 :(得分:-2)

比较java中的字符串值应该使用equals()而不是==,因为==比较这些字符串对象的引用。使用equals()进行字符串比较可以解决您的问题!!