gpt4 book ai didi

java - 设置和读取多维数组

转载 作者:行者123 更新时间:2023-12-02 07:09:59 24 4
gpt4 key购买 nike

所以...我今天才看到 Java for Web,而且我已经有一个巨大的项目在工作了。我习惯了 PHP 和 C++,所以学习这门语言并没有遇到太多麻烦,但我一直在这个问题上。

我有一个 void,它具有该格式的多维数组:

array( "data" => array ( "Name" => "John", "Age" => "16" ) )

我的问题是:

我如何设置我的方法来接受这种数组(上面)以及如何读取该多维数组(下面)?

例如:

public void getArray(String[] data) { println(data["data"]["Name"]; }

-

getArray(array("data" => array("Name" => "John", "Age" => "16")));

// to returns: 'John'

--

Obs.:抱歉,如果这是一个愚蠢的问题,我真的没有任何 Java 知识。我要去学习,但我确实需要回答这个问题。

提前致谢。

最佳答案

PHP 的数组实际上并不是数组,它们是 hash tables 。 Java的版本是HashMap .

HashMap<String, String> data = new HashMap<String, String>();
data.put("Name", "John");
// etc.
System.out.println(data.get("Name"));

您还应该研究类,因为非 PHP 程序员通常就是这样做的:

class Person {
private String name;
private int age;

public Person(String name, int age) {
this.name = name;
this.age = age;
}

public String getName() {
return this.name;
}

// etc.
}

然后:

class SomeClass {
public static void main(String[] args) {
Person person = new Person("John", 16);
HashMap<String, Person> people = new HashMap<String, Person>();
people.put(person.getName(), person);
}
}

类可以使大型项目的事情变得更加简单,因为它们不仅仅可以保存值:

class Person {
private String firstName;
private String lastName;

public Person(String firstName, String lastName) {
this.firstName = firstName;
this.lastName = lastName;
}

/**
* Returns a person's full name (first and last name), without
* storing it as a seperate variable internally.
*/
public String getName() {
return this.firstName + " " + this.lastName;
}

public String getFirstName() {
return this.firstName;
}

// etc.
}

此外,您还可以获得类型安全。在编译时发现问题要好得多,因为您可以在部署应用程序之前而不是之后解决它们。

关于java - 设置和读取多维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15647640/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com