繁体   English   中英

如何使String数组递增?

[英]How do I make a String array increment?

我对此一无所知,我可能知道答案。 每次调用此函数时,如何使我的String[]数组递增? 这是功能代码:

public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){

        //The /ticket command
        if(cmd.getName().equalsIgnoreCase("ticket")){
            //Gets amount of arguments
            int size_of_args = args.length;

            String ticket = null;
            String[] ticket_array;

            //Puts ticket into one string to be stored.
            for (int i=0; i<=size_of_args; i++){
                ticket = ticket + args[i];
            }


            return true;

            } else {return false;}
    }

我认为我必须做一个for循环,但是我很累,这已经困扰了我一段时间了。 功能不完整,所以不要提及我还没有使用String commandLabelCommandSender sender (对不起,如果听起来很抱歉)。 提前致谢!

PS我不想为String[] ticket_array设置值,因为制作的票证数量应与发送的票证数量一样多。

考虑使用List实例作为类成员,这样,您就不必担心大小,例如:

List<String> commandList = new ArrayList<String>(50);

public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
    //The ticket command
    if(cmd.getName().equalsIgnoreCase("ticket")){
        String ticket = "";
        // ommiting
        commandList.add(ticket);
        return true;
    } 
    else {
        return false;
    }
}

我不确定我是否正确理解了您的问题,但听起来好像您想在每次调用函数时访问数组的更高索引。 如果是这种情况,那么您可能要考虑使用静态计数器变量。 这将必须在函数范围之外定义,但可以在函数调用期间增加

static int arrayCounter = 0;

public boolean onCommand(CommandSender sender, Command cmd, String commandLabel,            String[] args){
    //The ticket command     
    arrayCounter++;
    .
    .
    .
}

然后使用

ticket_array[arrayCounter];

访问所需的索引

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM