0

当我在使用 getText() 方法的 TextField 中不输入任何内容时。获取的值是多少。?

String s = jTextField1.getText();
if(s==null)
{
 JOptionPane.showMessageDialog(null,"No Input");
}

值是否为空?

4

2 回答 2

3

AJTextField什么都没有,它通常会返回一个空的String...

String s = jTextField1.getText();
if (s.isEmpty()) {...}

但是, aJTextField可能并不总是完全为空,并且可能包含空格,如果您对您很重要,您可以使用...

String s = jTextField1.getText();
if (s.trim().isEmpty()) {...}

相反,例如

于 2013-10-04T07:39:52.773 回答
1

如果您遵循 的源代码getText(),您将获得此方法:

/**
 * Retrieves a portion of the content.  where + len must be <= length().
 *
 * @param where the starting position >= 0
 * @param len the length to retrieve >= 0
 * @return a string representing the content; may be empty
 * @exception BadLocationException if the specified position is invalid
 * @see AbstractDocument.Content#getString
 */
public String getString(int where, int len) throws BadLocationException {
    if (where + len > count) {
        throw new BadLocationException("Invalid range", count);
    }
    return new String(data, where, len);
}

在课堂javax.swing.text.StringContent上。

所以答案是:。它不会返回null。它将返回一个空的String.

于 2013-10-04T07:38:19.450 回答