title: Difference between two Calendar times. One hour more in result
body: <p>I have 2 times in calendar.</p>
  
  <pre><code>    Calendar orarioP1 = new GregorianCalendar(2014, 3, 28, 8, 30, 00);
      Calendar orarioA1 = new GregorianCalendar(2014, 3, 28, 12, 35, 06);  
  </code></pre>
  
  <p>I implemented this function for get the time difference but it return me +1hour difference.<br>
  I need to return the correct difference <code>4:05:06</code> but now it return me <code>5:05:06</code>. Can anyone help me?</p>
  
  <pre><code>public String getTimeDiff() {
  
      SimpleDateFormat sdf = new SimpleDateFormat("h:mm:ss");
      long milliSec1 = orarioP1.getTimeInMillis();
      long milliSec2 = orarioA1.getTimeInMillis();
  
      long timeDifInMilliSec;
      if(milliSec1 &gt;= milliSec2) {
          timeDifInMilliSec = milliSec1 - milliSec2;
      } else {
          timeDifInMilliSec = milliSec2 - milliSec1;
      }
  
      long timeDifSeconds = timeDifInMilliSec / 1000;
      long timeDifMinutes = timeDifInMilliSec / (60 * 1000);
      long timeDifHours = timeDifInMilliSec / (60 * 60 * 1000);
      long timeDifDays = timeDifInMilliSec / (24 * 60 * 60 * 1000);
  
      Date date = new Date(timeDifSeconds);
      String difference = sdf.format(date);
  
      return difference;
  }
  </code></pre>