我正在尝试取两个字符串并比较它们的长度。如果它们的长度不相等,程序将简单地打印“再见”,但是如果它们相等,我想检查一下第一个字符串中的每个字母是否小于或等于第二个字符串中的相应字母。如果成立,则应打印TRUE,否则应打印FALSE。

  import java.util.Scanner;
public class hw3_task2 {


public static void main(String[] args) {
    Scanner in = new Scanner(System.in);
   System.out.printf("Enter the first string: ");
    String a = in.nextLine();
   System.out.printf("Enter the second string: ");
    String b = in.nextLine();

  char [] _a = a.toCharArray();
  char [] _b = b.toCharArray();

  if (a.length() == b.length());

boolean flag = true;
for(int i = 0; i < a.length(); i++){
      System.out.printf("TRUE\n");
      System.out.printf("Bye\n");

  if( _a[i] != _b[i]){
    flag = false;
    System.out.printf("Bye\n");
  }
}
}
}

最佳答案

您不能简单地使用String compareTo()函数吗?它似乎完全可以满足您的需求:

String a = "cats";
String b = "cuts";
String result = "";
if(a.length() != b.length()){
    result = "BYE";
}
else if (a.compareTo(b) <= 0){
    result = "TRUE";
}
else{
    result = "FALSE";
}
System.out.println(result);

10-05 18:35
查看更多