Java Boolean From toBooleanValue(Object val)

Here you can find the source of toBooleanValue(Object val)

Description

Returns true or false based on a "soft" object

License

Open Source License

Parameter

Parameter Description
val a boolean value as a Boolean object, String or number

Return

true or false

Declaration

public static boolean toBooleanValue(Object val) 

Method Source Code

//package com.java2s;
/*/* ww  w.  j a va  2  s.c om*/
 * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores
 * CA 94065 USA or visit www.oracle.com if you need additional information or
 * have any questions.
 */

public class Main {
    /**
     * Returns true or false based on a "soft" object
     * @param val a boolean value as a Boolean object, String or number
     * @return true or false
     */
    public static boolean toBooleanValue(Object val) {
        if (val == null) {
            return false;
        }
        if (val instanceof Boolean) {
            return ((Boolean) val).booleanValue();
        }
        if (val instanceof String) {
            String sl = ((String) val).toLowerCase();
            return sl.startsWith("t") || sl.equals("1");
        }
        return toIntValue(val) != 0;
    }

    /**
     * Returns the number object as an int
     * @param number this can be a String or any number type
     * @return an int value or an exception
     */
    public static int toIntValue(Object number) {
        if (number == null) {
            return 0;
        }
        // we should convert this to use Number
        if (number instanceof Integer) {
            return ((Integer) number).intValue();
        }
        if (number instanceof String) {
            String n = (String) number;
            if (n.length() == 0 || n.equals(" ")) {
                return 0;
            }
            return Integer.parseInt(n);
        }
        if (number instanceof Double) {
            return ((Double) number).intValue();
        }
        if (number instanceof Float) {
            return ((Float) number).intValue();
        }
        if (number instanceof Long) {
            return ((Long) number).intValue();
        }
        /*if(number instanceof Short) {
        return ((Short)number).intValue();
        }
        if(number instanceof Byte) {
        return ((Byte)number).intValue();
        }*/
        if (number instanceof Boolean) {
            Boolean b = (Boolean) number;
            if (b.booleanValue()) {
                return 1;
            }
            return 0;
        }
        throw new IllegalArgumentException("Not a number: " + number);
    }
}

Related

  1. toBooleans(byte[] bytes)
  2. toBooleans(byte[] value, int offset, int num)
  3. toBooleanString(long value)
  4. toBooleanTrue(String str)
  5. toBooleanValue(final Object o)
  6. toBoolStr(boolean b)
  7. toBoolString(Boolean b)