java调整字符串

复制代码
package 字符串练习;

public class 调整字符串 {
    /* 如果调整成功则给提示,返回不成功也给提示

       调整 例如:abcde -> bcdea -> cdeab 就是把第一个值放到最后的位置上
       现在是给定两个字符串, 选定其中一个进行调整, (我们想一下,如果调整字符串的长度次,那不就是返回到原来的字符串了吗,所以调整是可以有固定次数的)
     */
    public static void main(String[] args) {
        String str = "abcde";
        String str_result = "cedab";

        char[] str_char_array = str.toCharArray();
        char[] str_result_char_array = str_result.toCharArray();
        int signs = 0;

        for (int i = 0; i < str.length(); i++) {
            char sign = str_char_array[0];//记录头索引的值

            swap_Position(str,str_char_array);

            str_char_array[str_char_array.length - 1] = sign;//把头索引的值给最后索引位置上

            String new_char_str = new String(str_char_array);//把数组转换成字符串
            if(new_char_str.equals(str_result)){
                signs = 1;
                System.out.println("完毕,可以转换");
                break;
            }
            str_char_array = new_char_str.toCharArray();
        }

        if (signs == 0) {
            System.out.println("不可转换");
        }
    }


    public static void swap_Position(String str,char[] str_char_array ){
        for (int j = 0; j < str.length() - 1; j++) {
            str_char_array[j] = str_char_array[j+1];
        }//交换位置
    }
}
相关推荐
java资料站2 分钟前
springBootAdmin(sba)
java
小宇的天下10 分钟前
Calibre Introduction to Calibre 3DSTACK(1)
开发语言
AscendKing13 分钟前
接口设计模式的简介 优势和劣势
java
Vincent_Vang19 分钟前
多态 、抽象类、抽象类和具体类的区别、抽象方法和具体方法的区别 以及 重载和重写的相同和不同之处
java·开发语言·前端·ide
qualifying19 分钟前
JavaEE——多线程(3)
java·开发语言·java-ee
Fate_I_C21 分钟前
Kotlin 中的 suspend(挂起函数)
android·开发语言·kotlin
周亚鑫23 分钟前
vue3 js代码混淆
开发语言·javascript·ecmascript
陳103030 分钟前
C++:vector(1)
开发语言·c++
棉晗榜31 分钟前
WPF将程序集里面嵌入的资源文件下载到本机磁盘中,将项目中的文件下载到桌面
开发语言·wpf
花卷HJ32 分钟前
Android 下载管理器封装实战:支持队列下载、取消、进度回调与自动保存相册
android·java