T
- the type of data
KK
- the type the field element
public class ImmutableFieldTimeStampedCache<T extends FieldTimeStamped<KK>,KK extends org.hipparchus.CalculusFieldElement<KK>> extends Object implements FieldTimeStampedCache<T,KK>
TimeStamped
数据缓存。当所有缓存数据都存储在内存中时,这种策略是合适的。(例如,UTCScale
)然后该类提供了方便访问数据的方法。
Constructor and Description |
---|
ImmutableFieldTimeStampedCache(int neighborsSize, Collection<? extends T> data)
使用给定的邻居大小和数据创建一个新的缓存。
|
Modifier and Type | Method and Description |
---|---|
static <TS extends FieldTimeStamped<CFE>,CFE extends org.hipparchus.CalculusFieldElement<CFE>> |
emptyCache(org.hipparchus.Field<CFE> field)
获取一个空的不可变缓存,并转换为正确的类型。
|
List<T> |
getAll()
获取此缓存中的所有数据。
|
T |
getEarliest()
获取此缓存中最早的条目。
|
T |
getLatest()
获取此缓存中最新的条目。
|
Stream<T> |
getNeighbors(FieldAbsoluteDate<KK> central)
获取围绕中心日期的条目。
|
int |
getNeighborsSize()
获取由 FieldTimeStampedCache.getNeighbors(FieldAbsoluteDate) 返回的列表的固定大小。
|
String |
toString() |
public ImmutableFieldTimeStampedCache(int neighborsSize, Collection<? extends T> data)
neighborsSize
- 从getNeighbors(FieldAbsoluteDate)
返回的列表的大小。必须小于或等于data.size()
。
data
- 此缓存的后备数据。列表将被复制以确保不可变性。为了保证不可变性,data
中的条目本身必须是不可变的。数据必须比neighborsSize
更多。
IllegalArgumentException
- 如果neighborsSize > data.size()
或者neighborsSize
为负
public static <TS extends FieldTimeStamped<CFE>,CFE extends org.hipparchus.CalculusFieldElement<CFE>> ImmutableFieldTimeStampedCache<TS,CFE> emptyCache(org.hipparchus.Field<CFE> field)
TS
- 数据的类型
CFE
- 微积分字段元素的类型
field
- 元素所属的字段
ImmutableTimeStampedCache
。
public Stream<T> getNeighbors(FieldAbsoluteDate<KK> central)
如果中心日期在覆盖范围内,返回的数组将平衡,中心日期之前的点和中心日期之后的点各占一半(当然取决于n的奇偶性)。如果中心日期接近边界,则返回的数组将不平衡,并且只包含n个最早(或最晚)的条目。一个典型的例子是闰秒缓存,因为闰秒的数量不能任意增加。
此方法对于多个线程同时执行是安全的。
getNeighbors
在接口 FieldTimeStampedCache<T extends FieldTimeStamped<KK>,KK extends org.hipparchus.CalculusFieldElement<KK>>
central
- 中心日期
FieldTimeStampedCache.getNeighborsSize()
。
public int getNeighborsSize()
FieldTimeStampedCache.getNeighbors(FieldAbsoluteDate)
返回的列表的固定大小。
getNeighborsSize
在接口 FieldTimeStampedCache<T extends FieldTimeStamped<KK>,KK extends org.hipparchus.CalculusFieldElement<KK>>
public T getEarliest()
getEarliest
在接口 FieldTimeStampedCache<T extends FieldTimeStamped<KK>,KK extends org.hipparchus.CalculusFieldElement<KK>>
public T getLatest()
getLatest
在接口 FieldTimeStampedCache<T extends FieldTimeStamped<KK>,KK extends org.hipparchus.CalculusFieldElement<KK>>
public List<T> getAll()
constructor
的数据的排序集合。
Copyright © 2002-2023 CS GROUP. All rights reserved.