Class CompactByteArray

  • All Implemented Interfaces:
    Cloneable

    @Deprecated
    public final class CompactByteArray
    extends Object
    implements Cloneable
    Deprecated.
    This API is ICU internal only.
    class CompactATypeArray : use only on primitive data types Provides a compact way to store information that is indexed by Unicode values, such as character properties, types, keyboard values, etc.This is very useful when you have a block of Unicode data that contains significant values while the rest of the Unicode data is unused in the application or when you have a lot of redundance, such as where all 21,000 Han ideographs have the same value. However, lookup is much faster than a hash table. A compact array of any primitive data type serves two purposes:
    • Fast access of the indexed values.
    • Smaller memory footprint.
    A compact array is composed of a index array and value array. The index array contains the indicies of Unicode characters to the value array.
    Author:
    Helena Shih
    See Also:
    CompactCharArray
    • Field Detail

      • UNICODECOUNT

        @Deprecated
        public static final int UNICODECOUNT
        Deprecated.
        This API is ICU internal only.
        The total number of Unicode characters.
        See Also:
        Constant Field Values
    • Constructor Detail

      • CompactByteArray

        @Deprecated
        public CompactByteArray()
        Deprecated.
        This API is ICU internal only.
        Default constructor for CompactByteArray, the default value of the compact array is 0.
      • CompactByteArray

        @Deprecated
        public CompactByteArray​(byte defaultValue)
        Deprecated.
        This API is ICU internal only.
        Constructor for CompactByteArray.
        Parameters:
        defaultValue - the default value of the compact array.
      • CompactByteArray

        @Deprecated
        public CompactByteArray​(char[] indexArray,
                                byte[] newValues)
        Deprecated.
        This API is ICU internal only.
        Constructor for CompactByteArray.
        Parameters:
        indexArray - the indicies of the compact array.
        newValues - the values of the compact array.
        Throws:
        IllegalArgumentException - If the index is out of range.
      • CompactByteArray

        @Deprecated
        public CompactByteArray​(String indexArray,
                                String valueArray)
        Deprecated.
        This API is ICU internal only.
        Constructor for CompactByteArray.
        Parameters:
        indexArray - the RLE-encoded indicies of the compact array.
        valueArray - the RLE-encoded values of the compact array.
        Throws:
        IllegalArgumentException - if the index or value array is the wrong size.
    • Method Detail

      • elementAt

        @Deprecated
        public byte elementAt​(char index)
        Deprecated.
        This API is ICU internal only.
        Get the mapped value of a Unicode character.
        Parameters:
        index - the character to get the mapped value with
        Returns:
        the mapped value of the given character
      • setElementAt

        @Deprecated
        public void setElementAt​(char index,
                                 byte value)
        Deprecated.
        This API is ICU internal only.
        Set a new value for a Unicode character. Set automatically expands the array if it is compacted.
        Parameters:
        index - the character to set the mapped value with
        value - the new mapped value
      • setElementAt

        @Deprecated
        public void setElementAt​(char start,
                                 char end,
                                 byte value)
        Deprecated.
        This API is ICU internal only.
        Set new values for a range of Unicode character.
        Parameters:
        start - the starting offset of the range
        end - the ending offset of the range
        value - the new mapped value
      • compact

        @Deprecated
        public void compact()
        Deprecated.
        This API is ICU internal only.
        Compact the array.
      • compact

        @Deprecated
        public void compact​(boolean exhaustive)
        Deprecated.
        This API is ICU internal only.
        Compact the array.
      • getIndexArray

        @Deprecated
        public char[] getIndexArray()
        Deprecated.
        This API is ICU internal only.
        For internal use only. Do not modify the result, the behavior of modified results are undefined.
      • getValueArray

        @Deprecated
        public byte[] getValueArray()
        Deprecated.
        This API is ICU internal only.
        For internal use only. Do not modify the result, the behavior of modified results are undefined.
      • clone

        @Deprecated
        public Object clone()
        Deprecated.
        This API is ICU internal only.
        Overrides Cloneable
        Overrides:
        clone in class Object
      • equals

        @Deprecated
        public boolean equals​(Object obj)
        Deprecated.
        This API is ICU internal only.
        Compares the equality of two compact array objects.
        Overrides:
        equals in class Object
        Parameters:
        obj - the compact array object to be compared with this.
        Returns:
        true if the current compact array object is the same as the compact array object obj; false otherwise.
      • hashCode

        @Deprecated
        public int hashCode()
        Deprecated.
        This API is ICU internal only.
        Generates the hash code for the compact array object
        Overrides:
        hashCode in class Object