Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 按格式化顺序生成随机字母数字字符串_Java_Random - Fatal编程技术网

Java 按格式化顺序生成随机字母数字字符串

Java 按格式化顺序生成随机字母数字字符串,java,random,Java,Random,请问如何在Java中以这种格式化的顺序生成一个随机数字符串。字符串长度为5个字符(按以下格式指定) 字母数字 每一个字符都是随机的,但格式如上所述 这是我目前遇到的问题:首先,它从字母表中随机打印50个字符 import java.util.Random; public class HelloWorld{ public static void main(String []args){ Random r = new Random(); String

请问如何在Java中以这种格式化的顺序生成一个随机数字符串。字符串长度为5个字符(按以下格式指定)

字母数字

每一个字符都是随机的,但格式如上所述

这是我目前遇到的问题:首先,它从字母表中随机打印50个字符

import java.util.Random;
public class HelloWorld{

     public static void main(String []args){
         Random r = new Random();

         String[] alphabet = {"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
         int[]    number = {1,2,3,4,5,6,7,8,9,0};
         for (int i = 0; i < 5; i++) {
             System.out.printf("%s,%s,%d,%d,%d\n", 
               alphabet[i].charAt(r.nextInt(alphabet.length())), 
               number[i].charAt(r.nextInt(number.length())) );
         } // prints 50 random characters from alphabet
     }
}
import java.util.Random;
公共类HelloWorld{
公共静态void main(字符串[]args){
随机r=新随机();
字符串[]字母={“A”、“B”、“C”、“D”、“E”、“F”、“G”、“H”、“I”、“J”、“K”、“L”、“M”、“N”、“O”、“P”、“Q”、“R”、“S”、“T”、“U”、“V”、“W”、“X”、“Y”、“Z”};
int[]数={1,2,3,4,5,6,7,8,9,0};
对于(int i=0;i<5;i++){
System.out.printf(“%s,%s,%d,%d,%d\n”,
字母[i].charAt(r.nextInt(alphabet.length()),
数字[i].charAt(r.nextInt(number.length());
}//从字母表中随机打印50个字符
}
}
如何修复它?

代码:

public class Try{
  public static void main(String args[]){
    System.out.println("Generated String : " + generate());
  }

  public static int random(int low, int high){
    return ((int)(Math.random()*(high-low)) + low);
  }

  public static String generate(){
    String result = "";
    result += (char)random(65, 91);
    result += (char)random(65, 91);
    result += random(0, 10);
    result += random(0, 10);
    result += random(0, 10);
    return result;
  }
}
┌─[jaysmito@parrot]─[~]
└──╼ $java Try.java
Generated String : UX426
┌─[jaysmito@parrot]─[~]
└──╼ $java Try.java
Generated String : NJ662
输出:

public class Try{
  public static void main(String args[]){
    System.out.println("Generated String : " + generate());
  }

  public static int random(int low, int high){
    return ((int)(Math.random()*(high-low)) + low);
  }

  public static String generate(){
    String result = "";
    result += (char)random(65, 91);
    result += (char)random(65, 91);
    result += random(0, 10);
    result += random(0, 10);
    result += random(0, 10);
    return result;
  }
}
┌─[jaysmito@parrot]─[~]
└──╼ $java Try.java
Generated String : UX426
┌─[jaysmito@parrot]─[~]
└──╼ $java Try.java
Generated String : NJ662

当前代码的问题是什么?请注意,您的介绍在五个部分之间使用了破折号(
-
),而
printf()
使用逗号。(该类的名称令人恼火。)