gpt4 book ai didi

java - 寻找 RandomStringUtils 的简洁替代品

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:52:41 27 4
gpt4 key购买 nike

This question is obsolete. org.apache.commons:commmons-lang3:3.7 removed the deprecated flag, and 3.8 confirmed that.

3.5 更新到 org.apache.commons:commons-lang3:3.6 后,我收到许多关于 RandomStringUtils 被弃用的警告。建议的替代方案是 commons-text 中的 RandomStringGenerator。但是,如果您只需要一个字符串(例如,在单元测试中),那么使用该类会非常笨拙。比较:

String name1 = RandomStringUtils.randomAlphabetic(FIRST_NAME_LENGTH);
String name2 = new RandomStringGenerator.Builder().withinRange('a', 'z').build()
.generate(FIRST_NAME_LENGTH);

(我知道这甚至不是相同的语义,但我想保持简短。)

所以我正在寻找一种简短而优雅的方式,最好是直接替代;欢迎使用 Java 8、Spring、Guava 甚至仅测试库。

最佳答案

我会考虑使用 Facade pattern包装 RandomStringGenerator 类的“笨拙”。

示例:

public class RandomStringUtilsFacade
{
public static String randomAlphabetic (final int firstNameLength)
{
return randomAlphabetic(firstNameLength, 'a', 'z');
}

// If you want to use the range
public static String randomAlphabetic (final int firstNameLength,
final char low, final char high)
{
return new RandomStringGenerator.Builder().withinRange(low, high).build()
.generate(firstNameLength);
}
}

关于java - 寻找 RandomStringUtils 的简洁替代品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44763513/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com