/* * @(#)BooleanUtils.java 5/27/2014 * * Copyright 2002 - 2014 JIDE Software Inc. All rights reserved. */ package com.jidesoft.utils; import com.jidesoft.range.BooleanRange; import com.jidesoft.range.Range; import java.util.List; public class BooleanUtils { /** * Returns the min boolean in the booleans list. * * @param booleans the booleans to calculate the min. * @return the min boolean in the booleans list. */ public static boolean min(List<Boolean> booleans) { for (boolean value : booleans) { if (!value) { return false; } } return true; } /** * Returns the max boolean in the booleans list. * * @param booleans the booleans to calculate the max. * @return the max boolean in the booleans list. */ public static boolean max(List<Boolean> booleans) { for (boolean value : booleans) { if (value) { return true; } } return false; } /** * Returns the range of booleans. * * @param booleans the booleans to calculate the range. * @return the range of the booleans. */ public static Range<Boolean> range(List<Boolean> booleans) { boolean min = true; boolean max = false; for (boolean value : booleans) { if (value) { max = true; } else { min = false; } if (max && !min) { // found break; } } return new BooleanRange(min, max); } }