字符串中的Java子字符串

时间:2013-04-20 19:52:54

标签: java string substring

我知道这个问题已被无数次问过......但我似乎无法让它发挥作用。问题是,

  1. 即使将所有内容转换为小写,也无法解决问题 输入“computer”和“Comp”。
  2. 如果字符串是一个句子(我添加一个空格),它实际上会跳过子字符串代码并说“不在字符串中”..
  3. 帮助表示赞赏。 谢谢!

    Scanner in=new Scanner(System.in);
    System.out.println("\fEnter the main string:");
    
    String GivenString=in.next();
    System.out.println("Enter the substring :");
    
    String SubString=in.next();
    
    GivenString.toLowerCase();
    SubString.toLowerCase();
    
    if(GivenString.indexOf(SubString)!=-1)
    {
        System.out.println("Substring is in the given string.");
    }
    else
    {
        System.out.println("Substring is not in the given string.");
    }
    

1 个答案:

答案 0 :(得分:7)

String是不可变的,toLowerCase()返回一个新的String对象。这些行:

GivenString.toLowerCase();
SubString.toLowerCase();

...不要修改GivenStringSubString中的值。

您需要将它们修改为:

GivenString = GivenString.toLowerCase();
SubString = SubString.toLowerCase();