有没有办法在java中生成与字母组合的ID?
Posted
技术标签:
【中文标题】有没有办法在java中生成与字母组合的ID?【英文标题】:Is there any way to generate ID combined with alphabets in java? 【发布时间】:2014-02-12 06:16:56 【问题描述】:我创建了一个学生注册项目,我需要为那些在我的网站上注册的人自己提供注册号。我的注册 ID 应该是 ABC0000001 等等。我尝试了以下代码来生成注册号。
for(int i=0000001;i<3;i++)
System.out.println("ABC"+i);
但我得到的输出为 ABC1 ABC2 ABC3。这不是必需的。请指教。
【问题讨论】:
【参考方案1】:数字没有重要的前导零。 (没关系,代码实际上在 Java 中使用 八进制 数字文字。)
参见String.format
和Format Syntax。特别是,'0' flag、width 修饰符和 'd'(十进制整数)转换在这里很有用。
for(int i=1; i<3; i++)
// % - start of format
// 0 - 0-pad the result
// 7 - set result width to 7 characters wide
// d - display as decimal integer
String id = String.format("ABC%07d", i);
System.out.println(id);
【讨论】:
+1 干得好!它适用于所有人吗?即长,浮动等? @ShaileshSaxenad
整数转换“可应用于 Java 整数类型:byte、Byte、short、Short、int 和 Integer、long、Long 和 BigInteger”(参见转换部分格式语法,上面链接)。要显示浮点数,请使用f
之类的浮点转换之一,或者在将其作为参数传递之前将其转换为整数类型。【参考方案2】:
这样做
for(int i=1;i<3;i++)
System.out.println("ABC00000"+i);
【讨论】:
以上是关于有没有办法在java中生成与字母组合的ID?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Java 中生成与 Python 示例等效的 HMAC?
如何在 Java 中生成与 Python 示例等效的 HMAC?
如何在 Java(Android)中生成与 .Net 中相同的 AES 密钥?