【问题标题】:JTextArea display text and stringsJTextArea 显示文本和字符串
【发布时间】:2014-06-05 19:18:53
【问题描述】:

我有一个 JTextArea 并且希望能够添加多个参数,如下所示:messageArea.setText("Hi", name, "how are you today?"); 但是,我无法这样做,我不知道如何向 JTextArea 添加多个参数。

【问题讨论】:

  • 你的意思是串联字符串吗?就像组合这三个字符串以便它们可以作为一个字符串传递?如果是这样,只需使用“+”。所以应该是“嗨”+名字+“你今天好吗?”

标签: java string swing jtextarea settext


【解决方案1】:

setText() 方法采用单个 String 参数,因此您必须 concatenate 要显示的字符串。

StringBuilder sb = new StringBuilder();
sb.append("Hi").append(name).append(", how are you?");
messageArea.setText(sb.toString());

其他方法是简单地使用+ 运算符:

messageArea.setText("Hi"+name+"...");

或者使用MessageFormat类:

messageArea.setText(MessageFormat.format("Hi {0} how are you?", name));

【讨论】:

  • 为什么使用StringBuilder 而不是+
  • 我不是说要使用+。阅读 herehere 以供您学习,然后用您的发现更新帖子。
  • 同意,StringBuilder 有点过分了,但其余的答案都很棒。
  • 如果您连接多个字符串,使用可变 StringBuilder 类而不是使用 + 连接浪费资源始终是一个好习惯。在这种情况下确实不多,但是由于 OP 看起来像初学者,所以很高兴听到它。
  • 一般情况下,在 JDK 1.6+ 中,编译器会将+ 改为使用StringBuilder
猜你喜欢
  • 1970-01-01
  • 2019-02-05
  • 2012-05-27
  • 2012-11-27
  • 2010-10-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-03
相关资源
最近更新 更多