求java 小程序 123随机排列组合 3位 111 112 113 121 122 123 131 132 133 ....

我想请分析下,求java 小程序 123随机排列组合 3位 111 112 113 121 122 123 131 132 133 ....
最新回答
浅墨时光

2024-07-02 04:32:51

public class Testb {
public static void main(String[] args){
String[] strs =new String[]{"1","2","3"};
List list =new ArrayList<String>();
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
for(int k=0;k<3;k++){
list.add(strs[i]+""+strs[j]+""+strs[k]);
}
}
}
System.out.println(list);
}
};
3*3*3=27种!
冰河铺子

2024-07-02 05:34:09

你 要的是 所有的组合 还是用 math.random()方法 通过对4余模 得到一个随机的下标 确定 数字?不知道 一楼的是不是你要的答案,
package com.baidu.lib;

public class Myrandom {
public static void main(String[] args) {
// TODO Auto-generated method stub
int m =0;
int[] strs =new int[]{1,2,3};
while(m<3){
int i =(int) (Math.random()*10);
int n =i%4;
strs[m]=n;
}
}
}
著墨染雨君画夕

2024-07-02 02:49:19

我用.net写了一个 你改为java就可以了 随机哦
private void WriteNum()
{
IList<string> arrayNum = new List<string>();
int[] str = { 1,2,3};
while (true)
{
//等于最多可能的组合 结束循环
if (arrayNum.Count == 27)
break;
Random r = new Random();
string result = null;
for (int i = 0; i < str.Length; i++)
{
result=result+str[r.Next(3)].ToString();
}
if (arrayNum.Contains(result))//如果存在数字 继续循环
continue;
else
arrayNum.Add(result);//如果不存在 添加到集合中
}
for (int i = 0; i < arrayNum.Count; i++)
{
Console.WriteLine(arrayNum[i]);
}
}
糖↘甜到傷痛

2024-07-02 03:14:11

'