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.
}
另外,你會得到類型安全。在編譯時找出問題要好得多,因爲在部署應用程序之前而不是之後可以解決它們。