容器类
接口特点 : 元素是对象 (Object)
常用方法 :
遍历 :
1.迭代遍历
list中的元素类型为String Iterator<String> it = list.iterator(); while(it.hasNext()) { String s = it.next(); System.out.println(s.toUpperCase()); }
2.for-each遍历
list中元素类型为String for(String s : list) { System.out.println(s.toUpperCase()); }
3.自遍历
list中元素类型为String list.forEach(new Consumer<String>() { public void accept(Strign s) { System.out.println(s.toUpperCase()); } }); list.forEach(s->System.out.println(s.toUpperCase())); list.forEach(元素->你要对元素做什么);
List :Collection的子接口
接口特点 : 元素是有顺序, 有下标的. 元素可以重复
常用方法
1…迭代遍历
2.for-each遍历
3.自遍历
4.下标遍历
list中元素类型为String for(int i = 0 ; i < list.size() ; i++) { String s = list.get(i); System.out.println(s.toUpperCase()); }
Set Collection的子接口
接口特点: 元素是无顺序, 无下标的. 元素内容不可重复
常用方法: 无
遍历
迭代遍历
for-each遍历
实现类
HashSet 底层存储结构:链表数组
如果将自定义的对象放入HashSet,为了保证元素内容不重复
覆盖equals方法, 保证内容相同的对象返回true
覆盖hashCode方法, 保证内容相同的对象返回相同的整数
为了哈希表实现最优性能, 尽量保证不同对象返回不同的整数
LinkedHashSet HashSet的子类 元素在遍历时,按照元素的添加顺序遍历
TreeSet 自动对元素排序, 根据排序规则过滤重复元素
Map
接口特点 : 元素 是 键值对 key 键对象 无顺序, 内容不可重复 value 值对象 可以重复
常用方法
遍历
1.keySet() 遍历所有的key组成的Set
2.values() 遍历所有的value组成的Collecion
3.forEach() 自遍历
项目概括
必做功能:
用户登录 (登录后不再提供该功能) 显示用户登录信息 用户注册 修改密码 (登录后可进行) 修改个人信息 (登录后可进行) 安全退出 显示所有商品 加入购物车 查看购物车 (登录后可进行)
扩展功能:
购物车 +-数量 购物车 删除购物项 购物车 提交修改 提交订单 查看订单
管理员功能:
添加删除购物车东西 删除用户订单 删除用户信息 查看订单信息 修改订单信息