嗨,所以我需要让这个程序打印所有首字母与用户输入的字母匹配的国家/地区。
我目前在使用for循环时出现问题,因为它根本不让我运行它看起来像这样
for (String s1: countries) {
if (countries.startsWith(input))
System.out.println(s1);
}
这是我的程序直到现在的样子(我不知道,但也许有帮助......)
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner s = new Scanner(System.in);
String input;
//Creating the Array
String countries[] = {"Germany", "Switzerland", "Japan", "USA", "Ghana", "Saudi Arabia", "Uganda", "Russia", "Romania", "Great Britain", "Urugai", "Etheopia", "Ecuador", "Estonia", "Egypt", "France", "Austria", "Australia", "Argentinia", "Afganistan", "Albania", "Syria", "Turkey", "India", "Iraq", "Iran", "Angola", "Congo", "South Africa", "Somalia", "Madagascar", "Mexico", "Chile", "Venezuela", "Cuba", "Vietnam", "Cambodia", "Nepal", "Pakistan", "Khazakstan", "Turkmenistan", "Peru", "Namibia", "Czech Republic"};
//User Input
System.out.println("When you enter the letter, you will get to know all the countries in our array starting with this letter.");
input = s.next();
//finding and printing the countries with the users letter as their first letter
for (String s1: countries) {
if (countries.startsWith(input))
System.out.println(s1);
}
}
}
答案 0 :(得分:0)
像这样:
for (String country: countries) {
if (Character.toString(country.charAt(0)).equals(input)) {
System.out.println(country);
}
}
我们遍历每个国家,如果第一个字符等于输入。 charAt
返回一个字符,我们必须将其转换为String,然后再将其与input
进行比较。
您可能还想检查country
字符串是否包含任何字符。