11.13对String类型的小练习

 一个简单的题目:

   给你一个偶数长度的字符串 s 。将其拆分成长度相同的两半,前一半为 a ,后一半为 b 。两个字符串 相似 的前提是它们都含有相同数目的元音('a','e','i','o','u','A','E','I','O','U')。注意,s 可能同时含有大写和小写字母。如果 a  b 相似,返回 true ;否则,返回 false。

先来分析一波,一个偶数长度的字符串一定可以劈成两半。前面一半和后面一半中包含的(虽然对元音字母可能不太了解但是这里完全不需要) 这个{'a','e','i','o','u','A','E','I','O','U'}字符串里面的字母的数目是相同的那么就返回true,反之返回false。

上代码;

    public static void main(String[] args) {
        String str="aeiouAEIOU";//将所有元音字母做成一个字符串;
        Scanner input=new Scanner(System.in);
        System.out.println("请输入一个偶数长的字符串:");
        String s= input.next();//输入一个字符串
        if (s.length()%2==0){//进行判断是否为偶数,防止报错
            String a=s.substring(0,s.length()/2);//给前半段定义一个字符串a
            String b=s.substring(s.length()/2);//同理定义
            int count1=0;//定义a中的元音个数
            int count2=0;//定义b中的元音个数
            for (int i = 0; i <s.length()/2; i++) {//循环a字符串
                if (str.indexOf(a.charAt(i))!=-1){//判断a中是否有str中的字母
                    count1++;//有count1就加一
                }}
                for (int i = 0; i <s.length()/2; i++) {
                    if (str.indexOf(b.charAt(i))!=-1){
                        count2++;
                    }//同理
        }
                if (count1==count2){//然后判断个数是否相同
                    System.out.println(true);
                }else {
                    System.out.println(false);
                }
    }else {
            System.out.println("输入不正确!");//最后对输入错误的进行输出
//当然我这里还少了一种判断他是否为字母组成的字符串的判断
        }
}

此处的代码为小伙个人对StringBuffer进行的小小联系

//        String s = sb.toString();
//        System.out.println(s);
//        StringBuffer append = sb.append(1);
//        System.out.println(append.toString());
//        String string = sb.append(" java spark kafka flume flink").insert(12, "hadoop ").toString();
//        System.out.println(string);
//        StringBuffer love=new StringBuffer("我真的很你");
//        String l=love.toString();
//        String s1=love.append("java").insert(4,"爱").toString();
//        System.out.println(s1);
        String s="1234567890";
        StringBuffer s1=new StringBuffer(s);
        System.out.println(s1);
//        String s=s1.insert(7,",").toString();
//         s=s1.insert(4,",").toString();
//         s=s1.insert(1,",").toString();
        for (int i = s1.length(); i >0; i=i-3) {
             s=s1.insert(i,",").toString();
        }
        System.out.println(s);

顺带再带上StringBuffer的方法

StringBuffer:

 

 

主要挑重点方法记住就差不多了,我看着这么多太难了

String类型的我就不给图了,可以去idea中ctrl+o看方法哦。(肯定不是我懒的缘故!!)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值