如何向 stringbuilder 添加另一个字符串?

How can I add another string to stringbuilder?

我有这部分代码我理解不正确。我知道它会根据数据库中的值构建一个字符串。我认为这只是 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() 中。我怎么可能构建一个包含 titledescriptionowner 的新 searchTerm

谢谢!

试试下面的代码:

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);
}

在上面的代码中,我们像其他两个一样将 owner 属性传递给 createSearchFieldContent 方法,然后将 owner 属性附加到字符串生成器对象,就像描述一样。

您可以将新数据分配给 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 的字符串值中。