有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何将StringBuilder附加到textarea,同时替换先前的字符串生成器?

所以string.appendstring2.appendStringBuilder我用来更快地从文本文件加载单词的对象,我的问题是,当我从单选按钮出现和字母顺序切换时,它只会添加到文本区域,而不是替换之前的列表。有没有办法解决这个问题

for(SuperString word : ss)
{
  count++;
  string.append(Integer.toString(count)+ "       "+ word+ "\n");
  string.toString();
}
if(occurrence.isSelected())
{
 textarea.setText("");
 textarea.append("    "+filename+" has wordcount: "+words.size()+
  "\n-------------------------\n\n");
 textarea.append(string.toString());
}


 for(SuperString word : ss2)
{
   count2++;
   string2.append(Integer.toString(count2)+ "       "+ word.toString()+ "\n");  
}
     if(alphabetical.isSelected())
{
  textarea.setText("");
  textarea.append(string2.toString());

}

共 (1) 个答案

  1. # 1 楼答案

    您可能正在寻找^{},它“只在新字符串为null或空时执行删除操作”然后你可以^{}0位置输入新文本

    textarea.replaceRange(null, 0, 0);
    textarea.insert(string2.toString(), 0);
    

    附录:以上内容无效

    如果提供了null或空String,则replaceRange()setText()都可以正确清除文本区域。后者在这个完整的example中有说明。由于代码中的其他地方可能存在问题,请验证是否在event dispatch thread上构造并操作了所有Swing GUI对象。特别注意append()no longer thread safe