java - 创建一个从 1 到 10 的随机数字数组。然后,在 java 中将所有 7 移动到数组的前面
问题描述
创建一个从 1 到 10 的随机数字数组。然后,将所有 7 移到数组的前面。其他数字的顺序并不重要,只要所有数字都遵循 Lucky 7s 组即可。查看插入排序和选择排序的代码可能对这项任务很有帮助。Arrays.toString() 也很有用。例如,如果给您列表 :: 4 5 6 7 1 2 3 7 列表可能变成 - 所有 7 必须在前 :: 7 7 6 4 1 2 3 5
我的代码:
public class NumberShifter
{
public int[] go(int[] arrayToBeShifted, int index)
{
int originalArray[] = new int[index];
int valueBeingMoved = originalArray[index];
for (int i = index; i > 0; i--)
{
arrayToBeShifted[i] = arrayToBeShifted[i-1];
}
arrayToBeShifted[0] = valueBeingMoved;
return arrayToBeShifted;
}
}
跑者:
class Main
{
public static void main(String[] args)
{
int random[] = new int[10];
for(int i=0; i<random.length; i++)
{
random[i] = (int)(Math.random()*6)+1;
}
NumberShifter rt = new NumberShifter();
System.out.println(rt.go(random,7));
System.out.println(rt.go(random,7));
System.out.println(rt.go(random,7));
System.out.println(rt.go(random,7));
}
}
这个程序给我错误请任何人告诉我我使用正确的方法来解决这个问题。如果我对这个问题使用了错误的方法,请用正确的方法解决这个问题。
解决方案
这就是我解决问题的方法,我为代码创建了两个单独的 runner 和 main 类。
我的代码:
public class NumberShifter
{
public int[] go(int[] arrayToBeShifted, int index)
{
for (int i = 0, e = 0; i < arrayToBeShifted.length; i++)
{
if (arrayToBeShifted[i] == 7)
{
arrayToBeShifted[i] = arrayToBeShifted[e];
arrayToBeShifted[e] = 7;
e++;
}
}
return arrayToBeShifted;
}
}
跑者:
class Runner
{
public static void main(String[] args)
{
NumberShifter rt = new NumberShifter();
//demo to see if code works
System.out.println(java.util.Arrays.toString(rt.go(new int[]{1, 10, 9, 2, 8, 2, 5, 6, 10, 7, 9, 8, 6, 7, 2, 7, 6, 10, 5, 3},7)));
//random arrays according to question
int random[] = new int[20];
for(int i=0; i<random.length; i++)
{
random[i] = (int)(Math.random()*10)+1;
}
System.out.println(java.util.Arrays.toString(rt.go(random,7)));
System.out.println(java.util.Arrays.toString(rt.go(random,7)));
System.out.println(java.util.Arrays.toString(rt.go(random,7)));
}
}
推荐阅读
- python - 在小于特定限制的 Pandas DataFrame 的一天中过滤最高可用时间
- reactjs - 打字稿 - 如何省略属性以便子集可以传播?
- r - 进行关联时无法强制转换为表
- angular - 如何编译特定的 .ts 文件并写入 dist 文件夹(.js 格式)
- ios - Xcode 服务器如何在没有 Enable Testability 的情况下在发布模式下运行测试?
- android - Android - 创建和/或启动启动指令识别时出错
- openshift - 使用带有 Openshift/jenkins-client-plugin 的 Pipeline 从 Dockerfile 构建映像
- android - CardStackView 的滑动功能在 Android 片段中不起作用
- r - 正则表达式:拆分字符串时如何保留所有数字?
- android - 将支付集成到 Delphi Android 应用程序