public String getString(int key) {
        Any3<Boolean, Integer, String> value = data.get(Any2.<Integer, String>left(key));
        if (value == null)
            throw new IllegalArgumentException("missing argument for param " + key);
        return value.get3().orElseThrow(() -> new IllegalArgumentException("expected string argument for param " + key));
    }
public String getString ( int key ) { Any3 < Boolean , Integer , String > value = data . get ( Any2 . < Integer , String > left ( key ) ) ; if ( value == null ) throw new IllegalArgumentException ( "missing argument for param " + key ) ; return value . get3 ( ) . orElseThrow ( ( ) -> new IllegalArgumentException ( "expected string argument for param " + key ) ) ; }
Return the string value indicated by the given numeric key.

@param key The key of the value to return.
@return The string value stored under the given key.
@throws IllegalArgumentException if the value is absent or not a string.