用Java实现以下描述:从键盘输入两个字符串,统计第二个字符串在第一个字符串中出现的次数并输出
时间: 2023-09-12 15:04:55 浏览: 224
### 回答1:
首先,需要使用 Java 的 Scanner 类从键盘输入两个字符串。下面是代码示例:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入第一个字符串:");
String str1 = scanner.nextLine();
System.out.print("请输入第二个字符串:");
String str2 = scanner.nextLine();
}
}
```
然后,可以使用 String 类的 `indexOf()` 方法来查找第二个字符串在第一个字符串中的位置,并使用一个计数器来统计出现的次数。
```
int count = 0;
int index = str1.indexOf(str2);
while (index != -1) {
count++;
index = str1.indexOf(str2, index + 1);
}
System.out.println(str2 + "在" + str1 + "中出现了" + count + "次");
```
完整代码如下:
```
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入第一个字符串:");
String str1 = scanner.nextLine();
System.out.print("请输入第二个字符串:");
String str2 = scanner.nextLine();
int count = 0;
int index = str1.indexOf(str2);
while (index != -1) {
count++;
index = str1.indexOf(str2, index + 1);
}
System.out.println(str2 + "在" + str1 + "中出现了" + count + "次");
}
}
```
### 回答2:
可以使用Java中的Scanner类来从键盘输入两个字符串,并使用String类的indexOf()方法来统计第二个字符串在第一个字符串中出现的次数。
首先,需要在代码中导入Scanner类和String类:
import java.util.Scanner;
然后,创建Scanner对象来接收键盘输入:
Scanner scanner = new Scanner(System.in);
接着,使用next()方法连续两次获取两个字符串:
String str1 = scanner.next();
String str2 = scanner.next();
接下来,使用一个变量counter来统计str2在str1中出现的次数,初始值为0:
int counter = 0;
然后,使用while循环和indexOf()方法来查找str2在str1中的位置,直到indexOf()方法返回-1为止:
int index = str1.indexOf(str2);
while(index != -1){
counter++;
index = str1.indexOf(str2, index + 1);
}
最后,输出统计的结果:
System.out.println("第二个字符串在第一个字符串中出现的次数为:" + counter);
完整代码如下:
import java.util.Scanner;
public class StringCount {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入第一个字符串:");
String str1 = scanner.next();
System.out.println("请输入第二个字符串:");
String str2 = scanner.next();
int counter = 0;
int index = str1.indexOf(str2);
while(index != -1){
counter++;
index = str1.indexOf(str2, index + 1);
}
System.out.println("第二个字符串在第一个字符串中出现的次数为:" + counter);
}
}
运行程序,可以输入两个字符串,并输出第二个字符串在第一个字符串中出现的次数。
### 回答3:
可以通过使用Java的Scanner类来从键盘输入字符串,然后使用String类的方法来统计出现次数。
首先,我们需要导入Scanner类和String类:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 创建Scanner对象来从键盘读取输入
Scanner scanner = new Scanner(System.in);
// 提示用户输入第一个字符串
System.out.print("请输入第一个字符串:");
String str1 = scanner.nextLine();
// 提示用户输入第二个字符串
System.out.print("请输入第二个字符串:");
String str2 = scanner.nextLine();
// 使用String类的方法统计出现次数
int count = 0;
int index = str1.indexOf(str2); // 找到第一个出现的位置
while (index != -1) {
count++;
index = str1.indexOf(str2, index + 1); // 继续查找下一个出现的位置
}
// 输出结果
System.out.println("第二个字符串在第一个字符串中出现的次数为:" + count);
// 关闭Scanner对象
scanner.close();
}
}
```
这段代码首先创建了一个Scanner对象来读取键盘输入,然后提示用户分别输入两个字符串。接下来,使用String类的indexOf方法来查找第二个字符串在第一个字符串中出现的位置。如果找到了一个位置,则计数器加1,并在该位置之后继续查找下一个出现的位置,直到找不到为止。最后将计数结果输出。
注意,此代码只统计了出现次数,而没有考虑区分大小写问题。如果要考虑大小写敏感问题,可以使用String类的equalsIgnoreCase方法来进行比较。
阅读全文