net.sf.cglib.util

## Class StringSwitcher

- java.lang.Object
- - net.sf.cglib.util.StringSwitcher

-     public abstract class StringSwitcher
      extends java.lang.Object

  This class implements a simple String->int mapping for a fixed set of keys.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `StringSwitcher.Generator`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static StringSwitcher` | `create(java.lang.String[] strings, int[] ints, boolean fixedInput)` Helper method to create a StringSwitcher.
    `abstract int` | `intValue(java.lang.String s)` Return the integer associated with the given key.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### create

          public static StringSwitcher create(java.lang.String[] strings,
                              int[] ints,
                              boolean fixedInput)

      Helper method to create a StringSwitcher. For finer control over the generated instance, use a new instance of StringSwitcher.Generator instead of this static method.
      Parameters:
        `strings` - the array of String keys; must be the same length as the value array
        `ints` - the array of integer results; must be the same length as the key array
        `fixedInput` - if false, an unknown key will be returned from `intValue(java.lang.String)` as `-1`; if true, the result will be undefined, and the resulting code will be faster

    - #### intValue

          public abstract int intValue(java.lang.String s)

      Return the integer associated with the given key.
      Parameters:
        `s` - the key
      Returns:
        the associated integer value, or `-1` if the key is unknown (unless `fixedInput` was specified when this `StringSwitcher` was created, in which case the return value for an unknown key is undefined)

Copyright (c) 2001 - Apache Software Foundation