标签:计算 new tar inpu 题目 archive lin out 语法错误
下方给定的程序中,函数fun的功能是:统计substr在str中的出现次数。
比如说,字符串为aaab ljsuab
,子字符串为ab
,那么返回的结果为2.
请修改程序中的错误,使能计算正确的结果。
注意:不要修改main函数,也不要更改程序的结构。
题目中可能既会出现语法错误,也会出现逻辑错误哦~
相信你可以搞定,试试吧。
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner input = new Scanner(System.in);
String str = input.nextLine();
String substr = input.nextLine();
System.out.println(fun(str, substr));
}
static int fun(String str, String substr)
{
int count = 0;
return count;
}
}
aaab ljsuab
ab
2
package javaexam;
import java.util.Scanner;
public class CountSubStr
{
public static void main(String[] args)
{
Scanner input = new Scanner(System.in);
String str = input.nextLine();
String substr = input.nextLine();
System.out.print(fun(str, substr));
}
static int fun(String str, String substr)
{
int count = 0, start = 0;
while((start = str.indexOf(substr, start) + 1) > 0)
{
++count;
}
return count;
}
}
注:Java中字符串中子串的查找共有四种方法(indexof())
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner input = new Scanner(System.in);
String str = input.nextLine();
String substr = input.nextLine();
System.out.println(fun(str, substr));
}
static int fun(String str, String substr)
{
int count = 0;
for(int i = 0; i < (str.length() - substr.length() + 1); ++i)
{
if(str.substring(i, i + substr.length()).equals(substr))
++count;
}
return count;
}
}
aaab ljsuab
ab
2
标签:计算 new tar inpu 题目 archive lin out 语法错误
原文地址:https://www.cnblogs.com/narisu/p/9057891.html