Java 如何制作一个程序来查看输入的单词是否等于a?
我正在netbeans上学习Java,所以我找了一些练习。 我试图完成这个练习:编写一个java程序,提示用户输入一个单词,并检查这个单词是否以字母“a”开头 所以我写了这段代码:Java 如何制作一个程序来查看输入的单词是否等于a?,java,netbeans,Java,Netbeans,我正在netbeans上学习Java,所以我找了一些练习。 我试图完成这个练习:编写一个java程序,提示用户输入一个单词,并检查这个单词是否以字母“a”开头 所以我写了这段代码: package testone; import java.util.Scanner; public class TestOne { /** * @param args the command line arguments */ public static void main(
package testone;
import java.util.Scanner;
public class TestOne {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
String strA = "A";
Scanner s = new Scanner(System.in);
System.out.println("Please enter a word : ");
String userWord = s.next();
char firstLetter = userWord.charAt(0);
if (strA.equals(firstLetter)) {
System.out.println("Your word starts with letter A ");
}else {
System.out.println("Your word doesn't start with letter A ");
}
}
}
但是它可能不起作用,有什么想法吗?你能用那个
用户词试试吗。startsWith(“A”)你能用那个用户词试试吗。startsWith(“A”)
你在比较一个字符串和一个字符吗{
。这就像检查一个苹果是否等于一个梨;它总是假的
相反,只需检查输入是否以:
if (userWord.startsWith("A")) {
有关更多信息,请参见。您正在将字符串
与字符
进行比较:if(strA.equals(firstLetter)){
。这就像检查一个苹果是否等于一个梨一样;它始终是假的
相反,只需检查输入是否以:
if (userWord.startsWith("A")) {
有关更多信息,请参阅。您不能直接比较字符和字符串。除了其他人提供的解决方案外,您还可以使用String.valueOf(…)
函数,然后您就可以比较字符串和字符了
package testone;
import java.util.Scanner;
public class TestOne {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
String strA = "A";
Scanner s = new Scanner(System.in);
System.out.println("Please enter a word : ");
String userWord = s.next();
char firstLetter = userWord.charAt(0);
if (strA.equals(String.valueOf(firstLetter))) { //Try this
System.out.println("Your word starts with letter A ");
}else {
System.out.println("Your word doesn't start with letter A ");
}
}
}
您不能直接比较字符和字符串。除了其他人给出的解决方案外,您还可以使用String.valueOf(…)
函数,然后您就可以比较字符串和字符了
package testone;
import java.util.Scanner;
public class TestOne {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
String strA = "A";
Scanner s = new Scanner(System.in);
System.out.println("Please enter a word : ");
String userWord = s.next();
char firstLetter = userWord.charAt(0);
if (strA.equals(String.valueOf(firstLetter))) { //Try this
System.out.println("Your word starts with letter A ");
}else {
System.out.println("Your word doesn't start with letter A ");
}
}
}
根据:
public boolean equals(Object-anObject)
将此字符串与指定的对象进行比较。如果
并且仅当参数不为null并且是
表示与此对象相同的字符序列
您正在使用类型为char
的参数调用此方法,该参数将被装箱到Character
实例中,该实例不扩展String
。结果将始终为false
使用userWord.startsWith(“A”)
代替,或userWord.charAt(0)='A'
。根据以下内容:
public boolean equals(Object-anObject)
将此字符串与指定的对象进行比较。如果
并且仅当参数不为null并且是
表示与此对象相同的字符序列
您正在使用类型为char
的参数调用此方法,该参数将被装箱到Character
实例中,该实例不扩展String
。结果将始终为false
改为使用userWord.startsWith(“A”)
,或者userWord.charAt(0)='A'
。我想你可以试试方法yourstring.indexOf('A')
,它返回一个int
,如果它是0,那么你在第一个位置找到了“A”,否则就没有了。
语法
我认为您可以尝试方法yourstring.indexOf('A')
,它返回一个int
,如果它是0,那么您在第一个位置找到了“A”,否则就没有了。
语法
为什么要比较字符串
和字符
?为什么要比较字符串
和字符
?如果输入字符串不以a开头,此函数将返回false。我已对其进行了测试。如果输入字符串不以a开头,此函数将返回false。我已对其进行了测试。