JAVA如何将另一个字符串添加到stringbuilder?

问题描述 投票:0回答:1

我有这部分代码,我无法正确理解。我知道它会根据数据库中的值构建一个字符串。我认为这只是title

private String createSearchFieldContent(Report report) {
  return createSearchFieldContent(report.getTitle(), report.getDescription());
}

private String createSearchFieldContent(OverrideableStringValue title,
                                        OverrideableStringValue description) {

  StringBuilder builder = new StringBuilder(getValue(title));
  if (StringUtils.isNotBlank(getValue(description))) {
    builder.append(" ").append(getValue(description));
  }
  String searchTerm = StringUtils.replaceAll(builder.toString(), "\n", " ");
  return unaccent(searchTerm);
}

我还有另一个要添加到searchTerm的值。它存储在report.getOwner()中。我怎么可能建立一个包含searchTermtitledescription的新owner

谢谢!

java spring spring-boot search
1个回答
0
投票

您可以将新数据分配给searchTerm:

searchTerm = StringUtils.replaceAll(builder.toString(), "\n", " ")

成为

String part2 = "something you want to add"; 
searchTerm = searchTerm + part2;

或者您可以使用StringBuilder将新数据附加到

builder.append("new data")
builder.append("newer data")

这被添加到StringBuilder中,该字符串包含在searchTerm的字符串值中。


-2
投票

尝试下面的代码:

private String createSearchFieldContent(Report report) {
  return createSearchFieldContent(report.getTitle(), report.getDescription(), report.getOwner());
}

private String createSearchFieldContent(OverrideableStringValue title,
                                        OverrideableStringValue description, OverrideableStringValue owner) {

  StringBuilder builder = new StringBuilder(getValue(title));
  if (StringUtils.isNotBlank(getValue(description))) {
    builder.append(" ").append(getValue(description));
  }
  if (StringUtils.isNotBlank(getValue(owner))) {
    builder.append(" ").append(getValue(owner));
  }
  String searchTerm = StringUtils.replaceAll(builder.toString(), "\n", " ");
  return unaccent(searchTerm);
}
© www.soinside.com 2019 - 2024. All rights reserved.