gpt4 book ai didi

java - 移动数组中的元素

转载 作者:行者123 更新时间:2023-12-02 05:45:17 25 4
gpt4 key购买 nike

我正在尝试移动数组中的元素。我按照书上的方法尝试过,但似乎不起作用。用户在主类中输入要移动数组的数量,然后将其发送到移位器类的移位方法中。从数组位置 [1] 开始。

这就是我所拥有的:

// Pos is the users entered for how many positions to shift
// data is the array of elements 1-length of data
// temp is place holder

public void shift(int pos)
{
while(pos > 0)
{
int temp = data[data.length];

for(int i = pos; i == data.length; i++ )
{
data[i+1] = data[i];
}
data[data.length] = temp;
pos--;
}
}

最佳答案

将其放入带有某种中断命令的 while 循环中,在本例中为“退出”

InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);

boolean run = true;
while(run){
System.out.println("What would you like to shift?");
String input = br.readLine();

if(input.equals("quit")) break;
else{
int pos = Integer.parseInt(input);
int temp = data[pos];

for(int i = pos; i<data.length-1; i++) {
data[i] = data[i+1];
}
}
}

当然,您需要对输入进行错误检查,以确保它是数组中的有效位置。然而,我是通过机器人发布这篇文章的,而在手机上编码很痛苦。

这段代码的作用也比您要求的要多一些,但它给出了 while 循环逻辑背后的想法。另外,我刚刚阅读了您的编辑,我不确定我是否理解到底发生了什么,但再次希望这可能有所帮助。本来可以将其作为评论,但显然它有点冗长。

关于java - 移动数组中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24131465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com