Java 程序接收包含所有元音的字符串


为了发现给定的字符串是否包含所有元音,我们首先必须将给定的字符串转换为字符数组,以便我们可以简化比较给定字符串的每个字符。

在此之后,将每个字符放入哈希图中,以便我们可以检查从给定字符串创建的映射是否包含所有元音。我们在此处采用了哈希图的帮助,因为字符数组类中没有具体方法可以检查它是否包含所有元音。唯一的检查方法是对整个数组进行迭代并将每个字符与每个元音进行比较,这不是适当和正确的方法,字符串类也是如此,因此我们将字符串转换为哈希图,它将一次检查元音的包含。

现在创建一个包含所有元音的字符类型数组列表。剩下的唯一步骤是检查哈希图是否包含此列表?通过使用 Map 接口的包含所有方法。

如果哈希图包含元音列表,那么我们可以接受给定的字符串,否则不能接受。

示例

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
public class StringContainVowels {
   public static void main(String[] args) {
      String str1 = "aeiou";
      ArrayList<Character> vowelList = new ArrayList<>(Arrays.asList('a','e','i','o','u'));
      char [] ch1 = str1.toCharArray();
      HashMap<Character,Character> hMap = new HashMap();
      for(char ch : ch2) {
         hMap.put(ch,'g');
      }
      if(hMap.keySet().containsAll(vowelList)) {
         System.out.println("String is accepted" );
      } else {
         System.out.println("String is not accepted");
      }
   }
}

输出

String is accepted

示例

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
public class StringContainVowels {
   public static void main(String[] args) {
      String str1 = "aeufgfg";
      ArrayList<Character> vowelList = new ArrayList<>(Arrays.asList('a','e','i','o','u'));
      char [] ch1 = str1.toCharArray();
      HashMap<Character,Character> hMap = new HashMap();
      for(char ch : ch2) {
         hMap.put(ch,'g');
      }
      if(hMap.keySet().containsAll(vowelList)) {
         System.out.println("String is accepted" );
      } else {
         System.out.println("String is not accepted");
      }
   }
}

输出

String is not accepted

更新于:2020 年 6 月 25 日

347 次浏览

开启您的职业生涯

通过完成该课程获颁证书

开始
广告