Day17 String API

1. 判断一个字符串是否是回文串 例如"abc"不是对称字符串,“aba”、“abba”、“aaa”、"mnanm"是对称字符串

import java.util.Scanner;

public class day1701 {
    public static void main(String[] args) {
        //键盘录入字符串
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入字符:");
        String words = sc.nextLine();
        //调用判断方法
        System.out.println(fun(words));
    }
    //判断是否为回文串的方法
    public static String fun(String string){
        //将输入的字符串转换成字符数组,便于判断
        char[] chars = string.toCharArray();
        for (int i = 0; i < chars.length / 2; i++) {
            if (chars[i] != chars[chars.length - 1]) {//判断回文串
                return "该字符串不是回文串";
            }
        }
        //符合条件
        return "该字符是回文串";
    }
}

思路:自定义方法返回是否为字符串,方法为将字符串转换成数组比较相对应的字符是否相等.

2. 统计大串中小串出现的次数 举例:在字符串” woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun”中java出现了5次

public class day1702 {
    public static void main(String[] args) {
        //创建大串和小串字符
        String bigStr = "woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun";
        String smallStr = "java";
        //定义计数变量
        int count = 0;
        for (int i = 0; i < bigStr.length(); i++) {
            //判断字符串中是否含有smallStr
            boolean tem = bigStr.contains(smallStr);
            //找到在第几位出现了smallStr
            i=bigStr.indexOf(smallStr);
            if (tem == true) {//找到一次count加上1
                count++;
                //将字符串变为从上次找到smallStr(不包括)处开始下次循环
                bigStr=bigStr.substring(i+smallStr.length());
            }
        }
        System.out.println(smallStr+"共出现了"+count+"次");
    }
}

思路:利用string的contains API判断大串中是否含有小串,若含有则循环查找,其中利用indexof API返回找到后的初始位置,然后加上小串的长度使得大串不包括前面已经查找到的字符串,最后输出计数变量.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值