A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

如题,s1与s2,用substring对s1截取字符串长度为s2的字符串,然后使用equals进行对比,若为真则计数器++

6 个回复

倒序浏览
你要是把相同字符串截断了怎么办
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
1.键盘录入一个大字符串,再录入一个小字符串
public static void main(String[] args) {
                //两个字符串s1和s2
                String s1 ="javajavavavajavajvajjvava";
                String s2 = "va";
                //定义计数器count
                int count = 0;
                //计数
                for (int a = 0; a < s1.length()-4; a++) {
                //if判断如果对s1截取长度为s2的字符串与s2相同,则计数器++
                        if (s1.substring(a, a+s2.length()).equals(s2)) {
                                count++;
                        }
                }
                // 输出
                System.out.println(count);
        }

回复 使用道具 举报
zhaorui 发表于 2017-3-31 22:30
你要是把相同字符串截断了怎么办

因为使用for循环,所以会从索引为0的位置开始截取,依次递增,应该不会影响吧
回复 使用道具 举报
for循环中的判断条件语句不对
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
精诚所至 发表于 2017-3-31 22:48
for循环中的判断条件语句不对

666 应该是s1.length-2因为之前判断的是java所以-4
回复 使用道具 举报
龙哮天 发表于 2017-3-31 22:51
666 应该是s1.length-2因为之前判断的是java所以-4

应该改成-s2.length()
来自宇宙超级黑马专属苹果客户端来自宇宙超级黑马专属苹果客户端
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马