在类中编写一个方法,在另一个字符串搜索特定的字符串,如果前者存在于后一个字符串中,则该方法必须返回true

img


在类中编写一个方法,在另一个字符串搜索特定的字符串,如果前者存在于后一个字符串中,则该方法必须返回true

不能用内置函数,只能一个一个字符判断。
运行结果:

img

代码:


public class Test {
    
    public static boolean isSubString(String sub,String big){
        if(sub.length() > big.length())
            return false;
        int j = 0;
        for(int i=0;i<big.length();i++){
            for( j=0;j<sub.length();j++){
                if((i+j) < big.length() && sub.charAt(j) != big.charAt(i+j))
                    break;
            }
            if(j == sub.length())
                return true;
        }
        return false;
    }

    public static void main(String[] args) {
        System.out.println("isSubString(\"cat\",\"The cat in the hat.\") is "+ isSubString("cat","The cat in the hat."));
        System.out.println("isSubString(\"bat\",\"The cat in the hat.\") is "+ isSubString("bat","The cat in the hat."));
        
    }// main end 
} 


可以用find方法,看返回的index是否大于-1
或者不管传入的是什么,把它replace成空
然后判断replace前后字符串是否有变化
有变化就说明在里面
没有变化就说明不在

参考如下:

public class Test {
    public static void main(String []args) {
           boolean res = isSubString("cat", "The cat in the hat.");
        System.out.print("result is " + res);
    }
    
    public static boolean isSubString(String needle, String haystack) {
        if (haystack.indexOf(needle) != -1) {
            return true;
        }
        
        return false;
    }
}

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632