int exp
For fixed point arithmetic, scale is -exp
, and can apply to zero.
Note that this property can have a value less than MinExp when the mantissa has more than one digit.
byte form
This property is an optimization; it allows us to defer number layout until it is actually needed as a string, hence avoiding unnecessary formatting.
byte ind
byte[] mant
Once constructed, this may become shared between several BigDecimal objects, so must not be altered.
For efficiency (speed), this is a byte array, with each byte taking a value of 0 -> 9.
If the first byte is 0 then the value of the number is zero (and mant.length=1, except when constructed from a plain number, for example, 0.000).
int digits
The BigDecimal
operator methods use this value to
determine the precision of results.
Note that leading zeros (in the integer part of a number) are
never significant.
digits
will always be non-negative.
int form
The BigDecimal
operator methods use this value to
determine the form of results, in particular whether and how
exponential notation should be used.
boolean lostDigits
true
to enable checking, or
to false
to disable checking.
When enabled, the BigDecimal
operator methods check
the precision of their operand or operands, and throw an
ArithmeticException
if an operand is more precise
than the digits setting (that is, digits would be lost).
When disabled, operands are rounded to the specified digits.
int roundingMode
The BigDecimal
operator methods use this value to
determine the algorithm to be used when non-zero digits have to
be discarded in order to reduce the precision of a result.
The value must be one of the public constants whose name starts
with ROUND_
.
@Deprecated protected Object readResolve() throws InvalidObjectException
InvalidObjectException
- if the constant could not be resolved.String[] isLeapMonth
Map<String,String> pluralCountToCurrencyUnitPattern
PluralRules pluralRules
ULocale ulocale
private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
serialVersionOnStream
is less than 1, indicating that
the stream was written by a pre-ICU-53 version,
set capitalizationSetting to a default value.
Finally, set serialVersionOnStream back to the maximum allowed value so that
default serialization will work properly if this object is streamed out again.IOException
ClassNotFoundException
EnumSet<DateFormat.BooleanAttribute> booleanAttributes
Calendar calendar
DateFormat
uses to produce the time field
values needed to implement date and time formatting. Subclasses should
initialize this to a calendar appropriate for the locale associated with
this DateFormat
.DisplayContext capitalizationSetting
NumberFormat numberFormat
DateFormat
uses to format numbers
in dates and times. Subclasses should initialize this to a number format
appropriate for the locale associated with this DateFormat
.int serialVersionOnStream
DateFormat
present on the stream.
Possible values are:
DateFormat
, the most recent format
(corresponding to the highest allowable serialVersionOnStream
)
is always written.protected Object readResolve() throws InvalidObjectException
InvalidObjectException
- if the constant could not be resolved.int calendarField
private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
String[] abbreviatedDayPeriods
ULocale actualLocale
ULocale
String[] ampms
Calendar.AM
and
Calendar.PM
.String[] ampmsNarrow
Calendar.AM
and
Calendar.PM
.Map<com.ibm.icu.text.DateFormatSymbols.CapitalizationContextUsage,boolean[]> capitalization
String[] eraNames
Calendar.BC
and Calendar.AD
.String[] eras
Calendar.BC
and Calendar.AD
.String[] leapMonthPatterns
String localPatternChars
DateFormat.ERA_FIELD
,
DateFormat.YEAR_FIELD
, etc. Thus, if the string were
"Xz...", then localized patterns would use 'X' for era and 'z' for year.String[] months
Calendar.JANUARY
, Calendar.FEBRUARY
, etc.String[] narrowDayPeriods
String[] narrowEras
Calendar.BC
and Calendar.AD
.String[] narrowMonths
Calendar.JANUARY
, Calendar.FEBRUARY
, etc.String[] narrowWeekdays
Calendar.SUNDAY
,
Calendar.MONDAY
, etc.
The element narrowWeekdays[0]
is ignored.String[] quarters
ULocale requestedLocale
String[] shorterWeekdays
Calendar.SUNDAY
,
Calendar.MONDAY
, etc.
The element shorterWeekdays[0]
is ignored.String[] shortMonths
Calendar.JANUARY
, Calendar.FEBRUARY
, etc.String[] shortQuarters
String[] shortWeekdays
Calendar.SUNDAY
,
Calendar.MONDAY
, etc.
The element shortWeekdays[0]
is ignored.String[] shortYearNames
String[] shortZodiacNames
String[] standaloneAbbreviatedDayPeriods
String[] standaloneMonths
Calendar.JANUARY
, Calendar.FEBRUARY
, etc.String[] standaloneNarrowDayPeriods
String[] standaloneNarrowMonths
Calendar.JANUARY
, Calendar.FEBRUARY
, etc.String[] standaloneNarrowWeekdays
Calendar.SUNDAY
,
Calendar.MONDAY
, etc.
The element standaloneNarrowWeekdays[0]
is ignored.String[] standaloneQuarters
String[] standaloneShorterWeekdays
Calendar.SUNDAY
,
Calendar.MONDAY
, etc.
The element standaloneShorterWeekdays[0]
is ignored.String[] standaloneShortMonths
Calendar.JANUARY
, Calendar.FEBRUARY
, etc.String[] standaloneShortQuarters
String[] standaloneShortWeekdays
Calendar.SUNDAY
,
Calendar.MONDAY
, etc.
The element standaloneShortWeekdays[0]
is ignored.String[] standaloneWeekdays
Calendar.SUNDAY
,
Calendar.MONDAY
, etc.
The element standaloneWeekdays[0]
is ignored.String[] standaloneWideDayPeriods
String timeSeparator
ULocale validLocale
ULocale
String[] weekdays
Calendar.SUNDAY
,
Calendar.MONDAY
, etc.
The element weekdays[0]
is ignored.String[] wideDayPeriods
String[][] zoneStrings
TimeZone
.
Each such row contains (with i
ranging from
0..n-1):
zoneStrings[i][0]
- time zone IDzoneStrings[i][1]
- long name of zone in standard
timezoneStrings[i][2]
- short name of zone in
standard timezoneStrings[i][3]
- long name of zone in daylight
savings timezoneStrings[i][4]
- short name of zone in daylight
savings timezoneStrings[i][5]
- location name of zonezoneStrings[i][6]
- long generic name of zonezoneStrings[i][7]
- short generic of zoneTimeZone
private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
SimpleDateFormat fDateFormat
String fDatePattern
String fDateTimeFormat
Calendar fFromCalendar
DateIntervalInfo fInfo
String fSkeleton
String fTimePattern
Calendar fToCalendar
boolean isDateIntervalInfoDefault
private void readObject(ObjectInputStream ois) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
private void writeObject(ObjectOutputStream oos) throws IOException
IOException
int serialVersionOnStream
private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
serialVersionOnStream
is less than 1, initialize monetarySeparator
to be
the same as decimalSeparator
and exponential
to be 'E'.
Finally, sets serialVersionOnStream back to the maximum allowed value so that
default serialization will work properly if this object is streamed out again.IOException
ClassNotFoundException
ULocale actualLocale
ULocale
String currencyPattern
String[] currencySpcAfterSym
String[] currencySpcBeforeSym
String currencySymbol
DecimalFormatSymbols.getCurrencySymbol()
char decimalSeparator
String decimalSeparatorString
char digit
DecimalFormatSymbols.getDigit()
char[] digits
String[] digitStrings
char exponential
Note that this field has been superseded by exponentSeparator
.
It is retained for backward compatibility.
String exponentMultiplicationSign
String exponentSeparator
Note that this supersedes the exponential
field.
char groupingSeparator
String groupingSeparatorString
String infinity
DecimalFormatSymbols.getInfinity()
String intlCurrencySymbol
char minusSign
DecimalFormatSymbols.getMinusSign()
String minusString
char monetaryGroupingSeparator
String monetaryGroupingSeparatorString
char monetarySeparator
String monetarySeparatorString
String NaN
DecimalFormatSymbols.getNaN()
char padEscape
char patternSeparator
char percent
DecimalFormatSymbols.getPercent()
String percentString
char perMill
DecimalFormatSymbols.getPerMill()
String perMillString
char plusSign
String plusString
Locale requestedLocale
int serialVersionOnStream
DecimalFormatSymbols
present on the stream.
Possible values are:
monetarySeparator
and exponential
.
DecimalFormatSymbols
, the most recent format
(corresponding to the highest allowable serialVersionOnStream
)
is always written.char sigDigit
ULocale ulocale
ULocale validLocale
ULocale
char zeroDigit
DecimalFormatSymbols.getZeroDigit()
private Object writeReplace() throws ObjectStreamException
ObjectStreamException
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
InvalidObjectException
- if the objects read from the stream is invalid.IOException
ClassNotFoundException
private void writeObject(ObjectOutputStream out) throws IOException
IOException
protected Object readResolve() throws InvalidObjectException
InvalidObjectException
- if the constant could not be resolved.private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
serialVersionOnStream
is less than 1, indicating that
the stream was written by JDK 1.1,
set the int
fields such as maximumIntegerDigits
to be equal to the byte
fields such as maxIntegerDigits
,
since the int
fields were not present in JDK 1.1.
Finally, set serialVersionOnStream back to the maximum allowed value so that
default serialization will work properly if this object is streamed out again.IOException
ClassNotFoundException
private void writeObject(ObjectOutputStream stream) throws IOException
byte
fields such as maxIntegerDigits
to be
equal to the int
fields such as maximumIntegerDigits
(or to Byte.MAX_VALUE
, whichever is smaller), for compatibility
with the JDK 1.1 version of the stream format.IOException
DisplayContext capitalizationSetting
Currency currency
boolean groupingUsed
NumberFormat.isGroupingUsed()
byte maxFractionDigits
maximumFractionDigits
must be greater than or equal to
minimumFractionDigits
.
Note: This field exists only for serialization
compatibility with JDK 1.1. In JDK 1.2 and higher, the new
int
field maximumFractionDigits
is used instead.
When writing to a stream, maxFractionDigits
is set to
maximumFractionDigits
or Byte.MAX_VALUE
,
whichever is smaller. When reading from a stream, this field is used
only if serialVersionOnStream
is less than 1.
NumberFormat.getMaximumFractionDigits()
int maximumFractionDigits
maximumFractionDigits
must be greater than or equal to
minimumFractionDigits
.NumberFormat.getMaximumFractionDigits()
int maximumIntegerDigits
maximumIntegerDigits
must be greater than or equal to
minimumIntegerDigits
.NumberFormat.getMaximumIntegerDigits()
byte maxIntegerDigits
maxIntegerDigits
must be greater than or equal to
minIntegerDigits
.
Note: This field exists only for serialization
compatibility with JDK 1.1. In JDK 1.2 and higher, the new
int
field maximumIntegerDigits
is used instead.
When writing to a stream, maxIntegerDigits
is set to
maximumIntegerDigits
or Byte.MAX_VALUE
,
whichever is smaller. When reading from a stream, this field is used
only if serialVersionOnStream
is less than 1.
NumberFormat.getMaximumIntegerDigits()
byte minFractionDigits
minimumFractionDigits
must be less than or equal to
maximumFractionDigits
.
Note: This field exists only for serialization
compatibility with JDK 1.1. In JDK 1.2 and higher, the new
int
field minimumFractionDigits
is used instead.
When writing to a stream, minFractionDigits
is set to
minimumFractionDigits
or Byte.MAX_VALUE
,
whichever is smaller. When reading from a stream, this field is used
only if serialVersionOnStream
is less than 1.
NumberFormat.getMinimumFractionDigits()
int minimumFractionDigits
minimumFractionDigits
must be less than or equal to
maximumFractionDigits
.NumberFormat.getMinimumFractionDigits()
int minimumIntegerDigits
minimumIntegerDigits
must be less than or equal to
maximumIntegerDigits
.NumberFormat.getMinimumIntegerDigits()
byte minIntegerDigits
minimumIntegerDigits
must be less than or equal to
maximumIntegerDigits
.
Note: This field exists only for serialization
compatibility with JDK 1.1. In JDK 1.2 and higher, the new
int
field minimumIntegerDigits
is used instead.
When writing to a stream, minIntegerDigits
is set to
minimumIntegerDigits
or Byte.MAX_VALUE
,
whichever is smaller. When reading from a stream, this field is used
only if serialVersionOnStream
is less than 1.
NumberFormat.getMinimumIntegerDigits()
boolean parseIntegerOnly
NumberFormat.isParseIntegerOnly()
boolean parseStrict
int serialVersionOnStream
NumberFormat
present on the stream.
Possible values are:
int
fields such as
maximumIntegerDigits
were not present, and the byte
fields such as maxIntegerDigits
are used instead.
byte
fields such as maxIntegerDigits
are ignored,
and the int
fields such as maximumIntegerDigits
are used instead.
NumberFormat
, the most recent format
(corresponding to the highest allowable serialVersionOnStream
)
is always written.protected Object readResolve() throws InvalidObjectException
InvalidObjectException
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
NumberFormat numberFormat
NumberFormat
is used for the standard formatting of
the number inserted into the message.Map<String,String> parsedValues
String
(plural case keyword) --> String
(message for this plural case).String pattern
PluralRules pluralRules
ULocale ulocale
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
private void writeObject(ObjectOutputStream out) throws IOException
IOException
private Object writeReplace() throws ObjectStreamException
ObjectStreamException
com.ibm.icu.text.PluralRules.RuleList rules
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
private void writeObject(ObjectOutputStream out) throws IOException
IOException
int baseFactor
long decimalDigits
long decimalDigitsWithoutTrailingZeros
boolean hasIntegerValue
long integerValue
boolean isNegative
double source
int visibleDecimalDigitCount
int visibleDecimalDigitCountWithoutTrailingZeros
private void readObject(ObjectInputStream in) throws IOException
IOException
private void writeObject(ObjectOutputStream out) throws IOException
IOException
boolean capitalizationForListOrMenu
boolean capitalizationForStandAlone
boolean capitalizationInfoIsSet
boolean lenientParse
ULocale locale
String[] publicRuleSetNames
int roundingMode
Map<String,String[]> ruleSetDisplayNames
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
String pattern
private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
private void writeObject(ObjectOutputStream stream) throws IOException
IOException
Date defaultCenturyStart
defaultCenturyStart
, which may be any date. May
not be null.DateFormatSymbols formatData
DateFormatSymbols
HashMap<String,NumberFormat> numberFormatters
String override
HashMap<Character,String> overrideMap
String pattern
int serialVersionOnStream
defaultCenturyStart
on stream.
defaultCenturyStart
.
capitalizationSetting
.
serialVersionOnStream
is written.TimeZoneFormat tzFormat
int error
int line
StringBuffer postContext
StringBuffer preContext
private Object readResolve() throws ObjectStreamException
ObjectStreamException
private Object writeReplace() throws ObjectStreamException
ObjectStreamException
NumberFormat format
ULocale locale
int style
private void readObject(ObjectInputStream ois) throws ClassNotFoundException, IOException
ClassNotFoundException
IOException
private void writeObject(ObjectOutputStream oos) throws IOException
IOException
String[] _gmtOffsetDigits
String[] _gmtOffsetPatterns
String _gmtPattern
String _gmtZeroFormat
ULocale _locale
boolean _parseAllStyles
true
if this TimeZoneFormat object is configure
for parsing all available names.TimeZoneNames _tznames
DateTimeRule dateTimeRule
int endYear
int startYear
private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
private void writeObject(ObjectOutputStream stream) throws IOException
IOException
ULocale actualLocale
ULocale
int firstDayOfWeek
Calendar.SUNDAY
,
Calendar.MONDAY
, etc. This is a locale-dependent value.boolean lenient
time
from fields[]
.Calendar.setLenient(boolean)
int minimalDaysInFirstWeek
int repeatedWallTime
int skippedWallTime
long time
ULocale validLocale
ULocale
int weekendCease
int weekendCeaseMillis
int weekendOnset
int weekendOnsetMillis
TimeZone zone
private void readObject(ObjectInputStream stream) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
int epochYear
TimeZone zoneAstro
private Object readResolve() throws ObjectStreamException
ObjectStreamException
private Object writeReplace() throws ObjectStreamException
ObjectStreamException
String isoCode
long fromDate
long toDate
int dateRuleType
int dayOfMonth
int dayOfWeek
int millisInDay
int month
int timeRuleType
int weekInMonth
int eraType
long gregorianCutover
int _errIdx
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
boolean civil
true
if this object uses the fixed-cycle Islamic civil calendar,
and false
if it approximates the true religious calendar using
astronomical calculations for the time of the new moon.IslamicCalendar.CalculationType cType
private Object writeReplace() throws ObjectStreamException
ObjectStreamException
AnnualTimeZoneRule[] finalRules
List<TimeZoneRule> historicRules
InitialTimeZoneRule initialRule
private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
IOException
ClassNotFoundException
int dst
int endDay
int endDayOfWeek
int endMode
int endMonth
int endTime
int endTimeMode
int raw
int startDay
int startDayOfWeek
int startMode
int startMonth
int startTime
int startTimeMode
int startYear
boolean useDaylight
com.ibm.icu.util.STZInfo xinfo
long[] startTimes
int timeType
private Object readResolve() throws ObjectStreamException
ObjectStreamException
private Object writeReplace() throws ObjectStreamException
ObjectStreamException
int index
String ID
TimeZone
. This is a
programmatic identifier used internally to look up TimeZone
objects from the system table and also to map them to their localized
display names. ID
values are unique in the system
table but may not be for dynamically created zones.int dstSavings
String name
int rawOffset
String localeID
Copyright ? 2016 Unicode, Inc. and others.