Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当JTextArea为空时,我的代码计算错误的字数_Java_User Interface_Jtextarea_Word - Fatal编程技术网

Java 当JTextArea为空时,我的代码计算错误的字数

Java 当JTextArea为空时,我的代码计算错误的字数,java,user-interface,jtextarea,word,Java,User Interface,Jtextarea,Word,当我点击按钮时,我想计算某个JTextArea中的字数,但是当我在文本区域为空时运行代码时,我得到的字数是1。我不知道我的代码出了什么问题。这是我的密码 private void convertButton1MouseClicked(java.awt.event.MouseEvent evt) { String text = inputField.getText(); int wordCoun

当我点击按钮时,我想计算某个JTextArea中的字数,但是当我在文本区域为空时运行代码时,我得到的字数是1。我不知道我的代码出了什么问题。这是我的密码

private void convertButton1MouseClicked(java.awt.event.MouseEvent evt) {                                            
    String text = inputField.getText();
    int wordCount = text.split("\\s").length;
    numberOfWords.setText(String.valueOf(wordCount));

我对regex一无所知,但这似乎是split方法的默认行为

它似乎总是返回带有原始值的数组,即使该值恰好是空字符串

我尝试了一些简单的方法,比如:

public static void main(String[] args) throws Exception
{
    int wordCount = "".split("a").length;
    System.out.println( wordCount );
}
无论我尝试拆分哪个角色,它都会显示“1”

解决方案可能类似于:

    String text = inputField.getText();
    int wordCount = text.isEmpty() ? 0 : text.split("\\s").length;
    numberOfWords.setText(String.valueOf(wordCount));