- java.lang.Object
-
- org.ojalgo.array.BasicArray<N>
-
- org.ojalgo.array.DenseArray<N>
-
- org.ojalgo.array.PlainArray<N>
-
- All Implemented Interfaces:
java.util.RandomAccess,Access1D<N>,Access1D.Aggregatable<N>,Access1D.Collectable<N,Mutate1D>,Access1D.Visitable<N>,Factory1D.Builder<DenseArray<N>>,Mutate1D,Mutate1D.Fillable<N>,Mutate1D.Modifiable<N>,Structure1D
- Direct Known Subclasses:
BufferArray,PrimitiveArray,ReferenceTypeArray
public abstract class PlainArray<N extends java.lang.Comparable<N>> extends DenseArray<N> implements java.util.RandomAccess
Array class limited by integer (int, not long) indices. Typically this will be a plain java array as indouble[]. This class terminates/implements all methods with long arguments, casts the long arguments to int and delegates to new protected abstract methods with the int arguments. No new public methods are declared here.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classPlainArray.Factory<N extends java.lang.Comparable<N>,A extends PlainArray<N>>-
Nested classes/interfaces inherited from class org.ojalgo.array.BasicArray
BasicArray.BaseFactory<N extends java.lang.Comparable<N>,A extends BasicArray<N>>
-
Nested classes/interfaces inherited from interface org.ojalgo.structure.Access1D
Access1D.Aggregatable<N extends java.lang.Comparable<N>>, Access1D.Collectable<N extends java.lang.Comparable<N>,R extends Mutate1D>, Access1D.ElementView<N extends java.lang.Comparable<N>>, Access1D.SelectionView<N extends java.lang.Comparable<N>>, Access1D.Sliceable<N extends java.lang.Comparable<N>>, Access1D.Visitable<N extends java.lang.Comparable<N>>
-
Nested classes/interfaces inherited from interface org.ojalgo.structure.Mutate1D
Mutate1D.Fillable<N extends java.lang.Comparable<N>>, Mutate1D.Mixable<N extends java.lang.Comparable<N>>, Mutate1D.Modifiable<N extends java.lang.Comparable<N>>, Mutate1D.ModifiableReceiver<N extends java.lang.Comparable<N>>, Mutate1D.Receiver<N extends java.lang.Comparable<N>>, Mutate1D.Sortable
-
Nested classes/interfaces inherited from interface org.ojalgo.structure.Structure1D
Structure1D.BasicMapper<T>, Structure1D.IndexMapper<T>, Structure1D.IntIndex, Structure1D.Logical<S extends Structure1D,B extends Structure1D.Logical<S,B>>, Structure1D.LongIndex, Structure1D.LoopCallback
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static intCHARACTERISTICSstatic intMAX_SIZEExists as a private constant inArrayList.private intmySize
-
Constructor Summary
Constructors Constructor Description PlainArray(PlainArray.Factory<N,?> factory, int size)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidadd(int index, byte addend)voidadd(int index, float addend)voidadd(int index, int addend)voidadd(int index, long addend)voidadd(int index, short addend)protected abstract voidadd(int index, java.lang.Comparable<?> addend)voidadd(long index, byte addend)voidadd(long index, double addend)voidadd(long index, float addend)voidadd(long index, int addend)voidadd(long index, long addend)voidadd(long index, short addend)voidadd(long index, java.lang.Comparable<?> addend)abstract bytebyteValue(int index)bytebyteValue(long index)longcount()The total number of elements in this structure.doubledoubleValue(int index)doubledoubleValue(long index)protected abstract voidexchange(int firstA, int firstB, int step, int count)protected voidexchange(long firstA, long firstB, long step, long count)protected abstract voidfill(int first, int limit, int step, N value)protected abstract voidfill(int first, int limit, int step, NullaryFunction<?> supplier)protected voidfill(long first, long limit, long step, N value)protected voidfill(long first, long limit, long step, NullaryFunction<?> supplier)voidfillAll(N number)voidfillAll(NullaryFunction<?> supplier)protected abstract voidfillOne(int index, N value)protected abstract voidfillOne(int index, NullaryFunction<?> supplier)protected abstract voidfillOne(int index, Access1D<?> values, long valueIndex)voidfillRange(long first, long limit, N number)voidfillRange(long first, long limit, NullaryFunction<?> supplier)abstract floatfloatValue(int index)floatfloatValue(long index)protected abstract Nget(int index)Nget(long index)protected abstract intindexOfLargest(int first, int limit, int step)protected longindexOfLargest(long first, long limit, long step)intintValue(int index)intintValue(long index)protected abstract booleanisAbsolute(int index)protected abstract booleanisSmall(int index, double comparedTo)private booleanisSmall(int first, int limit, int step, double comparedTo)longlongValue(int index)longlongValue(long index)protected abstract voidmodify(int first, int limit, int step, BinaryFunction<N> function, Access1D<N> right)protected abstract voidmodify(int first, int limit, int step, UnaryFunction<N> function)protected abstract voidmodify(int first, int limit, int step, Access1D<N> left, BinaryFunction<N> function)protected voidmodify(long first, long limit, long step, BinaryFunction<N> function, Access1D<N> right)protected voidmodify(long first, long limit, long step, UnaryFunction<N> function)protected voidmodify(long first, long limit, long step, Access1D<N> left, BinaryFunction<N> function)protected abstract voidmodifyOne(int index, UnaryFunction<N> modifier)voidmodifyOne(long index, UnaryFunction<N> modifier)protected abstract intsearchAscending(N number)voidset(int index, byte value)abstract voidset(int index, double value)voidset(int index, float value)voidset(int index, int value)abstract voidset(int index, long value)voidset(int index, short value)protected abstract voidset(int index, java.lang.Comparable<?> number)voidset(long index, byte value)voidset(long index, double value)voidset(long index, float value)voidset(long index, int value)voidset(long index, long value)voidset(long index, short value)voidset(long index, java.lang.Comparable<?> number)shortshortValue(int index)shortshortValue(long index)intsize()The total number of elements in this structure.protected abstract voidsortAscending()protected abstract voidsortDescending()protected abstract voidvisit(int first, int limit, int step, VoidFunction<N> visitor)protected voidvisit(long first, long limit, long step, VoidFunction<N> visitor)protected abstract voidvisitOne(int index, VoidFunction<N> visitor)voidvisitOne(long index, VoidFunction<N> visitor)-
Methods inherited from class org.ojalgo.array.DenseArray
build, modify, modify, modify
-
Methods inherited from class org.ojalgo.array.BasicArray
aggregateRange, equals, factory, getMathType, hashCode, indexOfLargest, isPrimitive, modifyAll, modifyMatching, modifyMatching, modifyRange, supplyTo, toString, visitAll, visitRange, wrapInArray1D, wrapInArray2D, wrapInArrayAnyD
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.ojalgo.structure.Access1D
asCollectable1D, asKeyed1D, asList, axpy, dot, elements, nonzeros, select, supplyTo, toList, toRawCopy1D
-
Methods inherited from interface org.ojalgo.structure.Access1D.Aggregatable
aggregateAll
-
Methods inherited from interface org.ojalgo.structure.Access1D.Collectable
collect
-
Methods inherited from interface org.ojalgo.structure.Mutate1D.Fillable
fillCompatible, fillMatching, fillMatching, fillMatching, fillMatching
-
Methods inherited from interface org.ojalgo.structure.Mutate1D.Modifiable
add
-
-
-
-
Field Detail
-
MAX_SIZE
public static final int MAX_SIZE
Exists as a private constant inArrayList. The Oracle JVM seems to actually be limited at Integer.MAX_VALUE - 2, but other JVM:s may have different limits.- See Also:
- Constant Field Values
-
CHARACTERISTICS
static final int CHARACTERISTICS
- See Also:
- Constant Field Values
-
mySize
private final int mySize
-
-
Constructor Detail
-
PlainArray
PlainArray(PlainArray.Factory<N,?> factory, int size)
-
-
Method Detail
-
add
public void add(int index, byte addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public void add(int index, float addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public void add(int index, int addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public void add(int index, long addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public void add(int index, short addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public final void add(long index, byte addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public final void add(long index, java.lang.Comparable<?> addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public final void add(long index, double addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public final void add(long index, float addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public final void add(long index, int addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public final void add(long index, long addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
add
public final void add(long index, short addend)- Specified by:
addin interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
byteValue
public abstract byte byteValue(int index)
-
byteValue
public final byte byteValue(long index)
-
count
public final long count()
Description copied from interface:Structure1DThe total number of elements in this structure.You only need to implement this method if the structure can contain more than Integer.MAX_VALUE elements.
- Specified by:
countin interfaceStructure1D
-
doubleValue
public double doubleValue(int index)
- Specified by:
doubleValuein interfaceAccess1D<N extends java.lang.Comparable<N>>
-
doubleValue
public final double doubleValue(long index)
- Specified by:
doubleValuein interfaceAccess1D<N extends java.lang.Comparable<N>>
-
fillAll
public final void fillAll(N number)
- Specified by:
fillAllin interfaceMutate1D.Fillable<N extends java.lang.Comparable<N>>
-
fillAll
public final void fillAll(NullaryFunction<?> supplier)
- Specified by:
fillAllin interfaceMutate1D.Fillable<N extends java.lang.Comparable<N>>
-
fillRange
public final void fillRange(long first, long limit, N number)- Specified by:
fillRangein interfaceMutate1D.Fillable<N extends java.lang.Comparable<N>>
-
fillRange
public final void fillRange(long first, long limit, NullaryFunction<?> supplier)- Specified by:
fillRangein interfaceMutate1D.Fillable<N extends java.lang.Comparable<N>>
-
floatValue
public abstract float floatValue(int index)
- Specified by:
floatValuein interfaceAccess1D<N extends java.lang.Comparable<N>>
-
floatValue
public final float floatValue(long index)
- Specified by:
floatValuein interfaceAccess1D<N extends java.lang.Comparable<N>>
-
get
public final N get(long index)
-
intValue
public int intValue(int index)
-
intValue
public final int intValue(long index)
-
longValue
public long longValue(int index)
-
longValue
public final long longValue(long index)
-
modifyOne
public final void modifyOne(long index, UnaryFunction<N> modifier)- Specified by:
modifyOnein interfaceMutate1D.Modifiable<N extends java.lang.Comparable<N>>
-
set
public final void set(long index, java.lang.Comparable<?> number)
-
shortValue
public short shortValue(int index)
- Specified by:
shortValuein interfaceAccess1D<N extends java.lang.Comparable<N>>
-
shortValue
public final short shortValue(long index)
- Specified by:
shortValuein interfaceAccess1D<N extends java.lang.Comparable<N>>
-
size
public final int size()
Description copied from interface:Structure1DThe total number of elements in this structure.- Specified by:
sizein interfaceStructure1D
-
visitOne
public final void visitOne(long index, VoidFunction<N> visitor)- Specified by:
visitOnein interfaceAccess1D.Visitable<N extends java.lang.Comparable<N>>
-
isSmall
private final boolean isSmall(int first, int limit, int step, double comparedTo)
-
add
protected abstract void add(int index, java.lang.Comparable<?> addend)
-
exchange
protected abstract void exchange(int firstA, int firstB, int step, int count)
-
exchange
protected final void exchange(long firstA, long firstB, long step, long count)- Overrides:
exchangein classBasicArray<N extends java.lang.Comparable<N>>
-
fill
protected abstract void fill(int first, int limit, int step, N value)
-
fill
protected abstract void fill(int first, int limit, int step, NullaryFunction<?> supplier)
-
fill
protected final void fill(long first, long limit, long step, N value)- Overrides:
fillin classBasicArray<N extends java.lang.Comparable<N>>
-
fill
protected final void fill(long first, long limit, long step, NullaryFunction<?> supplier)- Overrides:
fillin classBasicArray<N extends java.lang.Comparable<N>>
-
fillOne
protected abstract void fillOne(int index, Access1D<?> values, long valueIndex)
-
fillOne
protected abstract void fillOne(int index, N value)
-
fillOne
protected abstract void fillOne(int index, NullaryFunction<?> supplier)
-
get
protected abstract N get(int index)
-
indexOfLargest
protected abstract int indexOfLargest(int first, int limit, int step)
-
indexOfLargest
protected final long indexOfLargest(long first, long limit, long step)- Overrides:
indexOfLargestin classBasicArray<N extends java.lang.Comparable<N>>
-
isAbsolute
protected abstract boolean isAbsolute(int index)
- See Also:
Scalar.isAbsolute()
-
isSmall
protected abstract boolean isSmall(int index, double comparedTo)- See Also:
NormedVectorSpace.isSmall(double)
-
modify
protected abstract void modify(int first, int limit, int step, Access1D<N> left, BinaryFunction<N> function)
-
modify
protected abstract void modify(int first, int limit, int step, BinaryFunction<N> function, Access1D<N> right)
-
modify
protected abstract void modify(int first, int limit, int step, UnaryFunction<N> function)
-
modify
protected final void modify(long first, long limit, long step, Access1D<N> left, BinaryFunction<N> function)- Overrides:
modifyin classBasicArray<N extends java.lang.Comparable<N>>
-
modify
protected final void modify(long first, long limit, long step, BinaryFunction<N> function, Access1D<N> right)- Overrides:
modifyin classBasicArray<N extends java.lang.Comparable<N>>
-
modify
protected final void modify(long first, long limit, long step, UnaryFunction<N> function)- Overrides:
modifyin classBasicArray<N extends java.lang.Comparable<N>>
-
modifyOne
protected abstract void modifyOne(int index, UnaryFunction<N> modifier)
-
searchAscending
protected abstract int searchAscending(N number)
-
set
protected abstract void set(int index, java.lang.Comparable<?> number)
-
sortAscending
protected abstract void sortAscending()
-
sortDescending
protected abstract void sortDescending()
-
visit
protected abstract void visit(int first, int limit, int step, VoidFunction<N> visitor)
-
visit
protected final void visit(long first, long limit, long step, VoidFunction<N> visitor)- Overrides:
visitin classBasicArray<N extends java.lang.Comparable<N>>
-
visitOne
protected abstract void visitOne(int index, VoidFunction<N> visitor)
-
-