我正在使用这段代码尝试打印出两行:列表中的原始元素和列表切换后的元素。
但是,当我运行该程序时,仅打印列表中的原始元素。我做错了什么吗?
import java.util.ArrayList;
import java.util.List;
public class ListADT {
public static void main (String[] args){
//create a list
List <String> myList = new ArrayList<>(); {
myList.add("A");
myList.add("B");
myList.add("C");
myList.add("D");
myList.add("E");
//show the elements of that list
System.out.println(myList);
}
}
// precondition: x and y are >= 0 and < mylist.size()
//precondition: mylist is not null
void swap(int x, int y, List <String> myList) {
String s = myList.get(x);
myList.set(x, myList.get(y));
myList.set(y, s);
swap(1, 3, myList);
//now console should show new list with elements switched
System.out.println(myList);
}
}
最佳答案
我认为这是因为您从未在任何地方修改过您的列表。
我相信 swap
会修改您的列表,但您从未在主函数中调用函数 swap
。
关于java - 无法弄清楚为什么 System.out.println 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30970689/