在Java中从Integer生成10字节八位字节数

时间:2017-09-26 09:15:26

标签: java

我需要在Java中以下面的格式生成一个10字节的数字

00:AA:BB:CC:DD:EE:FF:00:88:99
  • 第1个字节 - 应始终为0

  • 接下来的4个字节 - 应该从整数派生(将作为输入传递给方法)

  • 接下来的5个字节 - 可以是数字

不明白如何在java中实现它。任何示例或指针都会有所帮助。

1 个答案:

答案 0 :(得分:0)

要实现解决方案,请为给定字符串创建正则表达式,此代码应能够为您提供所需的结果。

 public static final String regex="";

  public static String getString() {

    String randString = generateRandomString();


    while (!randString.matches(regex)) {
            randString = generateRandomString();    }

    return randomPassword;
} 

  private static String generateRandomString() {

    final String chars = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:";
    Random random = new Random();
    StringBuffer passwordString = new StringBuffer();

    int passwordLength = random.nextInt(4) + 8; // Password length is 8 to
                                                // 11 chars.

    for (int i = 0; i < passwordLength; i++) {

        passwordString.append(chars.charAt(random.nextInt(chars.length())));
    }

    return passwordString.toString();
}

将正则表达式放在字符串“regex”中。