有1、2、3、4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
1 String str=""; 2 //首先把所有组成的三位数全部存入字符串中 用#隔开 3 for (int i = 1; i <= 4; i++) { 4 for (int j = 1; j <= 4; j++) { 5 for (int k = 1; k <= 4; k++) { 6 int num = i * 100 + j * 10 + k; 7 str = num + "#"+str; 8 } 9 } 10 } 11 //按照#把字符串进行分割 输出字符串类型的三位数字 12 String s[]=str.split("#"); 13 String a,b,c; 14 int count=0; 15 //数组遍历 每个元素截取每一位 进行比较 16 for(int i=0;i<s.length;i++){ 17 a=s[i].substring(0, 1); 18 b=s[i].substring(1, 2); 19 c=s[i].substring(2, 3); 20 if(a.equals(b)==false&&b.equals(c)==false&&a.equals(c)==false){ 21 System.out.println(s[i]); 22 count++; 23 } 24 } 25 System.out.println("一共有"+count+"个这样的数。");
1 int count1=0; 2 for(int i=1;i<=4;i++){ 3 for(int j=1;j<=4;j++){ 4 for(int k=1;k<=4;k++){ 5 //判断只要三个数字不相同 就组成三位数并输出 6 if(i!=j&&i!=k&&j!=k){ 7 int num1=i*100+j*10+k; 8 count1++; 9 System.out.println(num1); 10 } 11 } 12 } 13 } 14 System.out.println("一共有"+count1+"个这样的数。");
结果: