title: Distinguish between a single click and a double click in Java
body: <p>I search the forum and see this codes:</p>
  
  <pre><code>            public void mouseClicked(MouseEvent e) {
              if (e.getClickCount() == 2) {
                  System.out.println("  and it's a double click!");
                  wasDoubleClick = true;
              } else {
                  Integer timerinterval = (Integer) Toolkit.getDefaultToolkit().getDesktopProperty(
                          "awt.multiClickInterval");
                  timer = new Timer(timerinterval.intValue(), new ActionListener() {
  
                      public void actionPerformed(ActionEvent evt) {
                          if (wasDoubleClick) {
                              wasDoubleClick = false; // reset flag
                          } else {
                              System.out.println("  and it's a simple click!");
                          }
                      }
                  });
                  timer.setRepeats(false);
  
                  timer.start();
              }
  
          }
  </code></pre>
  
  <p>but the code runs incorrectly(Sometime it prints out "  and it's a single click!" 2 times . It should print out "  and it's a double click!"). Can anybody show me why? or can you give me some better ways to do this?
  Thank you!</p>