ArrayLists の代替として機能する Java ライブラリを使用したい...このライブラリ (「Vanilla Java Collections」) では、次の方法でインターフェイスを宣言する必要があります。
interface MutableBoolean {
public void setFlag(boolean b);
public boolean getFlag();
}
これは、このリストが宣言される方法です--
// create a huge array of MutableBoolean
HugeArrayList<MutableBoolean> hugeList = new HugeArrayBuilder<MutableBoolean>() {}.create();
List<MutableBoolean> list = hugeList;
これがデータの取得方法です--
for (MutableTypes mb : list) {
boolean b1 = mb.getBoolean();
文字列、整数、倍精度などの値を挿入/取得するために、同じインターフェイス内に複数のデータ型が存在する可能性があります...
今、私が取り組んでいるアプリケーションには、カスタム変数の定義があります--
public abstract class Variable implements MutableVariable {
abstract public byte[] toBinary();
abstract public byte[] toBinary(String charset);
abstract public String toString();
abstract public String toString(String charset);
abstract public List toList();
abstract public boolean isEmpty();
abstract public Object getWrappedObject();
----plus some more functions----
また、「Variable」を拡張するクラス「NodeVariable」と、Variable を実装する別のクラス「ListVariable」があります。各 ListVariable には、List と、リストおよび文字列操作に関連するいくつかのユーティリティ関数があります。
'ListVariable' の代わりに、配列の代用 ("Vanilla Java Collections") (インターフェイスが必要) を実装したいと考えています。しかし、クラス「変数」は抽象クラスです。ここで混乱しています。「ListVariable」の代わりに ArrayList Substitute(「Vanilla Java Collections」) を使用できるようにするには、どのようにインターフェイスを実装すればよいですか?
また、「ListVariable」を利用する既存のコードに最小限の変更を加えるだけで、つまり「ListVariable」クラスにすべて/ほとんどの変更を加えることで、これは可能ですか?