首页 > 解决方案 > 我需要编写一个 If 语句,如果输入的任何字符包含在字符串中,它将打印一条消息

问题描述

假设我需要为值输入一系列字母:字母。

而且我有多个字符串,例如 String.s1 包含以下字符:ABC

并且 String.s2 是 DEF 等等,直到字母表的末尾。

我需要编写一个 If 语句,这样如果我从 s1 输入任何字符,它将返回数字 1,而 s2 将返回数字 2,依此类推。我需要能够一次输入我需要的所有字符。

我目前凌乱的代码是:

import java.util.Scanner;
public class Assign2 {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Scanner input = new Scanner(System.in);
    char letters;
    int numbers;
    String.s1 = "ABC";
    String.s2 = "DEF";
    String.s3 = "GHI";
    String.s4 = "JKL";
    String.s5 = "MNO";
    System.out.print("Enter the chosen letter: ");
    letters = input.letters();
    if (letters.contains(s1))
      numbers = 1;
    else if (letters.contains(s2))
      numbers = 2;
  }
}

标签: javastringcharacterjava.util.scanner

解决方案


您可以创建一个字符串数组,yourArray如下所示,s1,s2,s3依此类推。然后你可以在一个简单的循环中处理这个

for(int i = 0; i< yourArray.size ; i++){

  if(letters.contains(yourArray[i])){
     numbers = i+1;
     break;
   }

}

推荐阅读