Android,如何动态填充CharSequence数组(不初始化?)

Mar*_*coS 21 java arrays dynamic charsequence

我该如何改变这样的事情:

CharSequence cs[] = { "foo", "bar" };
Run Code Online (Sandbox Code Playgroud)

至:

CharSequence cs[];

cs.add("foo"); // this is wrong...
cs.add("bar"); // this is wrong...
Run Code Online (Sandbox Code Playgroud)

Dav*_*ero 84

使用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()]);
Run Code Online (Sandbox Code Playgroud)


Hei*_*upp 6

你快到了。您需要为条目分配空间,这在上面的初始化情况下会自动为您完成。

CharSequence cs[];

cs = new String[2];

cs[0] = "foo"; 
cs[1] = "bar"; 
Run Code Online (Sandbox Code Playgroud)

实际上 CharSequence 是一个接口,因此不能直接创建,但 String 作为其实现之一可以。