Java 如何从另一个类访问变量?
我已经为我的类命令创建了一个对象Java 如何从另一个类访问变量?,java,arrays,oop,object,Java,Arrays,Oop,Object,我已经为我的类命令创建了一个对象 Commands commands = new Commands(); 但是,我需要访问该方法中的数组,不知道如何访问 Player.java 如果您想稍微清理一下代码,可以执行以下操作: public String[] commandlist() { return new String[]{"investigate", "go north", "go east", "go south", "go west", "terminate game"}; }
Commands commands = new Commands();
但是,我需要访问该方法中的数组,不知道如何访问
Player.java
如果您想稍微清理一下代码,可以执行以下操作:
public String[] commandlist()
{
return new String[]{"investigate", "go north", "go east", "go south", "go west", "terminate game"};
}
Java已经有了一种存储定义良好的常量值集的方法。它叫 等等 通过这种方式,您可以将命令导入到您编写的类中,并通过返回set的
Commands.values()
获取该类的所有值,这样您就可以根据需要对其进行迭代。通过这种方式,如果您发现需要添加另一个命令,您必须在一个位置执行该操作,因为您只需要对这些值进行操作,检查这些值是否相等,等等
我忘了提到,通过这样做,您不必手动创建对象命令。您想访问
commandlist()
中的命令吗?将返回类型更改为String[]
并返回commands
。感谢您,它似乎已经解决了问题。您不希望您的命令永久存在于某个地方吗?每次有人需要命令列表时,您是否必须创建该字符串[]?它会改变吗?如果不是,则将其设为私有静态final,并编写返回命令的getter方法。
package com.PenguinGaming;
public class Commands {
/*
* Command list:
* - investigate (advanced description)
* - go north
* - go south
* - go west
* - go east
* - pick up
* - eat
* - drink from
* - drink object
* - climb up/down
* - burn
* - use object
* - attack
* - defend
* - description (basic description)
* - read
* - life
* - help (brings up command list)
*/
public void commandlist(){
String[] commands = new String[6];
commands[0] = "investigate";
commands[1] = "go north";
commands[2] = "go east";
commands[3] = "go south";
commands[4] = "go west";
commands[5] = "terminate game";
}
}
public String[] commandlist()
{
return new String[]{"investigate", "go north", "go east", "go south", "go west", "terminate game"};
}
public enum Commands {
INVESTIGATE("investigate"),
GO_NORTH("go north"),
GO_EAST("go east"),
...
}