Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.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 WordUtils.capitalize的替代方案?_Java_String - Fatal编程技术网

Java WordUtils.capitalize的替代方案?

Java WordUtils.capitalize的替代方案?,java,string,Java,String,我正在尝试使用WordUtils.capitalize(string)将字符串中的每个单词大写,因为它正是我想要的。然而,它现在被弃用了 我应该用什么方法来代替?还是我必须编写自己的方法?commons-lang3中的实现已被弃用。但是,相同的方法在commons text中实现。因此,您可以使用基本相同的方法,但需要添加一个新的.jar文件并调整import语句 从: 从3.6开始,改用公共文本字UTILS 如果使用Maven(或类似),请添加以下内容: <dependency>

我正在尝试使用
WordUtils.capitalize(string)
将字符串中的每个单词大写,因为它正是我想要的。然而,它现在被弃用了


我应该用什么方法来代替?还是我必须编写自己的方法?

commons-lang3中的实现已被弃用。但是,相同的方法在
commons text
中实现。因此,您可以使用基本相同的方法,但需要添加一个新的.jar文件并调整import语句

从:

从3.6开始,改用公共文本字UTILS

如果使用Maven(或类似),请添加以下内容:

<dependency>
  <groupId>org.apache.commons</groupId>
  <artifactId>commons-text</artifactId>
  <version>1.1</version>
</dependency>

org.apache.commons

:Apache Commons Text是一个专注于处理字符串的算法的库。

您可以使用Apache.Commons的:

公共静态字符串大写(字符串str)

根据将第一个字符更改为标题大小写的字符串大写 字符。toTitleCase(int)。不会更改其他字符

不要使用同一个包中的
WordUtils
类,而是使用
StringUtils
,这样您就不必通过添加额外的jar来更改项目配置

备选方案:

或者您可以自己实现,您可以尝试以下方法:

String str = "john";
String newStr = str.substring(0, 1).toUpperCase() + str.substring(1);

将在
StringUtils.capitalize(字符串)上打印
John

好的点
--这样可以避免添加另一个.jar文件。@KevinO是的,实际上它只是包的另一个类。WordUtils.capitalize将第一个字大写,其余字符转换为小写,而StringUtils.capitalize只将第一个字转换为大写,而不会将其余字符更改为大写lower@Aditya是的,这是这里请求的行为,只是第一个chnarcter应该更改:)不,请求是“将字符串中的每个单词大写”。示例:“甲板生成器”应更改为“甲板生成器”。使用StringUtils.capitalize可以获得“甲板生成器”。使用WordUtils.capitalize,您可以获得预期的“甲板生成器”,但这是不推荐的。所以用户正在寻找WordUtils.capitale的替代品,StringUtils.capitale提供了不同的结果。换句话说,这不是正确的答案。谢谢你的解决方案。我正在导入import org.apache.commons.text.WordUtils;这就是问题所在。这样一件奇怪的事情:导入commons文本,但不要使用该导入,而是使用commons.lang3.text中的导入*