性格决定命运,气度影响格局
posts - 20, comments - 18, trackbacks - 0, articles - 1
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

48 java能动态分配数组吗?
  答:可以。例如int n = 3; Language[] myLanguages = new Language[n];

49 我怎么知道数组的长度?
  答:用length属性。如上例中的 myLanguages.length 就为 3。

50 我还想让数组的长度能自动改变,能够增加/删除元素。
  答:用顺序表--java.util.List接口。
  你可以选择用ArrayList或是LinkedList,前者是数组实现,后者是链表实现。
  例如: List list = new ArrayList(); 或是 List list = new LinkedList(); 。

51 什么是链表?为什么要有两种实现?
  答:请补习数据结构。

52 我想用队列/栈。
  答:用java.util.LinkedList。

53 我希望不要有重复的元素。
  答:用集合--java.util.Set接口。例如:Set set = new HashSet()。

54 我想遍历集合/Map。
  答:用java.util.Iterator。参见API。

55 我还要能够排序。
  答:用java.util.TreeSet。例如:Set set = new TreeSet()。放进去的元素会自动排序。
  你需要为元素实现Comparable接口,还可能需要提供equals()方法,compareTo()方法,hashCode()方法。

56 但是我想给数组排序。
  答:java.util.Arrays类包含了sort等实用方法。

57 我想按不同方法排序。
  答:为每种方法定义一个实现了接口Comparator的类并和Arrays综合运用。

58 Map有什么用?
  答:存储key-value的关键字-值对,你可以通过关键字来快速存取相应的值。

59 set方法没问题,但是get方法返回的是Object。
  答:强制类型转换成你需要的类型。参见45。

60 我要获得一个随机数。
  答:使用java.util.Random类。

61 我比较两个String总是false,但是它们明明都是"abc" !
  答:比较String一定要使用equals或equalsIgnoreCase方法,不要使用 == !
  ==比较的是两个引用(变量)是否指向了同一个对象,而不是比较其内容。


评论

# re: java入门与提高 -- 6.java.util篇 转载  回复  更多评论   

2007-10-30 16:10 by 尚小猪猪
精彩!!!!

只有注册用户登录后才能发表评论。


网站导航: