A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

还没完成求大神解答

package com.heima.Test1;

public class Test1 {

        /**
         * 分析以下需求,并用代码实现:
                (1)打印由6,7,8,9四个数组组成的四位数,要求该四
       
        位数中任意两位数字不能相同
                (2)打印格式最后的四位数字以空格分隔,如6789 6798
         */
        public static void main(String[] args) {
                int[] arr={6,7,8,9};
                StringBuffer sb = new StringBuffer();
                for (int x = 0; x < arr.length; x++) {
                                       
                                        for(int y=0;y<arr.length-1;y++){
                                                for(int i = 0;i<arr.length-2;i++){
                                                        for (int j = 0; j < arr.length; j++) {
                                                                sb.append(arr[j]);
                                                        }
                                                        sb.append(" ");
                                                        if(y!=arr.length-1)
                                                                swap(arr,arr.length-2,arr.length-1);
                                                }
                                                if(y+2!=arr.length)
                                                        swap(arr,1,y+2);
                                        }

                                        if(x+1!=arr.length)
                                                swap(arr,0,x+1);
                                        sb.append("\n");
                                }
                System.out.println(sb);
        }

        public static void swap(int []arr,int a,int b)
        {
                      int temp = arr[a];
                                      arr[a] = arr[b];
                                      arr[b] = temp;
                }

}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马