Mega Code Archive

 
Categories / Java / Data Type
 

Converts a Boolean to a boolean handling null

/*  * Licensed to the Apache Software Foundation (ASF) under one or more  * contributor license agreements.  See the NOTICE file distributed with  * this work for additional information regarding copyright ownership.  * 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.  */ /**  * <p>Operations on boolean primitives and Boolean objects.</p>  *  * <p>This class tries to handle <code>null</code> input gracefully.  * An exception will not be thrown for a <code>null</code> input.  * Each method documents its behaviour in more detail.</p>  *   * @author Stephen Colebourne  * @author Matthew Hawthorne  * @author Gary Gregory  * @since 2.0  * @version $Id: BooleanUtils.java 589050 2007-10-27 05:07:45Z bayard $  */ public class Main {      /**    * <p>Converts a Boolean to a boolean handling <code>null</code>.</p>    *     * <pre>    *   BooleanUtils.toBooleanDefaultIfNull(Boolean.TRUE, false) = true    *   BooleanUtils.toBooleanDefaultIfNull(Boolean.FALSE, true) = false    *   BooleanUtils.toBooleanDefaultIfNull(null, true)          = true    * </pre>    *    * @param bool  the boolean to convert    * @param valueIfNull  the boolean value to return if <code>null</code>    * @return <code>true</code> or <code>false</code>    */   public static boolean toBooleanDefaultIfNull(Boolean bool, boolean valueIfNull) {       if (bool == null) {           return valueIfNull;       }       return bool.booleanValue() ? true : false;   } }