如何从其他类访问我的数组?我有3个班级; Main(我想从中访问数组)FramePanel(我的GUI和取自UserInputNum的值)和StoryArray(保存我的数组)。
我需要在Main类的嵌套If循环中访问数组,这是因为我想将特定的数组数据保存到字符串中并最终将其附加到JTextArea中。
以下是所需的两个类:
Main.java
public class Main
{
public static String UserInput;
public static int UserInputNum;
public static void main(String[] args)
{
FramePanel.main();
StoryArray.main();
UserInputNum = Integer.parseInt(UserInput);
if (UserInputNum >= 0)
{
if (UserInputNum <= 399)
{
StoryArray.storyLine[UserInputNum];
}
else
{
}
}
else
{
}
}
}
StoryArray.java
public class StoryArray
{
public static String storyLine[] = null ;
public String[] getStoryLine()
{
return storyLine;
}
public static void main()
{
//String[] storyLine;
storyLine = new String[399];
storyLine[0] ("1")
storyLine[1] ("2")
storyLine[2] ("3")
storyLine[3] ("4")
storyLine[4] ("5")
storyLine[5] ("6")
答案 0 :(得分:2)
在另一个类中,您可以像这样调用数组:
String value = StoryArray.storyLine[index];
答案 1 :(得分:1)
由于它是静态公共字段,因此您可以StoryArray.storyLine
直接访问它。但是,当你有一个getter方法时,我建议将这个getter setter设置为static并将数组字段设为private,并通过getter方法访问它:StoryArray.getStoryLine()
(看看为什么要阅读封装)。
你也不应该从小写开始你的类(主)名称,这里是java语言的标准编码约定:http://www.oracle.com/technetwork/java/codeconvtoc-136057.html
答案 2 :(得分:1)
一旦您调用StoryArray.main()
,您就应该能够StoryArray.storyLine[/*element id*/] = "whatever you want"
获取或设置storyLine中的任何元素。此外,您不能定义任何默认数组值。在StoryArray.main()中,您需要具有storyLine[n] = "n"
形式的行。