字符(正序)逆序输出,并插入新字符(Java)

将英文字母正序和逆序输出,并差入一个新的字符,插入之后字符序列仍保持有序

import java.util.Arrays;
import java.util.Scanner;

public class Qjc {
    public static void main(String[] args) {
        char[] chars=new char[]{'a','c','u','b','e','p','f','z'};
        System.out.print("原字符序列:");
        for (int i = 0; i < chars.length ; i++) {
            System.out.print(chars[i]+" ");
        }
        Arrays.sort(chars);
        System.out.print("\n正序排序后:");
        for (int i = 0; i < chars.length ; i++) {
            System.out.print(chars[i]+" ");
        }
        System.out.print("\n逆序输出为:");
        for (int i = chars.length-1; i >=0 ; i--) {
            System.out.print(chars[i]+" ");
        }
        char[] newchars=new char[chars.length+1];
        for (int i = 0; i < chars.length; i++) {
            newchars[i]=chars[i];
        }
        System.out.print("\n待插入的字符是:");
        Scanner input=new Scanner(System.in);
        char letter=input.next().charAt(0);
        int index=newchars.length-1;
        for (int i = 0; i < newchars.length-1; i++) {
            if(newchars[i]>letter){
                index=i;
                break;
            }
        }
        System.out.println("插入字符的下标是:"+index);
        for (int i = newchars.length-2; i >=index ; i--) {
            newchars[i+1]=newchars[i];
        }
        newchars[index]=letter;
        System.out.print("插入后的字符序列是:");
        for (int i = 0; i < newchars.length ; i++) {
            System.out.print(newchars[i]+" ");
        }

    }
}

猜你喜欢

转载自blog.csdn.net/m0_74016429/article/details/133517931