ジェームズ:
以下は私のユーザークラスです。私はまた、単一通貨カードクラスとマルチカード通貨クラスの親クラスであるカードのクラスを持っています。
私はコーディングにかなり新しいですし、トラブルのいくつかの概念を理解しています。私は何をする必要があることは、ユーザー名とパスワードと一致する場合、ユーザーが所有するカードを返しています。これはgetCards方法です。この後、私は、ユーザー名とパスワードが一致した場合のHashMapリストにカードを追加する必要があります。任意のヒントや私はHashMapのコンセプトで多くの苦労として本当に役立つだろう他のサイト。
public class User {
String username;
String password;
User user;
HashMap<String,Card> userHash = new HashMap <String, Card>(); //key is the cardID
public User(String username, String password)
{
this.username = username;
this.password = password;
}
public String toString()
{
return "User ---------" + "\n" + "Username: " + username + "\n" + "Password: " + password;
}
public String getUsername()
{
return username;
}
public String getPassword()
{
return password;
}
public boolean userValidate(String username, String password)
{
if (username.contains(user.getUsername()) && password.contains(user.getPassword()))
{
System.out.println("User accepted");
return true;
}else
System.out.println("Access denied");
return false;
}
public HashMap<String, Card> getCards(String username, String password)
{
for(String value : userHash.keySet())
if (user.userValidate(username, password) == true)
{
//return user's cards
return true;
}else
return null;
return null;
}
public boolean addCard(Card card, String username, String password)
{
if(user.userValidate(username, password) == true)
{
user.getCards(username, password);
}
return false;
}
The card which belongs to the user
tommybee:
ここに私のデザインコンセプトです。
この場合、ユーザークラスは、多くのカードを持つことができ、各カードにはIDを持っています。検証チェックを毎回作成、ユーザーを保存する必要があります。
userValidate方法は、それ自体の値と引数を確認のisValid変数(ブール値)に保存することができます。
public boolean userValidate(String username, String password)
{
if (username.contains(getUsername()) && password.contains(getPassword()))
{
System.out.println("User accepted");
return isvalid = true;
}else
System.out.println("Access denied");
return isvalid = false;
}
それはのisValidが真であるかないことを確認しますので、getCards方法は簡単です。
public HashMap<String, Card> getCards() {
if (isvalid) {
// return user's cards
return userHash;
} else
return null;
}
ユーザーの検証が成功したか何であればaddCard方法は、私は、カードIDとカードを保存することができます...
public boolean addCard(Card card, String username, String password)
{
if(userValidate(username, password))
{
userHash.put(card.getCardId(), card);
return true;
}
return false;
}
だから、すべてのこれらのコードと一緒に来ます。
輸入java.util.HashMapを;
class Card
{
private String cardId;
public String getCardId() {
return cardId;
}
public void setCardId(String cardId) {
this.cardId = cardId;
}
}
public class User {
private String username;
private String password;
private boolean isvalid;
HashMap<String, Card> userHash = new HashMap<String, Card>(); // key is the
// cardID
public User(String username, String password) {
this.username = username;
this.password = password;
}
public boolean userValidate(String username, String password)
{
if (username.contains(getUsername()) && password.contains(getPassword()))
{
System.out.println("User accepted");
return isvalid = true;
}else
System.out.println("Access denied");
return isvalid = false;
}
public String toString() {
return "User ---------" + "\n" + "Username: " + username + "\n" + "Password: " + password;
}
public String getUsername() {
return username;
}
public String getPassword() {
return password;
}
public HashMap<String, Card> getCards() {
if (isvalid) {
// return user's cards
return userHash;
} else
return null;
}
public boolean addCard(Card card, String username, String password)
{
if(userValidate(username, password))
{
userHash.put(card.getCardId(), card);
return true;
}
return false;
}
}