int idx = r.nextInt(i);
Card x = (Card)cards.get(i);
x = (Card)cards.set(idx, x);
cards.set(i,x);
怎么理解后三句这个程序呢?java
Card x = (Card)cards.get(i);
x = (Card)cards.set(idx, x);
cards.set(i,x);
怎么理解后三句这个程序呢?java
解决方案 »
- JAVA打印指定TXT出现乱码!!!!
- 终极报错啊~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~大家不知道是否遇到过~~麻烦大家了。巨星级问题啊。555解决给1000分啊
- 代码块的执行顺序
- 有关流式Socket通信程序中遇到的问题??
- 初学者,好混乱,请教有开发经历的java程序员
- 【求助】相应鼠标事件问题?
- 组合初始化
- JTextPane的问题
- 初学者的问题,我在电脑D:\java目录下写了一个helloworld.java编译时出错,请指点
- Please help me! 哪位大虾能介绍几本着重于Java综合性编程实例的书或相关材料?
- 高分球算法--求算法分割字符串为数组
- 今天看别人写的代码我感觉好高深,分享下
Card x = (Card)cards.get(i);//得到卡堆中第i位置的卡片,并赋值给x
x = (Card)cards.set(idx, x);//将x卡和卡堆中第idx位置的卡片对换,此时x就是cards中第idx位置的卡片
cards.set(i,x);将此时的x插入第i位置//总之这是在把cards中第i位置和第idex位置的card对象进行交换~
x是card。
你要不看看doc上咋写的:
public E set(int index,
E element)
Replaces the element at the specified position in this list with the specified element. 再不行你拿段代码去测试看看 String a = new String("A");
String b = new String("B");
ArrayList<String> stringList = new ArrayList<String>();//这是stringList,存放着A和B
stringList.add(a);
stringList.add(b);
System.out.println(stringList.toString());//输出结果是【A,B】
String tmp = stringList.get(0);//tmp = "A"
tmp = stringList.set(1, tmp);//tmp = “B”;
stringList.set(0, tmp);
System.out.println(stringList.toString());