ArrayList<User> users = new ArrayList<>(); User user1 = new User(); user1.setUsername("李四"); User user2 = new User(); user2.setUsername("王五"); User user3 = new User(); user3.setUsername("李四"); User user4 = new User(); user4.setUsername("李四"); users.add(user1); users.add(user2); users.add(user3); users.add(user4); 将项目username提取出来并转为一个新的list
时间: 2024-03-02 21:53:04 浏览: 62
可以使用 Java 8 的 Stream API 来实现这个需求,代码如下:
```
List<String> usernames = users.stream()
.map(User::getUsername)
.collect(Collectors.toList());
```
其中,`map(User::getUsername)` 将 `User` 对象转换为其 `username` 属性,最终使用 `collect(Collectors.toList())` 方法将结果收集到一个新的 `List` 中。
相关问题
private static List<User> users = new ArrayList<User>();
这段代码创建了一个名为`users`的`List`对象,该对象可以存储`User`类型的元素。使用`ArrayList`实现,初始化为空列表。
`List`是Java集合框架中的一个接口,提供了一种有序、可重复的元素序列。`ArrayList`是`List`接口的实现类之一,它基于数组实现,支持随机访问和快速插入/删除元素。
`User`是一个自定义的Java类,`List`中的元素类型为`User`。通过向`users`列表中添加`User`对象,可以实现对用户的管理。例如,可以通过`users.add(user)`方法将一个新用户添加到列表中,通过`users.get(index)`方法获取指定下标的用户对象。
优化这段代码 private void initPager() { ArrayList<User> list=new ArrayList<>(); ViewPager2 viewPager = findViewById(R.id.view_pager); ArrayList<Fragment> fragments=new ArrayList<>(); User user1=new User(); user1.setSong("等风吹"); user1.setSinger("不是花火呀/小田音乐社"); user1.setImageid(R.drawable.song1); list.add(user1); fragments.add(new ExampleFragment(list)); ViewPagerAdapter pagerAdapter = new ViewPagerAdapter(getSupportFragmentManager(),getLifecycle(),fragments); viewPager.setAdapter(pagerAdapter); }
private void initPager() {
ViewPager2 viewPager = findViewById(R.id.view_pager);
ArrayList<Fragment> fragments = new ArrayList<>();
User user1 = new User();
user1.setSong("等风吹");
user1.setSinger("不是花火呀/小田音乐社");
user1.setImageid(R.drawable.song1);
fragments.add(ExampleFragment.newInstance(user1));
ViewPagerAdapter pagerAdapter = new ViewPagerAdapter(getSupportFragmentManager(), getLifecycle(), fragments);
viewPager.setAdapter(pagerAdapter);
}
// 在 ExampleFragment 中添加 newInstance() 静态方法
public static ExampleFragment newInstance(User user) {
ExampleFragment fragment = new ExampleFragment();
Bundle args = new Bundle();
args.putSerializable("user", user);
fragment.setArguments(args);
return fragment;
}
// 在 ExampleFragment 中获取 User 数据
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (getArguments() != null) {
mUser = (User) getArguments().getSerializable("user");
}
}
阅读全文