有没有一种方法可以将数组对象添加到一个类?

时间:2020-09-14 01:48:17

标签: java arrays android-studio object

我对此很陌生,但是我试图将对象数组添加到android studio中的类。我创建了一个“用户”类,该类将用于存储每个用户的信息。我需要为每个用户创建一个对象,并设置适当的变量(名称,密码和喜欢的颜色),并将其存储在数据结构中。正如您在下面的代码中所看到的,香港专业教育学院一直在试图找出解决此问题的最佳方法,但是我仍然不确定。如果有人可以帮助或给我任何指导,将不胜感激。

public class User {

String user1[] = new String[3];
String user2[] = new String[3];
String user3[] = new String[3];
String user4[] = new String[3];
String user5[] = new String[3];

String user[] = {"Jason", "Sword", "Red"};

}

4 个答案:

答案 0 :(得分:1)

我认为您需要稍微改变一下结构。

您在上面提供给我们的课程实际上不是用户,而是一组用户。我建议您相应地重命名该类,例如用户组。 “用户”也可以正常工作,但是如果有人在代码中快速浏览,他们可能会认为他们改为读“用户”而感到困惑。我很确定我会的!

转到另一个名为User的类,其中包含一堆String字段,用于存储您想要存储的不同值,例如

public class User {
  String name;
  String weapon;

  public User(String name, String weapon) {
    this.name = name;
    this.weapon = weapon;
  }

}

回到您的UserGroup类中,不保存字符串数组,而保存实际用户,例如

public class UserGroup {

  User user1 = new User("Jason", "Sword");

}

答案 1 :(得分:0)

当您使用Android Studio时,我想您想创建一个应用程序。因此,如果是这样的话,则必须将用户数据存储在文件中,因为类是一种逻辑构造。该类仅在运行时有效。因此,当您使用类时,运行时它将破坏用户数据,这实际上是没有用的。最好使用文件和对象,并且不要忘记使用安全哈希算法作为密码。

答案 2 :(得分:0)

您可以使用两个哈希映射。 “ UserAPass”用于存储名称和密码。 “ UserAFavCol”用于存储名称和喜欢的颜色。 将两个哈希映射都设置为静态,以便可以根据应用使用情况在实例之间共享。

import java.util.HashMap;
public class User {
static HashMap<String, String> UserAPass = new HashMap<String, String>();
static HashMap<String, String> UserAFavCol = new HashMap<String, String>();
    void addUser(String name, String pass, String col) {
        UserAPass.put(name, pass);
        UserAFavCol.put(name, col);
    }
}

答案 3 :(得分:-1)

// StoreProvider.js
import React from "react";

export const StoreContext = React.createContext();
...

}