Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从不同类访问数组中创建的对象_Java_Arrays - Fatal编程技术网

Java 从不同类访问数组中创建的对象

Java 从不同类访问数组中创建的对象,java,arrays,Java,Arrays,我在试图弄清楚如何从Main访问在另一个类的数组中创建的对象时遇到困难。感谢我所做的一切 在Main类中,提示用户输入餐厅中的桌子数 以数字n为例,在Restaurant类中创建n个表对象的数组 访问创建的每个tableobject,并能够通过构造函数从main向其添加值 希望代码能够更好地解释 我的主课 Restaurant RestaurantObject = new Restaurant(); Table TableObject = new Table(); System.out.pr

我在试图弄清楚如何从Main访问在另一个类的数组中创建的对象时遇到困难。感谢我所做的一切

在Main类中,提示用户输入餐厅中的桌子数 以数字n为例,在Restaurant类中创建n个表对象的数组 访问创建的每个tableobject,并能够通过构造函数从main向其添加值 希望代码能够更好地解释

我的主课

Restaurant RestaurantObject = new Restaurant(); 
Table TableObject = new Table();

System.out.println("Max Tables In Restaurant? (Interger)");//Set Max Tables
Scanner smax_tables = new Scanner(System.in);
int max_tables = smax_tables.nextInt();
RestaurantObject.create_table_array(TableObject, max_tables);
我的餐厅课

private Table[] TableList; //and other random variables
//other methods

public void create_table_array(Table table,int number) {
        Table[] TableList = new Table[number];
        int i = 0;
        for(i = 0; i < number; i++) {
            TableList[i] = table;
        }
public Restaurant() {

}
以及我想要的行动

运行程序并为max tables输入5 餐厅中创建的5张桌子 RestaurantObject.Table110//将表对象中的最大值设置为10 表1的System.out.printfmax金额为%d,Restaurant.table1.getMax
现在我正在看。我是否需要提示用户编辑、获取并返回数组中的表对象?任何帮助都会很好,谢谢

如果我正确回答了您的问题,您希望访问此处创建的阵列:

public void create_table_array(Table table,int number) {
    Table[] tableList = new Table[number];
    int i = 0;
    for(i = 0; i < number; i++) 
            tableList[i] = table;
}
现在,在主程序中,可以如下方式调用该方法:

Table[] tables = RestaurantObject.create_table_array(TableObject, max_tables);
现在您可以通过索引访问所有表。比如说

for(int i = 0; i < tables.length; i++)
    //do something to tables[i]
此外,您应该坚持JAVA命名约定,并使用camelCase作为变量名。例如:TableList==>TableList等

Table[] tables = RestaurantObject.create_table_array(TableObject, max_tables);
for(int i = 0; i < tables.length; i++)
    //do something to tables[i]