1.10 星期三
array 数组:数组是一个具有相同类型的数据值得索引集合.
数组申明:double[] rainfull; 推荐
或
double rainfull[];
引用数据类型:接口,对象,数组.
rainfull = new double[12];
创建一个长度为12的数组,把空间地址赋给rainfull.
数组索引是从0开始(没特殊要求情况下,索引一般都是从0开始)
动态数组--自动增长
数组.length (属性)
String.leng() (方法)
String[] m = {"a","b","c"...}
在申明初始化时,数组的大小设定.
int size;
int[] number;
size = Integer.parseInt(JOptionPane.showMessageLag(null,"size of .."));
number = new int[size]; (方法也不是很好.因为size不一样,对象也就不一样.)
可变型数组
对象数组
数组的类型不是基本数据类型;
Person[] person;
person = new Person[20];
对象数组每个元素都是一个对象,没初始化时是null.
Person[0] = new Person[]; 创建对象
1.11 星期四
JCF--java集合框架
Java Collection Framework
JCF是什么?
是java语言设计出来的针对底层算法和数据结构的一系列类.
在哪用JCF?
凡是提到数据结构和算法的都可以用JCF
为什么用JCF?
让程序员的重点放在业务上,而不是如何去写算法上.
接口 Collection
| |
| |
set---- ----list map
实现 HashSet ArrayList SoredMap
算法 Collections
以上构成JCF
list 列表 map 映射
list的重要特征是帮我们管理大量对象
ArrayList 数组列表
LinkedList (单双)链表 (不是连续的,通过指针连接)
ArrayList al = new ArrayList();
al.add(1);
al.add(4);
al.add(2); 增加
......
al.remove; 删除
System.out.println(al);
System.out.println(al.get(3));
排序
Collections.sort(al); 小到大
Collections.max(al);
Collections.min(al);
Collections.sort(al,Collection.reverseOrder); 大到小
Vector 跟 ArrayList 很相似
向量
如何便利集合
Iterator it = al.iterator(); 迭带器 挨个访问
while(it.hasNext())
{
System.out.println(al.next);
}
HashMap 不允许重复
TreeMap 自动排序
treeMap tr = new TreeMap();
tr.put(1,1); (key,value)
.......
Object[] o = tr.keySet().ToArray();
Object[] o = tr.value().ToArray();
System.out.println(tr);
for(int i = 0;i<o.leng;i++)
{
System.out.println(0[i]);
}