java - Swing:JTextField的初始String为空String

标签 java swing jtextfield isnullorempty

关于JTextField 的构造函数,javadoc说:

public JTextField()

Constructs a new TextField. A default model is created, the initial string is null, and the number of columns is set to 0.

但是当我使用这个构造函数时,JTextField 的方法getText() 返回一个空的String,例如:

boolean b = new JTextField().getText().isEmpty();  // returns true.

为什么 getText() 返回的值是一个空的 String 而不是 null

最佳答案

JTextField 从 Document 获取文本,默认实现 PlainDocument 从不返回 null。即使您尝试调用 JTextField.setText(null),它只会清除文档内容的值,但 getText 仍将返回空字符串。

关于java - Swing:JTextField的初始String为空String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39205576/

相关文章:

java - 如何访问 Swing JTextField/JPasswordField 内的值?

Java设计: Decouple JNI Library

java - 分别运行Lagom Service Locator/Kafka/Cas​​sandra

java - 在不阻塞 UI 的情况下将大量项目添加到 ListModel

java - Valign JPanel 不工作

java - 从 JTextPane 获取不带 HTML 标签的文本

java - 为什么 Collection 接口(interface)中的方法再次在 List 接口(interface)中声明,尽管 List extends Collection

Java:如何通过鼠标单击中断程序执行中途

java - JTextField 仅在窗口大小更改时更新大小

java - 如何从内部类更改文本字段中的文本?