程序最初的工作方式是要求用户输入一个字符串,然后输入一个字符,然后测试字符串是否以该字符开头。角色的情况应该是无关紧要的。我自己跑得很好,但不符合规格。例如,当我运行它并输入“HELLO”作为第一个输入而第二个输入是字符“h”小写时它不会说真。即使“h”是小写的,我仍然希望我的程序能够考虑到它。我是新手使用方法的字符串对象。我希望程序忽略这个案例。
import java.util.*;
public class Page189Question2aAnd2b
{
public static void main(String[] args)
{
String a = new String();
String b = new String();
System.out.println("Input a string:");
a = EasyScanner.nextString();
a.equalsIgnoreCase(a);
System.out.println("Enter a single character ");
b = EasyScanner.nextString();
b.equalsIgnoreCase(b);
if(a.startsWith(b))
{
System.out.println(a.startsWith(b));
//System.out.println(a.equalsIgnoreCase(b));
}
}
}
答案 0 :(得分:1)
equalsIgnoreCase
只返回一个布尔值,表示如果不考虑字符串的大小写,两个字符串是否相等。
您需要的是
String aLower = a.toLowerCase();
String bLower = b.toLowerCase();
if(aLower.startsWith(bLower))
{
// do something
}
这样你只需将两个字符串转换为小写字母,然后再将它们进行比较。
答案 1 :(得分:0)
试试这个:
System.out.println((a.toLowerCase()).startsWith(b.toLowerCase()));