我是java的初学者,需要一些帮助。
我正在尝试将一个关联列表的抽象数据类型Foo转换为字符串B的Arraylist。如何遍历列表并将每个字符串添加到数组中。
我可能在思考它,但我现在迷失了。
提前感谢您的帮助。
答案 0 :(得分:42)
实例化一个新的ArrayList:
List<String> myList = new ArrayList<String>();
迭代你的数据结构(例如,使用for循环,有关代码的更多细节会有所帮助。)和每个元素(yourElement):
myList.add(yourElement);
答案 1 :(得分:10)
如果你有一个名为'foo'的字符串的arraylist,你可以使用以下方法轻松地将其添加(添加)到另一个ArrayList,'list':
ArrayList<String> list = new ArrayList<String>();
list.addAll(foo);
这样你甚至不需要循环任何东西。
答案 2 :(得分:4)
您应该可以执行以下操作:
ArrayList<String> list = new ArrayList<String>();
for( String s : foo )
{
list.add(s);
}
答案 3 :(得分:1)
好吧,你必须遍历你的抽象类型Foo,这取决于该对象上可用的方法。您不必遍历ArrayList,因为此对象在Java中自动增长。 (不要将它与其他编程语言中的数组混淆)
答案 4 :(得分:0)
感谢您的帮助,我已经解决了我的问题:)如果有其他人需要,以下是代码:D
import java.util.*;
public class HelloWorld {
public static void main(String[] Args) {
Map<Integer,List<Integer>> map = new HashMap<Integer,List<Integer>>();
List<Integer> list = new ArrayList<Integer>();
list.add(1);
list.add(9);
list.add(11);
map.put(1,list);
int First = list.get(1);
int Second = list.get(2);
if (First < Second) {
System.out.println("One or more of your items have been restocked. The current stock is: " + First);
Random rn = new Random();
int answer = rn.nextInt(99) + 1;
System.out.println("You are buying " + answer + " New stock");
First = First + answer;
list.set(1, First);
System.out.println("There are now " + First + " in stock");
}
}
}
答案 5 :(得分:0)
如果您正在使用Java 9,那么无需初始化或add
方法就可以轻松获得更少行数。
List<String> list = List.of("first", "second", "third");
答案 6 :(得分:0)
数组列表可以通过以下代码实现:
Arraylist<String> list = new ArrayList<String>();
list.add(value1);
list.add(value2);
list.add(value3);
list.add(value4);