Mega Code Archive

 
Categories / Java Tutorial / Data Type
 

Returns a Date set to the last possible millisecond of the day, just before midnight

/*  * Licensed to the Apache Software Foundation (ASF) under one or more  *  contributor license agreements.  The ASF licenses this file to You  * under the Apache License, Version 2.0 (the "License"); you may not  * use this file except in compliance with the License.  * You may obtain a copy of the License at  *  *     http://www.apache.org/licenses/LICENSE-2.0  *  * Unless required by applicable law or agreed to in writing, software  * distributed under the License is distributed on an "AS IS" BASIS,  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  * See the License for the specific language governing permissions and  * limitations under the License.  For additional information regarding  * copyright in this work, please see the NOTICE file in the top level  * directory of this distribution.  */ import java.util.Calendar; import java.util.Date; public class Utils {   /**    * Returns a Date set to the last possible millisecond of the day, just    * before midnight. If a null day is passed in, a new Date is created.    * midnight (00m 00h 00s)    */   public static Date getEndOfDay(Date day) {       return getEndOfDay(day,Calendar.getInstance());   }      public static Date getEndOfDay(Date day,Calendar cal) {       if (day == null) day = new Date();       cal.setTime(day);       cal.set(Calendar.HOUR_OF_DAY, cal.getMaximum(Calendar.HOUR_OF_DAY));       cal.set(Calendar.MINUTE,      cal.getMaximum(Calendar.MINUTE));       cal.set(Calendar.SECOND,      cal.getMaximum(Calendar.SECOND));       cal.set(Calendar.MILLISECOND, cal.getMaximum(Calendar.MILLISECOND));       return cal.getTime();   } }