question: public final static boolean endsWithIgnoreCase ( String str , String end ) { int strLength = str == null ? 0 : str . length ( ) ; int endLength = end == null ? 0 : end . length ( ) ; if ( endLength > strLength ) return false ; for ( int i = 1 ; i <= endLength ; i ++ ) { if ( ScannerHelper . toLowerCase ( end . charAt ( endLength - i ) ) != ScannerHelper . toLowerCase ( str . charAt ( strLength - i ) ) ) return false ; } return true ; }
target:  Returns true iff str.toLowerCase().endsWith(end.toLowerCase()) implementation is not creating extra strings. 