这两个(设计一个类,实现接口,查询是否存在某个用户),(设计一个类,实现接口,修改某个用户密码中的字母全部为小写)具体(代码)要怎么写啊?
不太懂这题的两个(设计类实现接口)怎么写。是写个接口,写个类实现接口吗?还是User类实现接口?
可以的话帮我做完这道题,不尽感激!
Java程序设计题
User 有属性:用户名、密码、地址;
有一个接口如下: interface OperationService{ public String action(LinkedList client,String key); }
1.设计一个 User 类(按简单 Java 类的要求设计)
2.设计一个类,实现接口,查询是否存在某个用户 。
3.设计一个类,实现接口,修改某个用户密码中的字母全部为小写。
4.设计主类,执行程序,输出查询、修改后的结果。
3月28日21点前截止
整上
// OperationService.java文件
import java.util.LinkedList;
public interface OperationService {
public String action(LinkedList client, String key);
}
// User.java文件
public class User{
private String username;
private String password;
private String address;
public User(){
this.username = "";
this.password = "";
this.address = "";
}
public User(String username, String password, String address){
this.username = username;
this.password = password;
this.address = address;
}
public String getUsername(){
return this.username;
}
public String getPassword(){
return this.password;
}
public String getAddress(){
return this.address;
}
public void setPassword(String password){
this.password = password;
}
}
// SearchUser.java文件
import java.util.LinkedList;
public class searchUser {
public searchUser(){
;
}
public String action(LinkedList client, String key){
if(client!=null && client.size()>0 && key!=null){
for(Object eachUser: client){
User thisUser = (User) eachUser;
if(thisUser.getUsername().equals(key)){
return thisUser.getUsername()+":"+thisUser.getAddress();
}
}
return "The user "+key+" is not in the list";
}
return "Find failed";
}
}
// setPasswordLowercase.java文件
import java.util.LinkedList;
public class setPasswordLowercase {
public setPasswordLowercase(){
;
}
public String action(LinkedList client, String key){
if(client!=null && client.size()>0 && key!=null){
for(int i = 0; i < client.size(); i++){
User eachUser = (User) client.get(i);
if(eachUser.getUsername().equals(key)){
System.out.println("Before set password, " + key+ "'s password is :" + eachUser.getPassword());
eachUser.setPassword(eachUser.getPassword().toLowerCase());
client.set(i, eachUser);
System.out.println("After set password, " + key+ "'s password is :" + eachUser.getPassword());
return "Set " + key + "'s password to its lowercased format. ";
}
}
return "Set failed. Not find " + key;
}
return "Set failed, for the input arguments invalid.";
}
}
// mainClass.java文件
import java.util.LinkedList;
public class mainClass {
public static void main(String[] args){
LinkedList<User> client = new LinkedList<User>();
client.add(new User("Xiaoming", "xiaomingPassWord", "xiaomingDeAddress"));
client.add(new User("Zhangsan", "zhangSanPassWord", "zhangSanDeAddress"));
client.add(new User("Lisi", "LisiPassWord", "LisiDeAddress"));
client.add(new User("WangWu", "WangwuPassWord", "wangWuDeAddress"));
System.out.println(new searchUser().action(client,"Xiaoming"));
System.out.println(new searchUser().action(client,"xiaoming"));
System.out.println(new searchUser().action(client,"Wangwu"));
System.out.println(new searchUser().action(client,"ProfSnail"));
System.out.println(new setPasswordLowercase().action(client,"Wangwu"));
System.out.println(new setPasswordLowercase().action(client,"Wangwu"));
System.out.println(new setPasswordLowercase().action(client,"Xiaoming"));
System.out.println(new setPasswordLowercase().action(client,"ProfSnail"));
}
}
在我这里已经测试运行通过了。题主可以私信找我要一个打包好的程序包。
@Data
public class User {
private String username;
private String pwd;
private String addresss;
}
// 判断用户是否存在
// 存在 - 返回字符串true
// 不存在 - 返回字符串false
public class OperationServiceImpl0 implements OperationService {
public String action(LinkedList ls, String key) {
if (ls == null || ls.size() == 0) {
return null;
}
if (key == null || key.length() == 0){
return null;
}
return "" + ls.stream().map(e -> (User) e).filter(e -> key.equals(e.getUsername())).findFirst().isPresent()
}
}
public class OperationServiceImpl1 implements OperationService {
public String action(LinkedList ls, String key) {
if (ls == null || ls.size() == 0) {
return null;
}
if (key == null || key.length() == 0){
return null;
}
Optional<User> userOpt = ls.stream().map(e -> (User) e).filter(e -> key.equals(e.getUsername())).findFirst();
userOpt.ifPresent(e -> {
if (e.getPwd() == null || e.getPwd().length() == 0) {
return;
}
e.setPwd(e.getPwd().toLowerCase());
});
return userOpt.orElse(null);
}
}
如下:
import java.io.*;
import java.util.UUID;
# User类
public class User {
private String name; // 姓名
private String passwd; // 密码
private String address; // 地址
public User(String name, String passwd, String address) {
this.name = name;
this.passwd = passwd;
this.address = address;
}
public String info() {
return "姓名:" + name + "\n密码:" + passwd + "\n地址:" + address;
}
}
# 查询
# 修改
谢谢各位
您好,我是问答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632