Java 仅为数组赋值的输出获取0
我有一个作业,我需要为这个问题写代码 编写一个程序,将数字从键盘读入int[]类型的数组 您可以假设将有50个或更少的条目。 您的程序允许输入最多50个数字 输出是两列不同数组元素的列表 第二列是每个元素的频率列表 列表应按从大到小的第一列进行排序 我目前正在打印数组,但是我得到了两列50个零。有什么帮助吗 阵列排序类Java 仅为数组赋值的输出获取0,java,arrays,sorting,bounds,out,Java,Arrays,Sorting,Bounds,Out,我有一个作业,我需要为这个问题写代码 编写一个程序,将数字从键盘读入int[]类型的数组 您可以假设将有50个或更少的条目。 您的程序允许输入最多50个数字 输出是两列不同数组元素的列表 第二列是每个元素的频率列表 列表应按从大到小的第一列进行排序 我目前正在打印数组,但是我得到了两列50个零。有什么帮助吗 阵列排序类 import java.util.*; public class ArraySort { public static void main(String[] args)
import java.util.*;
public class ArraySort {
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter the numbers for your array.");
int[][] d = new int [2][50];
int[] a = new int [50];
int[] b = new int [50];
int[] c = new int [50];
for(int index = 0; index < 50; index++)
{
a[index] = keyboard.nextInt();
}
ArraySort object = new ArraySort();
object.sort(a);
object.duplicate(a, b);
object.frequency(a, c);
for(int index = 0; index < 50; index++)
{
b[index] = d[0][index];
}
for(int x = 0 ; x < 50; x++)
{
c[x] = d[1][x];
}
for(int column = 0; column < 2; column++)
{
for(int row = 0; row < 50; row++)
{
System.out.print(d[column][row]);
}
}
}
public int[] sort(int [] a)
{
int temp = 0;
for(int x = 0; x < 49; x++)
{
for(int y = 0; y < 49; y++)
{
if(a[y] < a[y+1])
{
temp = a[y];
a[y] = a[y+1];
a[y+1] = temp;
}
}
}
return a;
}
public int[] duplicate(int [] a, int[] b)
{
int y = 0;
for(int x = 0; x < 49; x++)
{
if(a[x] != a[x+1])
{
a[x] = b[y];
y++;
}
}
return b;
}
public int[] frequency(int [] a, int [] c)
{
int y = 1;
int z = 0;
for(int x = 0; x < 49; x++)
{
if(a[x] == a[x+1])
{
y++;
}
if(a[x]!= a[x+1])
{
y = c[z];
z++;
y = 0;
}
}
return c;
}
}
import java.util.*;
公共类ArraySort{
公共静态void main(字符串[]args){
扫描仪键盘=新扫描仪(System.in);
System.out.println(“请输入数组的数字”);
int[][]d=新int[2][50];
int[]a=新的int[50];
int[]b=新的int[50];
int[]c=新的int[50];
对于(int-index=0;index<50;index++)
{
a[index]=keyboard.nextInt();
}
ArraySort对象=新的ArraySort();
对象。排序(a);
对象。副本(a、b);
目标。频率(a,c);
对于(int-index=0;index<50;index++)
{
b[指数]=d[0][指数];
}
对于(int x=0;x<50;x++)
{
c[x]=d[1][x];
}
for(int列=0;列<2;列++)
{
用于(int行=0;行<50;行++)
{
系统输出打印(d[列][行]);
}
}
}
公共整数[]排序(整数[]a)
{
内部温度=0;
对于(int x=0;x<49;x++)
{
对于(int y=0;y<49;y++)
{
if(a[y]
java中的索引从0
开始,d[2][x]
将需要一个大小为[3][50]
的数组,而调试器仍然合法,请使用它。谢谢!修正了。现在输出只得到零,但程序运行平稳!谢谢所有这些编程的东西都是新的!