看有几个人能做出来~

xwguan 2008-10-22 10:11:59
public class B {
public static void main(String[] aa) {
Set<Integer> set = new TreeSet<Integer>();
List<Integer> list = new ArrayList<Integer>();
for (int i = -3; i < 3; i++) {
set.add(i);
list.add(i);
}
for (int i = 0; i < 3; i++) {
set.remove(i);
list.remove(i);
}
System.out.println(set + " " + list);
}
}

输出结果~
...全文
342 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
ayds1984 2008-10-28
  • 打赏
  • 举报
回复
TreeSet<Integer> treeSet = new TreeSet<Integer>();
treeSet.add(5);
treeSet.add(4);
treeSet.add(7);
treeSet.add(2);
System.out.println(treeSet);
System.out.println(treeSet.remove(1));
treeSet.remove(4);
System.out.println(treeSet);


[2, 4, 5, 7]
false
[2, 5, 7]
yurenyang 2008-10-26
  • 打赏
  • 举报
回复
ArrayList内部就是一个array,线性表,所以删除和插入元素都要移动
ThinkingInJava110 2008-10-23
  • 打赏
  • 举报
回复
mark!
FJQZHW_ZHUANGWH 2008-10-23
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 sbfivwsll 的回复:]
TreeSet这个是排序。set本身是无序的,就像一个圆,在每段弧上放了一些东西。这些东西的位置都是等效的。但是使用treeset后,就是按升序排列。{-3,-2,-1,0,1,2},调用remove 方法后,依次删除0,1,2元素,余下的就是-3 -2 -1,输出为[-3,-2,-1]
list是有序的。第一个放入的记顺序0,第二个放入的记序为1。。。依次类推。放完后的顺序是:-3 -2 -1 0 1 2
第一次移remove(0),移除的是-3,余下:-2 -1 0 1 2 ,下标依次降1。第二…
[/Quote]

支持
getter 2008-10-23
  • 打赏
  • 举报
回复
不會,不知那些Set為何物,哇,這樣筆試應該很慘吧,萬一沒用過那個東西,那麼去筆試豈不是要把jdk api doc都要背啊...
rosewj 2008-10-23
  • 打赏
  • 举报
回复
学习 学习 我也做错了
sincor 2008-10-23
  • 打赏
  • 举报
回复
不会的路过
GGMMYQL 2008-10-23
  • 打赏
  • 举报
回复
好题目啊

学习了!
xwguan 2008-10-23
  • 打赏
  • 举报
回复
ArrayList LinkedList底层是用链表做的吧~
红男爵 2008-10-22
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 sbfivwsll 的回复:]
TreeSet这个是排序。set本身是无序的,就像一个圆,在每段弧上放了一些东西。这些东西的位置都是等效的。但是使用treeset后,就是按升序排列。{-3,-2,-1,0,1,2},调用remove 方法后,依次删除0,1,2元素,余下的就是-3 -2 -1,输出为[-3,-2,-1]
list是有序的。第一个放入的记顺序0,第二个放入的记序为1。。。依次类推。放完后的顺序是:-3 -2 -1 0 1 2
第一次移remove(0),移除的是-3,余下:-2 -1 0 1 2 ,下标依次降1。第二…
[/Quote]

好,顺带学习下Set。
我的Java用哪学哪,呵呵~~

总结下考点:
Set放的是Object(Integer)对象,remove的是对象。
List其实就是Object Array结构,不过有点像栈的特点,remove的是index内的对象。

Java和C/C++通用哦,原来差不多,不过就是新发明一些新的武器/工具/方法而已。
sourpuss 2008-10-22
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 sbfivwsll 的回复:]
TreeSet这个是排序。set本身是无序的,就像一个圆,在每段弧上放了一些东西。这些东西的位置都是等效的。但是使用treeset后,就是按升序排列。{-3,-2,-1,0,1,2},调用remove 方法后,依次删除0,1,2元素,余下的就是-3 -2 -1,输出为[-3,-2,-1]
list是有序的。第一个放入的记顺序0,第二个放入的记序为1。。。依次类推。放完后的顺序是:-3 -2 -1 0 1 2
第一次移remove(0),移除的是-3,余下:-2 -1 0 1 2 ,下标依次降1。第二…
[/Quote]

up
qiandongbo 2008-10-22
  • 打赏
  • 举报
回复
呵呵,吃次亏长次记性,没事啦~
ZangXT 2008-10-22
  • 打赏
  • 举报
回复
教训啊。
qiandongbo 2008-10-22
  • 打赏
  • 举报
回复
缓冲~嘎嘎!
ZangXT 2008-10-22
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 ZangXT 的回复:]
自己顺便编了一道,呵呵。
Java codeimportjava.util.ArrayList;importjava.util.List;importjava.util.Set;importjava.util.TreeSet;publicclassMain {publicstaticvoidmain(String[] aa) {
Set<Integer>set=newTreeSet<Integer>();
List<Integer>list=newArrayList<Integer>();for(inti=128; i<135; i++) {
set.add(i);
}for(inti=128; i<130; i++) {
set.remove(i);

[/Quote]
晕,贴错了这个。
ZangXT 2008-10-22
  • 打赏
  • 举报
回复
自己顺便编了一道,呵呵。


import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.TreeSet;

public class Main {

public static void main(String[] aa) {
Set<Integer> set = new TreeSet<Integer>();
List<Integer> list = new ArrayList<Integer>();
for (int i = 128; i < 135; i++) {
set.add(i);
}
for (int i = 128; i < 130; i++) {
set.remove(i);
}
System.out.println(set);
}
}
qiandongbo 2008-10-22
  • 打赏
  • 举报
回复
我也做错了~
铑枪--突廆孒 2008-10-22
  • 打赏
  • 举报
回复
TreeSet这个是排序。set本身是无序的,就像一个圆,在每段弧上放了一些东西。这些东西的位置都是等效的。但是使用treeset后,就是按升序排列。{-3,-2,-1,0,1,2},调用remove 方法后,依次删除0,1,2元素,余下的就是-3 -2 -1,输出为[-3,-2,-1]
list是有序的。第一个放入的记顺序0,第二个放入的记序为1。。。依次类推。放完后的顺序是:-3 -2 -1 0 1 2
第一次移remove(0),移除的是-3,余下:-2 -1 0 1 2 ,下标依次降1。第二次移除remove(1),移除-1,余下:-2 0 1 2第三次次移除1,因此余下的元素是:-2 0 2
所以两个的打印结果是:[-3,-2,-1] [-2,0,2]
Leonhe2022 2008-10-22
  • 打赏
  • 举报
回复
List的底层是数组实现的,Set是哈希表。。。

楼主去研究源码啊,就明白啦
cursor_wang 2008-10-22
  • 打赏
  • 举报
回复
[-3, -2, -1] [-2, 0, 2]
概念问题.所以基础要扎实.
加载更多回复(7)

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧