您好,欢迎来到世旅网。
搜索
您的当前位置:首页javaSE基础-String类练习,手写字符串反转、获取最大包含字符串

javaSE基础-String类练习,手写字符串反转、获取最大包含字符串

来源:世旅网
/**
     * 字符串去除两端空格
     */
    @Test
    public void test1(){
        String str = "   adfadsfasdf   ";
        int start = 0,end = str.length()-1;
        while(start <= end && str.charAt(start) == ' '){
            start ++;
        }
        while(start <= end && str.charAt(end) == ' '){
            end --;
        }
        System.out.println(str.substring(start, end+1));
    }

    /**
     * 字符串反转
     */
    @Test
    public void reverseStr(){
        String str = "abcdefg";
        //字符串边数组
        char[] strArr = str.toCharArray();
        //反转数组
        reversArr(strArr);
        //将数组转换成字符串
        String nStr = new String(strArr);
        System.out.println(nStr);
    }

    //反转char类型数组
    private void reversArr(@NotNull char[] chars){
        for(int start = 0,end = chars.length-1; start < end; start++,end--){
            swap(chars, start, end);
        }
    }

    //交换方法
    private void swap(@NotNull char[] arr, int start, int end){
        char tempChar = arr[start];
        arr[start] = arr[end];
        arr[end] = tempChar;
    }

    /**
     * 获取两字符串中最大相同的字符串
     */
    @Test
    public void getMaxSubString(){
        String s1 = "qwerqwhellosfas";
        String s2 = "bcvhellods";
        //获取其中最小长度的字符串
        String minLengthStr = s2;
        if(s2.length() > s2.length()){
            minLengthStr = s1;
        }
        wai:for (int x = 0; x< s2.length(); x++){
            for (int y = 0, z = s2.length() - x; z != s2.length()+1; y++,z++){
                String tempStr = s2.substring(y, z);
                if(s1.contains(tempStr)){
                    System.out.println(tempStr);
                    break wai;
                }
            }
        }
    }

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- esig.cn 版权所有 湘ICP备2023023988号-3

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务