“Java任务:用户添加查询”的版本间的差异
来自CloudWiki
第121行: | 第121行: | ||
} | } | ||
</nowiki> | </nowiki> | ||
+ | |||
+ | ==完整代码== | ||
+ | <nowiki>package dao; | ||
+ | |||
+ | import java.util.HashMap; | ||
+ | import java.util.Set; | ||
+ | |||
+ | import dao.*; | ||
+ | import entity.*; | ||
+ | |||
+ | public class UserDaoMap implements UserDao{ | ||
+ | private HashMap<String,User> umap; | ||
+ | private int num ; | ||
+ | public UserDaoMap() { | ||
+ | umap = new HashMap<>(); | ||
+ | num = umap.size(); | ||
+ | } | ||
+ | public void addUser(User u) { | ||
+ | String name = u.getName(); | ||
+ | this.umap.put(name, u); | ||
+ | } | ||
+ | public void queryUser( ) {//查询用户 | ||
+ | String total=""; | ||
+ | Set<String> keys = this.umap.keySet(); | ||
+ | total +=("用户名\t密码\n"); | ||
+ | total +=("***********************\n"); | ||
+ | //遍历keyset,通过map.get(key)方法获得value的值 | ||
+ | for (String key : keys) { | ||
+ | total +=(key + "\t" + this.umap.get(key)+"\n"); | ||
+ | } | ||
+ | System.out.println(total); | ||
+ | } | ||
+ | public boolean hasUser(String name) {//查询某个用户是否存在 | ||
+ | return this.umap.containsKey(name); | ||
+ | } | ||
+ | public boolean verify(String name, String pwd) {//验证用户名和密码是否一致 | ||
+ | if(this.umap.containsKey(name)) { | ||
+ | User u0 =this.umap.get(name); | ||
+ | if(u0.getPwd().equals(pwd)) { | ||
+ | return true; | ||
+ | }else { | ||
+ | return false; | ||
+ | } | ||
+ | }else { | ||
+ | return false; | ||
+ | } | ||
+ | } | ||
+ | public static void main(String[] args) { | ||
+ | // TODO Auto-generated method stub | ||
+ | UserDao uds = new UserDaoMap(); | ||
+ | System.out.println("添加用户u1..."); | ||
+ | User u1=new User("zhangyi","456"); | ||
+ | uds.addUser(u1); | ||
+ | System.out.println("添加用户u2..."); | ||
+ | User u2=new User("ma","123456"); | ||
+ | uds.addUser(u2); | ||
+ | |||
+ | System.out.println("、”ma\",\"123456\"是否是一对有效密码"); | ||
+ | System.out.println(uds.verify("ma","123456")); | ||
+ | |||
+ | System.out.println("查询u1用户是否存在:"); | ||
+ | System.out.println(uds.hasUser(u1.getName())); | ||
+ | |||
+ | //查询所有用户 | ||
+ | System.out.println("查询所有用户:"); | ||
+ | uds.queryUser(); | ||
+ | } | ||
+ | |||
+ | }</nowiki> |
2020年4月28日 (二) 00:54的最新版本
题目介绍
- 应用Java的接口及用法、Map接口和HashMap类有关知识,
- 创建一个用户数据仓库的接口UserDao,以及用户数据仓库接口的实现类UserDaoMap
- 要求:UserDaoMap用HashMap集合存储数据,补充方法内部代码,并编写调用代码进行验证
实现代码
UserDao接口
package dao; import entity.User; public interface UserDao { public void addUser(User u);//添加用户 public void queryUser( );//查询用户 public boolean hasUser(String name);//查询某个用户是否存在 public boolean verify(String name, String pwd);//验证用户名和密码是否一致 }
接口的实现类UserDaoMap
UserDaoMap.java:
package dao; import java.util.HashMap; import dao.*; import entity.*; public class UserDaoMap implements UserDao{ private HashMap<String,User> umap; private int num ; public UserDaoMap() { //待补充 } public void addUser(User u) { //待补充 } public void queryUser( ) {//查询用户 //待补充 } public boolean hasUser(String name) {//查询某个用户是否存在 //待补充 } public boolean verify(String name, String pwd) {//验证用户名和密码是否一致 //待补充 } public static void main(String[] args) { // TODO Auto-generated method stub UserDao uds = new UserDaoMap(); System.out.println("添加用户u1..."); User u1=new User("zhangyi","456"); uds.addUser(u1); System.out.println("添加用户u2..."); User u2=new User("ma","123456"); uds.addUser(u2); System.out.println("、”ma\",\"123456\"是否是一对有效密码"); uds.verify("ma","123456"); System.out.println("查询u1用户是否存在:"); System.out.println(uds.hasUser(u1.getName())); //查询所有用户 System.out.println("查询所有用户:") uds.queryUser(); } }
用到的其他类
User:
package entity; public class User { protected String id; protected String name; protected String pwd; public User() { } public User(String n,String p) { this.name = n; this.pwd = p; } public void setName(String name) { this.name = name; } public void setPwd(String pwd) { this.pwd = pwd; } public String getName() { return this.name; } public String getPwd() { return this.pwd; } public String toString() { String s=""; s= "姓名:"+this.name + " 密码:" +this.pwd; return s; } public static void main(String[] args) { // TODO Auto-generated method stub User u1 = new User(); u1.setName("wangli");u1.setPwd("000000"); System.out.println("姓名: "+u1.getName()+" 密码: "+u1.getPwd()); User u2 = new User("chenming","123456"); System.out.println(u2.toString()); } }
完整代码
package dao; import java.util.HashMap; import java.util.Set; import dao.*; import entity.*; public class UserDaoMap implements UserDao{ private HashMap<String,User> umap; private int num ; public UserDaoMap() { umap = new HashMap<>(); num = umap.size(); } public void addUser(User u) { String name = u.getName(); this.umap.put(name, u); } public void queryUser( ) {//查询用户 String total=""; Set<String> keys = this.umap.keySet(); total +=("用户名\t密码\n"); total +=("***********************\n"); //遍历keyset,通过map.get(key)方法获得value的值 for (String key : keys) { total +=(key + "\t" + this.umap.get(key)+"\n"); } System.out.println(total); } public boolean hasUser(String name) {//查询某个用户是否存在 return this.umap.containsKey(name); } public boolean verify(String name, String pwd) {//验证用户名和密码是否一致 if(this.umap.containsKey(name)) { User u0 =this.umap.get(name); if(u0.getPwd().equals(pwd)) { return true; }else { return false; } }else { return false; } } public static void main(String[] args) { // TODO Auto-generated method stub UserDao uds = new UserDaoMap(); System.out.println("添加用户u1..."); User u1=new User("zhangyi","456"); uds.addUser(u1); System.out.println("添加用户u2..."); User u2=new User("ma","123456"); uds.addUser(u2); System.out.println("、”ma\",\"123456\"是否是一对有效密码"); System.out.println(uds.verify("ma","123456")); System.out.println("查询u1用户是否存在:"); System.out.println(uds.hasUser(u1.getName())); //查询所有用户 System.out.println("查询所有用户:"); uds.queryUser(); } }