gpt4 book ai didi

java - ArrayList 声明与转换

转载 作者:太空狗 更新时间:2023-10-29 23:02:57 27 4
gpt4 key购买 nike

我对 Java 编程相当陌生,正在学习 Google 的 Udacity 类(class)作为进修。我正在学习有关 Sunshine 应用程序的第 1 课,讲师选择通过声明一个字符串数组然后将其转换为 ArrayList 来创建假数据。

代码如下:

String[] data = {
"Mon 6/23 - Sunny - 31/17",
"Tue 6/24 - Foggy - 21/8",
"Wed 6/25 - Cloudy - 22/17",
"Thurs 6/26 - Rainy - 18/11",
"Fri 6/27 - Foggy - 21/10",
"Sat 6/28 - TRAPPED IN WEATHERSTATION - 23/18",
"Sun 6/29 - Sunny - 20/7"
};
List<String> weatherForecast = new ArrayList<>(Arrays.asList(data));

我想知道使用这种转换方法有什么好处吗?为什么不立即将数据声明为 ArrayList:

    ArrayList weatherForecast = new ArrayList();
weatherForecast.add("Today - Sunny - 88/63");
weatherForecast.add("Tomorrow - Foggy = 70/46");
weatherForecast.add("Weds - Cloudy - 72/63");
weatherForecast.add("Thurs 6/26 - Rainy - 18/11");
weatherForecast.add("Sat 6/28 - TRAPPED IN WEATHERSTATION - 23/18");
weatherForecast.add("Sun 6/29 - Sunny - 20/7");

谢谢!

最佳答案

“正常”方式是使用第三种形式:

List<String> weatherForecast = new ArrayList<>();
Collections.addAll(weatherForecast,
"Mon 6/23 - Sunny - 31/17",
"Tue 6/24 - Foggy - 21/8",
"Wed 6/25 - Cloudy - 22/17",
"Thurs 6/26 - Rainy - 18/11",
"Fri 6/27 - Foggy - 21/10",
"Sat 6/28 - TRAPPED IN WEATHERSTATION - 23/18",
"Sun 6/29 - Sunny - 20/7");

List 是一个接口(interface),使用它可以使用另一个实现类,如 LinkedList(仅用于几个元素)。也可用作参数类型。

这使用 Collections 实用程序类来添加可变参数 ...字符串。并在引擎盖下使用 String[]对于那些参数。

.asList第一个选项的 List<String> 就足够了不添加到。

关于java - ArrayList 声明与转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32092787/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com