我有一个场景,其中我有一个Bean类,我从中获取所有客户端名称和其他客户端相关的详细信息。我正在创建一个Bean对象并获取所有细节。
ArrayList<ClientBean> clientList = (ArrayList<ClientBean>) (new QueriesDAO())
.getAllClient();
从上面的代码我得到了客户的所有细节。并且只通过索引表单获取客户名称,
ClientBean clist = clientList.get(2);
for (ClientBean clientBean : clientList) {
clientBean.getclientName(); // here I'm getting only the Client names one by one.
}
我的问题是如何动态地在ArrayList中添加客户端名称?
答案 0 :(得分:3)
通常,要将值添加到List
(也适用于ArrayList
),您可以使用以下方法:
add(E e)
在列表末尾添加元素add(int index, E element)
在指定位置添加元素addAll(Collection<? extends E> c)
添加列表末尾的所有元素addAll(int index, Collection<? extends E> c)
添加从指定位置开始的所有元素请查看文档(在答案中链接),了解每种方法的详细信息。
将所有客户端名称添加到列表中(我假设名称为String
,最终更改类型)
List<String> names = new ArrayList<String>();
for (ClientBean clientBean : clientList) {
names.add(clientBean.getclientName());
}
// Here names is a list with all the requested names
答案 1 :(得分:2)
考虑使用Java 8的Lambda功能。根据你的帖子,听起来这就是你要找的东西。
List<ClientBean> allClients = new QueriesDAO().getAllClients();
List<String> allClientsNames = allClients.stream()
.map(ClientBean::getClientName)
.collect(Collectors.toList());
答案 2 :(得分:1)
就像您逐个获得客户名称一样,您可以逐个填写您的列表