Class NumericalUtility

java.lang.Object
org.refcodes.numerical.NumericalUtility

public final class NumericalUtility extends Object
This class contains some useful static methods for working with bitwise operations objects.

CATION: This class may not have an optimized runtime behavior!

  • Method Summary

    Modifier and Type
    Method
    Description
    static int[]
    convertDigits(int aFromBase, int[] aDigits, int aToBase)
    Converts an array of digits of the provided "from" number base to an array of digits of the provided "to" number base.
    static String
    convertNumberBase(int aFromBase, char[] aFromCharSet, String aDigits, int aToBase, char[] aToCharSet)
    Converts a digits' String of the provided "from" number base to a digits' String of the provided "to" number base using the "from" and "to" char sets as digit representatives.
    static String
    convertNumberBase(int aFromBase, String aDigits, int aToBase)
    Converts a digits' String of the provided "from" number base to a digits' String of the provided "to" number base.
    static long
    fromDigits(int aFromBase, int[] aDigits)
    Converts an array of digits of the provided number base to a value.
    static long
    fromNumberBase(int aFromBase, char[] aFromCharSet, String aDigits)
    Converts a digits String of the provided number base to a value using the char set as digit representatives.
    static long
    fromNumberBase(int aFromBase, String aDigits)
    Converts a digits String of the provided number base to a value.
    static boolean
    isBitSetAt(long aValue, int aPosition)
    Determines the whether a bit at a given position of the provided is set.
    static byte
    setBitAt(byte aValue, int aPos, boolean aBit)
    Sets the bit of the given value at the given bit position as specified.
    static int
    sum(int... aSummands)
    Calculates the sum from the provided summands.
    static byte[]
    toBigEndianBytes(double aValue)
    Converts the given value to a byte array in big endian notation.
    static byte[]
    toBigEndianBytes(float aValue)
    Converts the given value to a byte array in big endian notation.
    static byte[]
    toBigEndianBytes(int aValue)
    Converts the given value to a byte array in big endian notation.
    static byte[]
    toBigEndianBytes(long aValue)
    Converts the given value to a byte array in big endian notation.
    static byte[]
    toBigEndianBytes(long aValue, int aLength)
    Converts the given value to a byte array in big endian notation.
    static byte[]
    toBigEndianBytes(short aValue)
    Converts the given value to a byte array in big endian notation.
    static boolean
    toBoolean(String aValue)
    Converts the given String to a boolean value.
    static boolean[]
    toBooleans(byte[] aBytes)
    Converts the bits contained within the given byte array to a boolean array.
    static boolean[]
    toBooleans(byte[] aBytes, int aLength)
    Converts the bits contained within the given byte array to a boolean array.
    static boolean[]
    toBooleans(byte[] aBytes, int aOffset, int aLength)
    Converts the bits contained within the given byte array to a boolean array.
    static byte[]
    toBytes(boolean[] aBits)
    Converts a boolean array to a byte array using the byte's bits to represent the according boolean values.
    static byte[]
    toBytes(int aInteger)
    Converts a integer value to an array of bytes, left byte being the most significant one (highest order).
    static byte[]
    toBytes(long aLong)
    Converts a long value to an array of bytes, left byte being the most significant one (highest order).
    static byte[]
    toBytes(Double aDouble)
    Converts a double value to an array of bytes, left(?)
    static byte[]
    toBytes(String aString)
    Converts a String containing "verbose" bytes into an array of bytes.
    static byte[]
    toBytes(String aString, boolean isHexString)
    Converts a String containing "verbose" bytes into an array of bytes.
    static int[]
    toDigits(long aValue, int aToBase)
    Converts a value to an array of digits of the provided number base.
    static double
    toDouble(int aIntValue, double aMinDouble, double aMaxDouble)
    Converts the given integer value to a double of the given range.
    static double
    toDouble(long aLongValue, double aMinDouble, double aMaxDouble)
    Converts the given long value to a double of the given range.
    static double
    toDouble(String aString)
    Creates a double between 0 and 1 from a String; useful e.g. when creating a number from a pass-phrase.
    static double
    toDoubleFromBigEndianBytes(byte[] aBigEndian)
    Converts a byte array in big endian to a double value.
    static double
    toDoubleFromLittleEndianBytes(byte[] aLittleEndian)
    Converts a byte array in big little to a double value.
    static double[]
    toDoubles(String aString, int aCount)
    Creates an array with double values between 0 and 1 from a String useful e.g. when creating a bunch of numbers from a pass-phrase.
    static float
    toFloatFromBigEndianBytes(byte[] aBigEndian)
    Converts a byte array in big endian to a float value.
    static float
    toFloatFromLittleEndianBytes(byte[] aLittleEndian)
    Converts a byte array in big little to a float value.
    static int
    toHashCode(Object... aObjects)
    Calculates a hash code from the given object's hash codes.
    static int
    Calculates a Java-Version's implementation independent Hash-Code.
    static int[]
    toHashCodes(char[] aSource, int aCount)
    Creates a given number of IDs from the provided source text.
    static int[]
    toHashCodes(String aSource, int aCount)
    Creates a given number of IDs from the provided source text.
    static String
    toHexString(byte aByte)
    Converts the provided byte to a hexadecimal String representation.
    static String
    toHexString(byte... aBytes)
    Converts the provided bytes to a hexadecimal String representation.
    static String
    toHexString(byte[] aBytes, int aBytesPerLine)
    Converts the provided bytes to a hexadecimal String representation.
    static String
    toHexString(byte[] aBytes, String aByteSeparator)
    Converts the provided bytes to a hexadecimal String representation.
    static String
    toHexString(byte[] aBytes, String aByteSeparator, int aBytesPerLine)
    Converts the provided bytes to a hexadecimal String representation.
    static String
    toHexString(int aBytesPerLine, byte... aBytes)
    Converts the provided bytes to a hexadecimal String representation.
    static String
    toHexString(String aByteSeparator, byte... aBytes)
    Converts the provided bytes to a hexadecimal String representation.
    static String
    toHexString(String aByteSeparator, int aBytesPerLine, byte... aBytes)
    Converts the provided bytes to a hexadecimal String representation.
    static int
    toInt(byte[] aBytes)
    Converts an integer value from the given byte array.
    static int
    toInt(byte[] aBytes, int aOffset)
    Converts an integer value from the given byte array.
    static int
    toIntFromBigEndianBytes(byte[] aBigEndian)
    Converts a byte array in big endian to an integer value.
    static int
    toIntFromLittleEndianBytes(byte[] aLittleEndian)
    Converts a byte array in little endian to an integer value.
    static byte[]
    toLittleEndianBytes(double aValue)
    Converts the given value to a byte array in big endian notation.
    static byte[]
    toLittleEndianBytes(float aValue)
    Converts the given value to a byte array in big endian notation.
    static byte[]
    toLittleEndianBytes(int aValue)
    Converts the given value to a byte array in little endian notation.
    static byte[]
    toLittleEndianBytes(long aValue)
    Converts the given value to a byte array in little endian notation.
    static byte[]
    toLittleEndianBytes(long aValue, int aLength)
    Converts the given value to a byte array in little endian notation.
    static byte[]
    toLittleEndianBytes(short aValue)
    Converts the given value to a byte array in little endian notation.
    static long
    toLong(byte[] aBytes)
    Converts a long value from the given byte array.
    static long
    toLong(byte[] aBytes, int aOffset)
    Converts a long value from the given byte array.
    static long
    toLong(String aString)
    Creates a long from a String; useful e.g. when creating a number from a pass-phrase.
    static long
    toLongFromBigEndianBytes(byte[] aBigEndian)
    Converts a byte array in big endian to a long value.
    static long
    toLongFromLittleEndianBytes(byte[] aLittleEndian)
    Converts a byte array in little endian to a long value.
    static String
    Generates a md5 hash of the given text.
    static String
    toNumberBase(long aValue, int aToBase)
    Converts a value to a String of digits of the provided number base.
    static String
    toNumberBase(long aValue, int aToBase, char[] aToCharSet)
    Converts a value to a String of digits of the provided number base using the char set as digit representatives.
    static double
    toScaled(double aValue, double aMin, double aMax)
    Scales the given value (which must be between 0 .. 1 to be between aMin .. aMax.
    static short
    toShortFromBigEndianBytes(byte[] aBigEndian)
    Converts a byte array in big endian to an short value.
    static short
    toShortFromLittleEndianBytes(byte[] aLittleEndian)
    Converts a byte array in little endian to an short value.
    static short[]
    toShorts(byte[] aBytes)
    Converts a byte array to a short array.
    static byte[]
    toUnsignedBigEndianBytes(byte[] aBigEndian)
    Converts the given byte array to a byte array representing an unsigned value.
    static byte[]
    Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in big endian notation.
    static byte[]
    Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in big endian notation.
    static byte[]
    toUnsignedBigEndianBytes(long aValue, int aLength)
    Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in big endian notation.
    static byte[]
    Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in big endian notation.
    static int
    Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in big endian to a long value.
    static int
    toUnsignedIntFromLittleEndianBytes(byte[] aLittleEndian)
    Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in big endian to a long value.
    static byte[]
    toUnsignedLittleEndianBytes(byte[] aLittleEndian)
    Converts the given byte array to a byte array representing an unsigned value.
    static byte[]
    Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in little endian notation.
    static byte[]
    Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in little endian notation.
    static byte[]
    toUnsignedLittleEndianBytes(long aValue, int aLength)
    Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in little endian notation.
    static byte[]
    Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in little endian notation.
    static long
    toUnsignedLong(int aSignedIntValue)
    Converts a signed int to an unsigned long value.
    static long
    Converts the given "unsigned" (it is to be treated as if it were unsigned)a byte array in big endian to a long value.
    static long
    Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in little endian to a long value.
    static short
    Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in big endian to a long value.
    static short
    Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in big endian to a long value.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • toNumberBase

      public static String toNumberBase(long aValue, int aToBase)
      Converts a value to a String of digits of the provided number base.
      Parameters:
      aValue - The value to be converted.
      aToBase - The number base to which to convert.
      Returns:
      The according digits' String.
    • fromNumberBase

      public static long fromNumberBase(int aFromBase, String aDigits)
      Converts a digits String of the provided number base to a value.
      Parameters:
      aFromBase - The number base from which to convert.
      aDigits - The digits' String to be converted back to a value.
      Returns:
      The according value.
    • convertNumberBase

      public static String convertNumberBase(int aFromBase, String aDigits, int aToBase)
      Converts a digits' String of the provided "from" number base to a digits' String of the provided "to" number base.
      Parameters:
      aFromBase - The number base from which to convert.
      aDigits - The digits' String to be converted.
      aToBase - The number base to which to convert.
      Returns:
      The accordingly converted digits' String.
    • toNumberBase

      public static String toNumberBase(long aValue, int aToBase, char[] aToCharSet)
      Converts a value to a String of digits of the provided number base using the char set as digit representatives.
      Parameters:
      aValue - The value to be converted.
      aToBase - The number base to which to convert.
      aToCharSet - The char set representing the digits.
      Returns:
      The according digits' String.
    • fromNumberBase

      public static long fromNumberBase(int aFromBase, char[] aFromCharSet, String aDigits)
      Converts a digits String of the provided number base to a value using the char set as digit representatives.
      Parameters:
      aFromBase - The number base from which to convert.
      aFromCharSet - The char set representing the digits.
      aDigits - The digits' String to be converted back to a value.
      Returns:
      The according value.
    • convertNumberBase

      public static String convertNumberBase(int aFromBase, char[] aFromCharSet, String aDigits, int aToBase, char[] aToCharSet)
      Converts a digits' String of the provided "from" number base to a digits' String of the provided "to" number base using the "from" and "to" char sets as digit representatives.
      Parameters:
      aFromBase - The number base from which to convert.
      aFromCharSet - The char set representing the digits.
      aDigits - The digits' String to be converted.
      aToBase - The number base to which to convert.
      aToCharSet - The char set representing the digits.
      Returns:
      The accordingly converted digits' String.
    • toDigits

      public static int[] toDigits(long aValue, int aToBase)
      Converts a value to an array of digits of the provided number base.
      Parameters:
      aValue - The value to be converted.
      aToBase - The number base to which to convert.
      Returns:
      The according digits.
    • fromDigits

      public static long fromDigits(int aFromBase, int[] aDigits)
      Converts an array of digits of the provided number base to a value.
      Parameters:
      aFromBase - The number base from which to convert.
      aDigits - The digits to be converted back to a value.
      Returns:
      The according value.
    • convertDigits

      public static int[] convertDigits(int aFromBase, int[] aDigits, int aToBase)
      Converts an array of digits of the provided "from" number base to an array of digits of the provided "to" number base.
      Parameters:
      aFromBase - The number base from which to convert.
      aDigits - The digits to be converted.
      aToBase - The number base to which to convert.
      Returns:
      The accordingly converted digits.
    • isBitSetAt

      public static boolean isBitSetAt(long aValue, int aPosition)
      Determines the whether a bit at a given position of the provided is set.
      Parameters:
      aValue - The value which's bits to test.
      aPosition - The position of the bit in question.
      Returns:
      True in case it is set, else false,
    • setBitAt

      public static byte setBitAt(byte aValue, int aPos, boolean aBit)
      Sets the bit of the given value at the given bit position as specified.
      Parameters:
      aValue - The value where to set the bit.
      aPos - The bit of the value which to set accordingly.
      aBit - The value of the bit.
      Returns:
      The byte with the according bit set accordingly.
    • toBytes

      public static byte[] toBytes(String aString) throws IllegalArgumentException, NumberFormatException
      Converts a String containing "verbose" bytes into an array of bytes. The String might look as follows: "100,12,0x14, 0xFF". Hexadecimal values must(!) be prefixed with "X0" or "x0"!
      Parameters:
      aString - The String which is to be converted into bytes.
      Returns:
      The according byte array.
      Throws:
      IllegalArgumentException - in case the provided String contains illegal characters.
      NumberFormatException - in case the String contains values which cannot be parsed.
    • toBytes

      public static byte[] toBytes(String aString, boolean isHexString) throws IllegalArgumentException, NumberFormatException
      Converts a String containing "verbose" bytes into an array of bytes. The String might look as follows: "100,12,0x14, 0xFF"
      Parameters:
      aString - The String which is to be converted into bytes.
      isHexString - True in case you provide a hexadecimal String which may not have "0X" prefixed to its values. E.g. each value is treated as being hexadecimal.
      Returns:
      The according byte array.
      Throws:
      IllegalArgumentException - in case the provided String contains illegal characters.
      NumberFormatException - in case the String contains values which cannot be parsed.
    • toBytes

      public static byte[] toBytes(long aLong)
      Converts a long value to an array of bytes, left byte being the most significant one (highest order).
      Parameters:
      aLong - The long value to be converted
      Returns:
      The array of bytes representing the long value.
    • toBytes

      public static byte[] toBytes(int aInteger)
      Converts a integer value to an array of bytes, left byte being the most significant one (highest order).
      Parameters:
      aInteger - The integer value to be converted
      Returns:
      The array of bytes representing the long value.
    • toBytes

      public static byte[] toBytes(boolean[] aBits)
      Converts a boolean array to a byte array using the byte's bits to represent the according boolean values. Attention: Trailing bits of the last byte might need to be ignored in case the length of the boolean array is not a multiple of 8.
      Parameters:
      aBits - The boolean array to convert.
      Returns:
      The byte array which's bits represent the according boolean array's values.
    • toBooleans

      public static boolean[] toBooleans(byte[] aBytes)
      Converts the bits contained within the given byte array to a boolean array.
      Parameters:
      aBytes - The bytes to be converted.
      Returns:
      The according boolean array.
    • toBooleans

      public static boolean[] toBooleans(byte[] aBytes, int aLength)
      Converts the bits contained within the given byte array to a boolean array.
      Parameters:
      aBytes - The bytes to be converted.
      aLength - The length of the resulting boolean array.
      Returns:
      The according boolean array.
    • toBooleans

      public static boolean[] toBooleans(byte[] aBytes, int aOffset, int aLength)
      Converts the bits contained within the given byte array to a boolean array.
      Parameters:
      aBytes - The bytes to be converted.
      aOffset - The offset of the bytes from where to start converting.
      aLength - The length of the resulting boolean array.
      Returns:
      The according boolean array.
    • toLong

      public static long toLong(byte[] aBytes)
      Converts a long value from the given byte array.
      Parameters:
      aBytes - The bytes to convert.
      Returns:
      The resulting long value.
    • toLong

      public static long toLong(byte[] aBytes, int aOffset) throws IllegalArgumentException
      Converts a long value from the given byte array.
      Parameters:
      aBytes - The bytes to convert.
      aOffset - The offset from where to start conversion.
      Returns:
      The resulting long value.
      Throws:
      IllegalArgumentException - the illegal argument exception
    • toInt

      public static int toInt(byte[] aBytes)
      Converts an integer value from the given byte array.
      Parameters:
      aBytes - The bytes to convert.
      Returns:
      The resulting integer value.
    • toInt

      public static int toInt(byte[] aBytes, int aOffset)
      Converts an integer value from the given byte array.
      Parameters:
      aBytes - The bytes to convert.
      aOffset - The offset from where to start conversion.
      Returns:
      The resulting integer value.
    • toShorts

      public static short[] toShorts(byte[] aBytes)
      Converts a byte array to a short array.
      Parameters:
      aBytes - The bytes to be converted to short.
      Returns:
      The according short array.
    • toBytes

      public static byte[] toBytes(Double aDouble)
      Converts a double value to an array of bytes, left(?) byte being the most significant one (highest order).
      Parameters:
      aDouble - The double value to be converted
      Returns:
      The array of bytes representing the double value.
    • toLong

      public static long toLong(String aString)
      Creates a long from a String; useful e.g. when creating a number from a pass-phrase.
      Parameters:
      aString - The String to be converted to a long value.
      Returns:
      The long value from the String
    • toDouble

      public static double toDouble(String aString)
      Creates a double between 0 and 1 from a String; useful e.g. when creating a number from a pass-phrase.
      Parameters:
      aString - The String to be converted to a double value.
      Returns:
      The double value between 0 and 1 from the String.
    • toDoubles

      public static double[] toDoubles(String aString, int aCount)
      Creates an array with double values between 0 and 1 from a String useful e.g. when creating a bunch of numbers from a pass-phrase.
      Parameters:
      aString - The String to be converted to a double value.
      aCount - The number of doubles to create.
      Returns:
      The array with double values between 0 and 1 from the String.
    • toHashCode

      public static int toHashCode(Object... aObjects)
      Calculates a hash code from the given object's hash codes.
      Parameters:
      aObjects - The objects for which to calculate the has codes.
      Returns:
      The hash codes for the given objects.
    • toUnsignedLong

      public static long toUnsignedLong(int aSignedIntValue)
      Converts a signed int to an unsigned long value. This is not do a simple ABS function, here we take a look at the bits of the value and calculate which the unsigned (positive) value would be. The positive value is returned in a (signed) long value.
      Parameters:
      aSignedIntValue - The signed integer value.
      Returns:
      The unsigned long value.
    • toLittleEndianBytes

      public static byte[] toLittleEndianBytes(long aValue, int aLength)
      Converts the given value to a byte array in little endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      aLength - The number of bytes to use.
      Returns:
      The according array.
    • toLittleEndianBytes

      public static byte[] toLittleEndianBytes(long aValue)
      Converts the given value to a byte array in little endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toLittleEndianBytes

      public static byte[] toLittleEndianBytes(int aValue)
      Converts the given value to a byte array in little endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toLittleEndianBytes

      public static byte[] toLittleEndianBytes(short aValue)
      Converts the given value to a byte array in little endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toBigEndianBytes

      public static byte[] toBigEndianBytes(long aValue, int aLength)
      Converts the given value to a byte array in big endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      aLength - The number of bytes to use.
      Returns:
      The according array,
    • toBigEndianBytes

      public static byte[] toBigEndianBytes(long aValue)
      Converts the given value to a byte array in big endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toBigEndianBytes

      public static byte[] toBigEndianBytes(int aValue)
      Converts the given value to a byte array in big endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toBigEndianBytes

      public static byte[] toBigEndianBytes(short aValue)
      Converts the given value to a byte array in big endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toUnsignedLittleEndianBytes

      public static byte[] toUnsignedLittleEndianBytes(long aValue, int aLength)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in little endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      aLength - The number of bytes to use.
      Returns:
      The according array.
    • toUnsignedLittleEndianBytes

      public static byte[] toUnsignedLittleEndianBytes(long aValue)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in little endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toUnsignedLittleEndianBytes

      public static byte[] toUnsignedLittleEndianBytes(int aValue)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in little endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toUnsignedLittleEndianBytes

      public static byte[] toUnsignedLittleEndianBytes(short aValue)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in little endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toUnsignedBigEndianBytes

      public static byte[] toUnsignedBigEndianBytes(long aValue, int aLength)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in big endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      aLength - The number of bytes to use.
      Returns:
      The according array.
    • toUnsignedBigEndianBytes

      public static byte[] toUnsignedBigEndianBytes(long aValue)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in big endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toUnsignedBigEndianBytes

      public static byte[] toUnsignedBigEndianBytes(int aValue)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in big endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toUnsignedBigEndianBytes

      public static byte[] toUnsignedBigEndianBytes(short aValue)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) value to a byte array in big endian notation.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toLongFromLittleEndianBytes

      public static long toLongFromLittleEndianBytes(byte[] aLittleEndian)
      Converts a byte array in little endian to a long value.
      Parameters:
      aLittleEndian - The byte array to be converted.
      Returns:
      The resulting long value.
    • toUnsignedLongFromLittleEndianBytes

      public static long toUnsignedLongFromLittleEndianBytes(byte[] aLittleEndian)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in little endian to a long value.
      Parameters:
      aLittleEndian - The byte array to be converted.
      Returns:
      The resulting long value.
    • toLongFromBigEndianBytes

      public static long toLongFromBigEndianBytes(byte[] aBigEndian)
      Converts a byte array in big endian to a long value.
      Parameters:
      aBigEndian - The byte array to be converted.
      Returns:
      The resulting long value.
    • toUnsignedLongFromBigEndianBytes

      public static long toUnsignedLongFromBigEndianBytes(byte[] aBigEndian)
      Converts the given "unsigned" (it is to be treated as if it were unsigned)a byte array in big endian to a long value.
      Parameters:
      aBigEndian - The byte array to be converted.
      Returns:
      The resulting long value.
    • toIntFromLittleEndianBytes

      public static int toIntFromLittleEndianBytes(byte[] aLittleEndian)
      Converts a byte array in little endian to an integer value.
      Parameters:
      aLittleEndian - The byte array to be converted.
      Returns:
      The resulting integer value.
    • toUnsignedIntFromLittleEndianBytes

      public static int toUnsignedIntFromLittleEndianBytes(byte[] aLittleEndian)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in big endian to a long value.
      Parameters:
      aLittleEndian - The byte array to be converted.
      Returns:
      The resulting long value.
    • toIntFromBigEndianBytes

      public static int toIntFromBigEndianBytes(byte[] aBigEndian)
      Converts a byte array in big endian to an integer value.
      Parameters:
      aBigEndian - The byte array to be converted.
      Returns:
      The resulting integer value.
    • toUnsignedIntFromBigEndianBytes

      public static int toUnsignedIntFromBigEndianBytes(byte[] aBigEndian)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in big endian to a long value.
      Parameters:
      aBigEndian - The byte array to be converted.
      Returns:
      The resulting long value.
    • toShortFromLittleEndianBytes

      public static short toShortFromLittleEndianBytes(byte[] aLittleEndian)
      Converts a byte array in little endian to an short value.
      Parameters:
      aLittleEndian - The byte array to be converted.
      Returns:
      The resulting short value.
    • toUnsignedShortFromLittleEndianBytes

      public static short toUnsignedShortFromLittleEndianBytes(byte[] aLittleEndian)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in big endian to a long value.
      Parameters:
      aLittleEndian - The byte array to be converted.
      Returns:
      The resulting long value.
    • toShortFromBigEndianBytes

      public static short toShortFromBigEndianBytes(byte[] aBigEndian)
      Converts a byte array in big endian to an short value.
      Parameters:
      aBigEndian - The byte array to be converted.
      Returns:
      The resulting short value.
    • toUnsignedShortFromBigEndianBytes

      public static short toUnsignedShortFromBigEndianBytes(byte[] aBigEndian)
      Converts the given "unsigned" (it is to be treated as if it were unsigned) byte array in big endian to a long value.
      Parameters:
      aBigEndian - The byte array to be converted.
      Returns:
      The resulting long value.
    • toUnsignedLittleEndianBytes

      public static byte[] toUnsignedLittleEndianBytes(byte[] aLittleEndian)
      Converts the given byte array to a byte array representing an unsigned value.
      Parameters:
      aLittleEndian - The byte array to be converted to be unsigned.
      Returns:
      The unsigned byte array, usually one byte longer.
    • toUnsignedBigEndianBytes

      public static byte[] toUnsignedBigEndianBytes(byte[] aBigEndian)
      Converts the given byte array to a byte array representing an unsigned value.
      Parameters:
      aBigEndian - The byte array to be converted to be unsigned.
      Returns:
      The unsigned byte array, usually one byte longer.
    • toFloatFromBigEndianBytes

      public static float toFloatFromBigEndianBytes(byte[] aBigEndian)
      Converts a byte array in big endian to a float value.
      Parameters:
      aBigEndian - The byte array to be converted.
      Returns:
      The resulting float value.
    • toFloatFromLittleEndianBytes

      public static float toFloatFromLittleEndianBytes(byte[] aLittleEndian)
      Converts a byte array in big little to a float value.
      Parameters:
      aLittleEndian - The byte array to be converted.
      Returns:
      The resulting float value.
    • toBigEndianBytes

      public static byte[] toBigEndianBytes(float aValue)
      Converts the given value to a byte array in big endian notation. The length for a long are 32 bits, so the result will be 4 bytes long.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toLittleEndianBytes

      public static byte[] toLittleEndianBytes(float aValue)
      Converts the given value to a byte array in big endian notation. The length for a long are 32 bits, so the result will be 4 bytes long.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toDoubleFromBigEndianBytes

      public static double toDoubleFromBigEndianBytes(byte[] aBigEndian)
      Converts a byte array in big endian to a double value.
      Parameters:
      aBigEndian - The byte array to be converted.
      Returns:
      The resulting double value.
    • toDoubleFromLittleEndianBytes

      public static double toDoubleFromLittleEndianBytes(byte[] aLittleEndian)
      Converts a byte array in big little to a double value.
      Parameters:
      aLittleEndian - The byte array to be converted.
      Returns:
      The resulting double value.
    • toBigEndianBytes

      public static byte[] toBigEndianBytes(double aValue)
      Converts the given value to a byte array in big endian notation. The length for a long are 64 bits, so the result will be 4 bytes long.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toLittleEndianBytes

      public static byte[] toLittleEndianBytes(double aValue)
      Converts the given value to a byte array in big endian notation. The length for a long are 64 bits, so the result will be 4 bytes long.
      Parameters:
      aValue - The value for which to get the byte array.
      Returns:
      The according array.
    • toHexString

      public static String toHexString(byte... aBytes)
      Converts the provided bytes to a hexadecimal String representation.
      Parameters:
      aBytes - The bytes for which to get the hexadecimal String.
      Returns:
      The according String.
    • toHexString

      public static String toHexString(int aBytesPerLine, byte... aBytes)
      Converts the provided bytes to a hexadecimal String representation.
      Parameters:
      aBytesPerLine - The number of bytes to put on one line before inserting a line separator.
      aBytes - The bytes for which to get the hexadecimal String.
      Returns:
      The according String.
    • toHexString

      public static String toHexString(String aByteSeparator, byte... aBytes)
      Converts the provided bytes to a hexadecimal String representation.
      Parameters:
      aByteSeparator - The separator to separate two hex values from each other or null if no separator is to be used.
      aBytes - The bytes for which to get the hexadecimal String.
      Returns:
      The according String.
    • toHexString

      public static String toHexString(String aByteSeparator, int aBytesPerLine, byte... aBytes)
      Converts the provided bytes to a hexadecimal String representation.
      Parameters:
      aByteSeparator - The separator to separate two hex values from each other or null if no separator is to be used.
      aBytesPerLine - The number of bytes to put on one line before inserting a line separator.
      aBytes - The bytes for which to get the hexadecimal String.
      Returns:
      The according String.
    • toHexString

      public static String toHexString(byte[] aBytes, String aByteSeparator)
      Converts the provided bytes to a hexadecimal String representation.
      Parameters:
      aBytes - The bytes for which to get the hexadecimal String.
      aByteSeparator - The separator to separate two hex values from each other or null if no separator is to be used.
      Returns:
      The according String.
    • toHexString

      public static String toHexString(byte[] aBytes, int aBytesPerLine)
      Converts the provided bytes to a hexadecimal String representation.
      Parameters:
      aBytes - The bytes for which to get the hexadecimal String.
      aBytesPerLine - The number of bytes to put on one line before inserting a line separator.
      Returns:
      The according String.
    • toHexString

      public static String toHexString(byte[] aBytes, String aByteSeparator, int aBytesPerLine)
      Converts the provided bytes to a hexadecimal String representation.
      Parameters:
      aBytes - The bytes for which to get the hexadecimal String.
      aByteSeparator - The separator to separate two hex values from each other or null if no separator is to be used.
      aBytesPerLine - The number of bytes to put on one line before inserting a line separator.
      Returns:
      The according String.
    • toHexString

      public static String toHexString(byte aByte)
      Converts the provided byte to a hexadecimal String representation.
      Parameters:
      aByte - The byte for which to get the hexadecimal String.
      Returns:
      The according String.
    • toBoolean

      public static boolean toBoolean(String aValue) throws IllegalArgumentException
      Converts the given String to a boolean value. Accepted values for a "true" boolean are "1", "on", "yes", "true". Accepted values for a "false" boolean are "0", "off", "no", "false".
      Parameters:
      aValue - The text value to be tested whether it represents true or false.
      Returns:
      True or false depending on the value passed.n
      Throws:
      IllegalArgumentException - in case neither true nor false could be determined.
    • toMd5Hash

      public static String toMd5Hash(String aText) throws NoSuchAlgorithmException
      Generates a md5 hash of the given text.
      Parameters:
      aText - The text to be md5 hashed.
      Returns:
      The md5 hashed text.
      Throws:
      NoSuchAlgorithmException - thrown in case the MD5 algorithm cannot be found on the classpath.
    • toScaled

      public static double toScaled(double aValue, double aMin, double aMax)
      Scales the given value (which must be between 0 .. 1 to be between aMin .. aMax.
      Parameters:
      aValue - The value between 0 .. 1 to be scaled.
      aMin - The min value.
      aMax - The max value.
      Returns:
      A value between aMin ... aMax.
    • sum

      public static int sum(int... aSummands)
      Calculates the sum from the provided summands.
      Parameters:
      aSummands - The summands to be added up.
      Returns:
      The sum of the provided summands.
    • toDouble

      public static double toDouble(int aIntValue, double aMinDouble, double aMaxDouble)
      Converts the given integer value to a double of the given range.
      Parameters:
      aIntValue - The integer value which to convert accordingly
      aMinDouble - The lower bounds of the double value.
      aMaxDouble - The upper bounds of the double value.
      Returns:
      The accordingly converted value.
    • toDouble

      public static double toDouble(long aLongValue, double aMinDouble, double aMaxDouble)
      Converts the given long value to a double of the given range.
      Parameters:
      aLongValue - The integer value which to convert accordingly
      aMinDouble - The lower bounds of the double value.
      aMaxDouble - The upper bounds of the double value.
      Returns:
      The accordingly converted value.
    • toHashCode

      public static int toHashCode(String aValue)
      Calculates a Java-Version's implementation independent Hash-Code.
      Parameters:
      aValue - The String from which to get the Hash-Code.
      Returns:
      The according Hash-Code.
    • toHashCodes

      public static int[] toHashCodes(String aSource, int aCount)
      Creates a given number of IDs from the provided source text. Useful when creating numbers from a pass-phrase.
      Parameters:
      aSource - The source text from which to generate the IDs.
      aCount - The number of IDs to generate.
      Returns:
      The IDs being generated.
    • toHashCodes

      public static int[] toHashCodes(char[] aSource, int aCount)
      Creates a given number of IDs from the provided source text. Useful when creating numbers from a pass-phrase.
      Parameters:
      aSource - The source text from which to generate the IDs.
      aCount - The number of IDs to generate.
      Returns:
      The IDs being generated.