New methods for StringUtils class: equalsAny and equalsAnyIgnoreCase
--------------------------------------------------------------------

                 Key: LANG-704
                 URL: https://issues.apache.org/jira/browse/LANG-704
             Project: Commons Lang
          Issue Type: New Feature
          Components: lang.*
         Environment: N/A - it is a feature request.
            Reporter: Rafal Glowinski
            Priority: Minor


It would be very good if the StringUtils class provided 2 methods for testing 
String equality with more than one value at a time. 
Methods could be written as follows:

{code:title=StringUtils.java|borderStyle=solid}
    /**
     * Verifies if the tested string is equal with any of the provided strings.
     * This method is null safe and case sensitive.
     * 
     * @param str Tested string
     * @param any Strings to be tested against.
     * @return true if tested string is equal to any of the provided strings. 
false otherwise.
     */
    public static boolean equalsWithAny(String str, String... any) {
        if (str == null) {
            return false;
        }
        
        if (any == null) {
            return false;
        }
        
        for (String s : any) {
            if (str.equals(s)) {
                return true;
            }
        }
        
        return false;
    }
    
    /**
     * Verifies if the tested string is equal with any of the provided strings.
     * This method is null safe and case insensitive.
     * 
     * @param str Tested string
     * @param any Strings to be tested against.
     * @return true if tested string is equal to any of the provided strings. 
false otherwise.
     */    
    public static boolean equalsWithAnyIgnoreCase(String str, String... any) {
        if (str == null) {
            return false;
        }
        
        if (any == null) {
            return false;
        }
        
        for (String s : any) {
            if (str.equalsIgnoreCase(s)) {
                return true;
            }
        }
        
        return false;
    }
{code}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to