【问题标题】:Java: array attribute in objectJava:对象中的数组属性
【发布时间】:2014-01-27 04:01:59
【问题描述】:

我是 Java 编程的新手,只是想知道您是否可以这样做: 我有一个对象类 Person:

public class Person {

    public String name;
    public String[] friends;
}

如果是如何初始化它,即

newPerson.name = "Max"; 
newPerson.friends = {"Tom", "Mike"};

我试过这样做,但它不起作用。

【问题讨论】:

  • 您需要先创建一个实例。 Person p = new Person();
  • 如果您是新手,请从学习 Java 教程开始。你不能指望通过问 500 个关于 SO 的问题来学习 Java。

标签: java arrays class object


【解决方案1】:

试试这个

new Person("Max", new String[]{"Tom", "Mike"});

您还需要一个构造函数来初始化变量。

public Person(String name, String[] friends){
    this.name = name;
    this.friends = friends;
}

作为一种好的做法,您还应该将类中变量的访问级别限制为私有。 (除非有充分的理由将它们公开。)

【讨论】:

【解决方案2】:

其实很简单

U 可以在创建中初始化(这是最简单的方法):

public class Person {

      public String name = "Max";
      public String[] friends = {"Adam","Eve"};
 }

你可以在你的构造函数中初始化变量

public class Person {
      public String name;
      public String[] friends;
      public Person(){
          name =  "Max";
          friends = new String[] {"Adam", "Eve"};
      }
 }

【讨论】:

    【解决方案3】:

    你可以这样做

    public static class Person {
        public String name;      
        public String[] friends;
    }
    public static void main(String[] args) {
        Person newPerson = new Person();
        newPerson.name = "Max";
        newPerson.friends = new String[] {"Tom", "Mike"};
    }
    

    【讨论】:

      【解决方案4】:

      试试

      newPerson.friends = new String[]{"Tom", "Mike"}

      【讨论】:

        猜你喜欢
        • 2021-06-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-05-17
        • 1970-01-01
        • 2011-03-18
        • 1970-01-01
        • 2011-03-17
        相关资源
        最近更新 更多