我有一组消息,需要在文本字段中显示。我想将数组索引(即 [0])分配给一个变量,以便当人们输入正确的文本时,我可以获得当前的数组索引并将其增加到下一个以便能够打印出来。我怎样才能做到这一点?
我有这些方法:
@Override
public void actionPerformed(ActionEvent e) {
String text = commandInput.getText();
messageDisplay.append("\n \n" + text + "\n \n");
commandInput.selectAll();
}
public String getCurrentLevel() {
return currentLevel;
}
commandInput.selectAll()之后;我想做 getCurrentLevel() + 1 来获取数组中要附加的下一个元素。
这是它从中提取的数组类:
package com.game.main;
public class Message {
public String[] messageArray;
public Message() {
messageArray = new String[50];
messageArray[0] = "Welcome. ";
}
}
最佳答案
我不太确定这是否是您正在寻找的内容,但后续调用 getNextMessage() 将返回数组中的下一条消息。调用它太多次,它会超出范围等。这当然假设您没有在调用之间重新创建类,如果是这样,您需要使 indx 静态。
使用 ArrayList 而不是数组来实现此目的的另一种方法:
//using an ArrayList<String>
public class Message {
private int indx = 0;
private ArrayList<String> messages;
public Message() {
messages = new ArrayList<String>();
messages.add("Welcome. ");
}
public String getNextMessage(){
String s = messages.get(indx);
indx++;
return s;
}
<小时/>
// using an array
public class Message {
private int indx = 0;
private String[] messageArray;
public Message() {
messageArray = new String[50];
messageArray[0] = "Welcome. ";
}
public String getNextMessage(){
String s = messageArray[indx];
indx++;
return s;
}
关于java - 将当前数组索引分配给变量以递增它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17001765/