Java 生成与用户输入长度相同的数字
我不知道这个题目是否适合我要问的问题Java 生成与用户输入长度相同的数字,java,Java,我不知道这个题目是否适合我要问的问题 String input = scan.nextLine(); for(int ip=0; ip<=input.length(); ip++) { Random rg = new Random(); int n = rg.nextInt(ip=input.length()); System.out.println(Integer.toBinaryString(n)); } String input=scan.nextLine(); 对于(i
String input = scan.nextLine();
for(int ip=0; ip<=input.length(); ip++)
{
Random rg = new Random();
int n = rg.nextInt(ip=input.length());
System.out.println(Integer.toBinaryString(n));
}
String input=scan.nextLine();
对于(int ip=0;ip您可以使用循环并检查n的值,如果其二进制具有相同的长度,则打印。代码如下:
Scanner scan = new Scanner(System.in);
String input = scan.nextLine();
for(int ip=0; ip<=input.length(); ip++){
Random rg = new Random();
int n = 0;
while((n = rg.nextInt(ip=input.length()*input.length())) < Math.pow(2, input.length()-1)
&& (n = rg.nextInt(ip=input.length()*input.length())) > Math.pow(2, input.length()))
{
continue;
}
System.out.println(Integer.toBinaryString(n));
}
Scanner scan=新的扫描仪(System.in);
字符串输入=scan.nextLine();
for(int ip=0;ip Math.pow(2,input.length()))
{
继续;
}
System.out.println(Integer.toBinaryString(n));
}
rg.nextInt(5),因此它将给出从0到4的随机值,如果您将其转换为二进制,您将获得最多3位数字。您可以在开始时附加0。我的问题是..如果用户输入8个字符怎么办?随机生成器也必须打印出8个字符
// note that StringUtils in org.apache.commons.lang3.StringUtils
private static final String getRandomBinaryNumber() {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter input: ");
String input = scanner.next();
System.out.println();
int len = input.length();
System.out.println("Input length: " + len);
Random rg = new Random();
Integer randomInt = rg.nextInt((int) Math.pow(2, len));
String binaryString = Integer.toBinaryString(randomInt);
final String result = StringUtils.leftPad(binaryString, len, "0");
System.out.println("Random output: " + result);
return result;
}