javamap代码 javamap详解( 三 )


* 构造Mapmap,存储全部的userName,passWord,模拟数据库
*
*/
public MapDal(ListUser list) {
for (User user : list) {
Map userMap = new HashMapString, String();
userMap.put(user.getUserName(), user.getPassWord());
userMapList.add(userMap);
}
}
/**
* 无参构造器
* */
public MapDal() {
}
/**
*
* @param user
* @return
*/
public boolean isExist(User user) {
boolean rs = false;
//遍历userMapList 查找用户是否存在
for (MapString, String map : userMapList) {
// 找到该map
if (map.get(user.getUserName()) != null) {
rs = true;
}
}
return rs;
}
/**
* addUser,userName已存在则无法加入
* @param user
* @return boolean
*/
public boolean addUser(User user) {
boolean rs = false;
//遍历userMapList 查找用户是否存在
for (MapString, String map : userMapList) {
// 找到该map,已经存在,无法添加
if (map.get(user.getUserName()) != null) {
return rs;
}
}
if (!rs) {
MapString, String userMap = new HashMapString, String(8);
userMap.put(user.getUserName(), user.getPassWord());
userMapList.add(userMap);
rs = true;
}
return rs;
}
/**
* deleteUser
* @return
*/
public boolean deleteUser() {
boolean rs = false;
return rs;
}
/**
* changePassword
* @param user
* @return
*/
public boolean changePassword(User user) {
boolean rs = false;
// 定义遍历索引
int i = 0;
//遍历userMapList 查找用户是否存在
for (MapString, String map : userMapList) {
// 找到该map,remove,再次存入新的
if (map.get(user.getUserName())!=null) {
userMapList.remove(i);
//hashmap 初试默认值 0.75-16
Map userMap = new HashMapString, String(8);
userMap.put(user.getUserName(), user.getPassWord());
userMapList.add(userMap);
rs = true;
}
i++;
}
return rs;
}
/**
* selectAll()
*
* @return 返回全体user
*/
public ListUser selectAll() {
ListUser list = new ArrayListUser();
//遍历map
for (MapString, String userMap : userMapList) {
User user = new User();
//map访问需要使用Map.Entry
//entry 需要Set.iterator().next()
Set entriSet = userMap.entrySet();
IteratorMap.EntryString, String iterator = entriSet.iterator();
if (iterator.hasNext()) {
// 此时entry 是 Object
Map.EntryString, String entry = iterator.next();
user.setUserName(entry.getKey().toString());
user.setPassWord(entry.getValue().toString());
list.add(user);
}
}
return list;
}
}
2、运行效果
javamap的用法javamap的用法如下;
1、void clear():删除Map中所有键值对 。
2、boolean containsKey(Object key):查询Map中是否包含指定key,如果包含则返回true 。
3、boolean containsValue(Object value):查询Map中是否包含指定value,如果包含则返回true 。
4、Set entrySet():返回Map中所包含的键值对所组成的Set集合,每个集合元素都是Map.Entry对象(Entry是Map的内部类) 。
5、Object get(Object key):返回指定key所对应的value,如Map中不包含key则返回null 。
6、boolean isEmpty():查询Map是否为空,如果空则返回true 。
7、Set keySet():返回该Map中所有key所组成的set集合 。
8、Object put(Object key,Object value):添加一个键值对 , 如果已有一个相同的key值则新的键值对覆盖旧的键值对 。
9、void putAll(Map m):将指定Map中的键值对复制到Map中 。
10、Object remove(Object key):删除指定key所对应的键值对,返回可以所关联的value,如果key不存在 , 返回null 。

推荐阅读