Buggy code:
public class Strings { protected Strings ( ) { } public static boolean isChineseCharacter ( char c ) { } public static boolean isFullWidthCharacter ( char c ) { } public static char toHalfWidthCharacter ( char c ) { } public static String toHalfWidthString ( CharSequence str ) { } public static boolean isFullWidthString ( CharSequence str ) { } public static boolean isHalfWidthString ( CharSequence str ) { } public static int charLength ( CharSequence str ) { } public static String dup ( CharSequence cs , int num ) { } public static String dup ( char c , int num ) { } public static String capitalize ( CharSequence s ) { } public static String lowerFirst ( CharSequence s ) { } public static String upperFirst ( CharSequence s ) { } public static boolean equalsIgnoreCase ( String s1 , String s2 ) { } public static boolean equals ( String s1 , String s2 ) { } public static boolean startsWithChar ( String s , char c ) { } public static boolean endsWithChar ( String s , char c ) { } public static boolean isEmpty ( CharSequence cs ) { } public static boolean isBlank ( CharSequence cs ) { } public static String trim ( CharSequence cs ) { } public static String brief ( String str , int len ) { } public static String [ ] splitIgnoreBlank ( String s ) { } public static String [ ] splitIgnoreBlank ( String s , String regex ) { } public static String fillDigit ( int d , int width ) { } public static String fillHex ( int d , int width ) { } public static String fillBinary ( int d , int width ) { } public static String toDigit ( int d , int width ) { } public static String toHex ( int d , int width ) { } public static String toBinary ( int d , int width ) { } public static String cutRight ( String s , int width , char c ) { } public static String cutLeft ( String s , int width , char c ) { } public static String alignRight ( Object o , int width , char c ) { } public static String alignLeft ( Object o , int width , char c ) { } public static boolean isQuoteByIgnoreBlank ( CharSequence cs , char lc , char rc ) { } public static boolean isQuoteBy ( CharSequence cs , char lc , char rc ) { } public static boolean isQuoteBy ( String str , String l , String r ) { <START_BUG> if ( ( ( null == str ) && ( null != l ) ) && ( null != r ) ) <END_BUG> return false ; return ( str . startsWith ( l ) ) && ( str . endsWith ( r ) ) ; } public static int maxLength ( Collection < ? extends CharSequence > coll ) { } public static < T extends CharSequence > int maxLength ( T [ ] array ) { } public static String sNull ( Object obj ) { } public static String sNull ( Object obj , String def ) { } public static String sBlank ( Object obj ) { } public static String sBlank ( Object obj , String def ) { } public static String removeFirst ( CharSequence str ) { } public static String removeFirst ( String str , char c ) { } public static boolean isin ( String [ ] ss , String s ) { } public static final boolean isEmail ( CharSequence input ) { } public static String lowerWord ( CharSequence cs , char c ) { } public static String upperWord ( CharSequence cs , char c ) { } public static String escapeHtml ( CharSequence cs ) { } public static byte [ ] getBytesUTF8 ( CharSequence cs ) { } public static String num2hex ( int n ) { } public static int hex2num ( String hex ) { } }

Fix:
if ( ( ( null == str ) || ( null == l ) ) || ( null == r ) )