1、实验要求
本实验要求:根据用户输入的字符串,计算字符:”sh”重复出现的次数。
1-1. 创建工程并配置环境:
1-1.1. 限制1. 工程取名:SE_JAVA_EXP_E028。
1-1.2. 限制2. 创建包,取名:cn.campsg.java.experiment。
1-1.3. 限制3. 创建类,类名:AppearTime。
1-2. 获取用户输入的字符串:
1-2.1. 要求用户输入字符串,提示语句:” 请输入需要验证的字符串:”
1-3. 计算sh重复出现的次数:
1-3.1. 从字符串第0位字符开始,截取两位字符(第0和第1位字符)。
1-3.2. 判断该字符串是否为sh,如果是则计数加1。
1-3.3. 依次执行截取字符串的操作,直至判断结束。
1-3.4. 例如,有字符串:aashddshhshssh,执行判断操作如下:
1)从第0位截取字符到第1位截止,得字符串:aa。
2)判断该字符串是否为sh,如果是则计数加1。
3)从第1位截取字符到第2位截止,得字符串:as。
4)判断该字符串是否为sh,如果是则计数加1。
5)从第2位截取字符到第3位截止,得字符串:sh。
6)判断该字符串是否为sh,如果是则计数加1。
7)以此类推,判断至字符串末尾。
1-4. 打印结果
1-4.1. 向控制台输出:"sh在字符串中一共出现了" + 计数值 + "次"
2、实现思路
2-1. 按实验要求创建工程并配置环境。
2-2. 获取用户输入的字符串:
2-2.1. 创建Scanner对象,设置参数:System.in:
+ 提示 Scanner in=new Scanner(System.in); |
2-2.2. 调用Scanner的nextLine方法获取用户输入的字符串。
2-2.3. 调用close方法关闭Scanner。
2-3. 计算sh重复出现的次数:
2-3.1. 首先,定义一个整型的计数值变量,用于存储sh在字符串中出现的次数。
2-3.2. 其次,设计字符串的截取代码:
+ 提示 1)截取字符串,建议使用String类中的substring函数。 2)substring共包含两个参数,分别为:截取字符的开始位置,截取字符的结束位置 - 1 3)例如1:"hamburger".substring(4, 8) 结果为: "urge" 4)例如2:"smiles".substring(1, 5) 结果为: "mile" |
2-3.3. 随后,设计循环遍历用户输入的字符串:
1)循环初始条件:0(字符串的第0位)。
2)循环边界值:小于字符串长度 – 1(防止substring越界)。
2-3.4. 在循环中做匹配判断:
1)截取字符串,substring的第1个参数为:循环变量。
2)截取字符串,substring的第2个参数为:循环变量 + 2。
3)判断截取的字符串是否等于sh(使用equals函数)。
4)如果是,计数值变量 + 1。
2-4. 打印结果:
2-4.1. 向控制台输出:"sh在字符串中一共出现了" + 计数值 + "次"
package cn.campsg.java.experiment;
import java.util.Scanner;
public class AppearTime {public static void main(String[] args) {Scanner in=new Scanner(System.in);System.out.println(" 请输入需要验证的字符串:");String st;st=in.nextLine();in.close();int num=0;String flag="sh";for(int i=0;i<st.length()-1;i++) {String s=st.substring(i,i+2);//System.out.println("s:"+s);if(s.equals(flag))num++;}System.out.println("sh在字符串中一共出现了"+num+"次");}}