【字符串】【JAVA】P5734 【深基6.例6】文字处理软件

在这里插入图片描述

一道让我读半天题目都没有读明白的题,一开始想不明白输入的格式和题上的要求之间的关系是什么。
一开始输入的4,让我不是很明白要表达什么意思,感觉是一开始输入的字符串长度吧,但看输入样例的话,应该是5才对啊,我实在是想不到其他的含义了,先试试吧!
后面的是对应输入的操作,对应四种对字符串的操作,这里可以通过switch语句来实现,至于具体内容的实现,我想这些类应该都被封装好了。

写在后面
不得不说对于一些封装好的操作,java真的很方便,这段代码顺利AC。通过帮助文档,对于四个条件再总结一下。
同时对于这些字符的起始位置也是从0开始的,这和题上的字符从0开始是对应的。

1.String concat​(String str) 将指定的字符串连接到该字符串的末尾。 通过这个方法实现第一个操作。
2.String substring​(int beginIndex, int endIndex) 返回一个字符串,该字符串是该字符串的子字符串。
3.第三个是插入子串,我没有在String里面找到对应的方法,我记得StringBuilder里有这个方法,然后就想着可以把原来的字符串分成两段,然后再拼接起来这样也算插入一个子串。方法还是第二个操作的方法。
4.int indexOf​(String str) 返回指定子字符串首次出现在该字符串中的索引。

package LOQ.字符串;
import java.util.Scanner;
/*
字符串操作
 */
public class P5734 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n=sc.nextInt(); //起始输入字符串的长度,我感觉没什么用处
        String start = sc.next();   //起始字符串
        while(sc.hasNext()) {   //进行多次输入操作
            int num=sc.nextInt();   //执行操作的序号
            switch (num) {
                case 1:
                    start = start.concat(sc.next());
                    System.out.println(start);
                    break;
                case 2:
                    int a=sc.nextInt(),b=sc.nextInt();
                    start=start.substring(a,a+b);
                    System.out.println(start);
                    break;
                case 3:
                    int index=sc.nextInt(); //插入的起始位置
                    String sub=sc.next();   //子串
                    start=start.substring(0,index)+sub+start.substring(index);
                    System.out.println(start);
                    break;
                case 4:
                    System.out.println(start.indexOf(sc.next()));
                    break;
            }
        }
    }
}
  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值