- All Implemented Interfaces:
Serializable, Comparable<ErrorCorrectionLevel>, java.lang.constant.Constable
See ISO 18004:2006, 6.5.1. This enum encapsulates the four error correction levels defined by the QR code standard.
Nested Class Summary
Nested classes/interfaces inherited from class Enum
Enum.EnumDesc<E>Enum Constant Summary
Enum ConstantsField Summary
FieldsModifier and TypeFieldDescriptionprivate final intThe two bits stored in the format information.private static final ErrorCorrectionLevel[]Levels in the order the format bits select them.Constructor Summary
ConstructorsModifierConstructorDescriptionprivateErrorCorrectionLevel(int bits) Creates a level with its format bits.Method Summary
Modifier and TypeMethodDescriptionstatic ErrorCorrectionLevelforBits(int bits) Get the ErrorCorrectionLevel for the given bits.intgetBits()Get the two-bit value that encodes this level in a QR Code format field.static ErrorCorrectionLevelReturns the enum constant of this class with the specified name.static ErrorCorrectionLevel[]values()Returns an array containing the constants of this enum class, in the order they are declared.
Enum Constant Details
L
L = ~7% correctionM
M = ~15% correctionQ
Q = ~25% correctionH
H = ~30% correction
Field Details
FOR_BITS
Levels in the order the format bits select them.bits
private final int bitsThe two bits stored in the format information.
Constructor Details
ErrorCorrectionLevel
private ErrorCorrectionLevel(int bits) Creates a level with its format bits.- Parameters:
bits- the two bits naming this level
Method Details
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
getBits
public int getBits()Get the two-bit value that encodes this level in a QR Code format field.- Returns:
- the two error correction bits for this level
forBits
Get the ErrorCorrectionLevel for the given bits.- Parameters:
bits- int containing the two bits encoding a QR Code's error correction level- Returns:
- ErrorCorrectionLevel representing the encoded error correction level