Java 程序检查字符串是否为 pangram
Pangram 是一个包含英语字母表中所有字母的字符串。例如,“The quick brown fox jumps over the lazy dog”。
问题陈述
给定一个字符串,编写一个 Java 程序来检查它是否为 pangram。
请考虑以下示例 -
输入The quick brown fox jumps over the lazy dog.输出
String: The quick brown fox jumps over the lazy dog. The above string is a pangram.
算法
以下算法侧重于检查字符串是否为 pangram。
步骤 1:创建一个大小为 26 的布尔数组 `alphaList` 来跟踪每个字母的存在。
步骤 2:将整数 `flag` 初始化为 1,假设字符串为 pangram。
步骤 4:如果字符是字母(大写或小写),则计算其在字母表中的索引,并将 `alphaList` 中相应的位位置为 `true`。
步骤 5:验证所有字母:循环遍历 `alphaList`
步骤 6:如果任何位位置为 `false`,则将 `flag` 设置为 0(表示字符串不是 pangram)。
步骤 7:根据 `flag` 的值打印原始字符串以及它是否为 pangram。
Java 程序检查字符串是否为 pangram
下面给出了一个检查字符串是否为 pangram 的程序。
public class Example {
public static void main(String[] args) {
String str = "The quick brown fox jumps over the lazy dog";
boolean[] alphaList = new boolean[26];
int index = 0;
int flag = 1;
for (int i = 0; i < str.length(); i++)
{
if ( str.charAt(i) >= 'A' && str.charAt(i) <= 'Z')
{
index = str.charAt(i) - 'A';
}
else if( str.charAt(i) >= 'a' && str.charAt(i) <= 'z')
{
index = str.charAt(i) - 'a';
}
alphaList[index] = true;
}
for (int i = 0; i <= 25; i++)
{
if (alphaList[i] == false)
flag = 0;
}
System.out.print("String: " + str);
if (flag == 1)
System.out.print("\nThe above string is a pangram.");
else
System.out.print("\nThe above string is not a pangram.");
}
}
输出
String: The quick brown fox jumps over the lazy dog The above string is a pangram.
代码解释
使用 for 循环遍历字符串 'str',对于每个字母,将 aplhaList 中相应的索引设置为 true。
演示此功能的代码片段如下所示:
for (int i = 0; i < str.length(); i++) {
if (str.charAt(i) >= 'A' && str.charAt(i) <= 'Z') {
index = str.charAt(i) - 'A';
} else if
(str.charAt(i) >= 'a' && str.charAt(i) <= 'z') {
index = str.charAt(i) - 'a';
}
alphaList[index] = true;
}
之后,遍历 数组 alphaList。如果所有值都为 true,则字符串为 pangram,并且 flag 的值保持为 1。但是,如果即使 1 个值为 false,则字符串不是 pangram,并且 flag 的值被设置为 0。然后显示字符串是否为 pangram。
演示此功能的代码片段如下所示。
for (int i = 0; i <= 25; i++) {
if (alphaList[i] == false)
flag = 0;
}
System.out.print("String: " + str);
if (flag == 1)
System.out.print("\nThe above string is a pangram.");
else
System.out.print("\nThe above string is not a pangram.");
}
广告
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP