0

サイズが定義されていない配列を作成する必要があります。この配列にはユーザー情報が含まれます。

例えば:

user[0]["name"] = "Patrick";

ただし、標準のJava配列には既知の長さが必要なようですが、これはわかりません。

どのような代替手段を使用できますか?(コーディング例もいくつか見ていきます)コンストラクターでオブジェクトを渡すことができないTCPフレームワーク( したがって、私が見る限り、Userオブジェクトを作成することはできません。

4

4 に答える 4

3

まず、任意のデータ構造の代わりにオブジェクトを使用する必要があります。サイズがわからない場合は、リストを使用します

List<Person> people = new ArrayList<Person>();
people.add(new Person("Patrick"));
于 2012-12-03T10:53:35.520 に答える
1

Javaでは、セルインデックスに整数値のみを使用できます。

私はあなたが地図のリストを探していると思います:

List<Map<String, String>> persons = new ArrayList<Map<String, String>>();

// add Patrick
Map<String, String> person = new HashMap<String, String>();
person.put("name", "Patrick");
person.put("age", "23");
persons.add(person);

// add Sue
person = new HashMap<String, String>();
person.put("name", "Sue");
person.put("age", "21");
persons.add(person);

たとえば、すべての名前にアクセスするには、次のようにします。

for (Map<String, String> person:persons) {
  System.out.println(person.get("name"));
}
于 2012-12-03T10:53:04.760 に答える
0

Javaでは連想配列を使用できません。つまり、「名前」をキーとして使用することはできません。

ただし、次のようにすると、サイズを指定せずに空の配列を作成できます。

String[] array = new String[]{};

ただし、この配列に何かを入れようとすると、indexoutofbound例外が発生します

于 2012-12-03T10:53:28.867 に答える
0

クラス(Personなど)を作成し、リストのみを使用して管理することを検討する必要があります。あなたはこのようなことをすることができます:

List<Peson> myLyst = new ArrayList<Person>();
Person person = new Person("Patrick");
myList.add(0, person);
于 2012-12-03T10:56:36.760 に答える