次のように変更するにはどうすればよいですか。
CharSequence cs[] = { "foo", "bar" };
に:
CharSequence cs[];
cs.add("foo"); // this is wrong...
cs.add("bar"); // this is wrong...
Listオブジェクトを使用してアイテムを管理し、すべての要素が揃ったらCharSequenceに変換します。このようなもの:
List<String> listItems = new ArrayList<String>();
listItems.add("Item1");
listItems.add("Item2");
listItems.add("Item3");
final CharSequence[] charSequenceItems = listItems.toArray(new CharSequence[listItems.size()]);
あと少しです。エントリにスペースを割り当てる必要があります。これは、上記の初期化の場合に自動的に行われます。
CharSequence cs[];
cs = new String[2];
cs[0] = "foo";
cs[1] = "bar";
実際には、CharSequenceはインターフェイスであるため、直接作成することはできませんが、その実装の1つであるStringは作成できます。
List
を使用して、array(list :))に動的な数のメンバーを含めることもできます。
List<CharSequence> cs = new ArrayList<CharSequence>();
cs.add("foo");
cs.add("bar");
配列を使用したい場合は、次のようにできます。
CharSequence cs[];
cs = new String[2];
cs[0] = "foo";
cs[1] = "bar";
[〜#〜] kotlin [〜#〜]
まず、ArrayListを通常の変更可能なリストに変換します。次に、 Arrayコンストラクタ を使用して手動で配列を作成します。 init関数が配列に適合するデータ型を生成することを確認してください(たとえば、CharSequence配列にintを入れないでください)。
val exampleArray: ArrayList<String> arrayListOf("test1", "test2", "test3")
val exampleList = exampleArray.toList()
val exampleItems: Array<CharSequence?>? = exampleList?.size?.let { it1 -> Array(it1,{ i -> exampleArray?.get(i) }) }
動的にしたい場合は、別の構造で考え、必要に応じてCharSequenceに変換する必要があります。または、 そのスレッド も役立ちます。
アイテムを動的に追加する必要があるため、生の配列の代わりにArrayListを使用できます。