【发布时间】:2017-03-14 20:31:36
【问题描述】:
我正在编写一个程序,它允许用户从磁盘文件中输入多达 1000 个字符串元素。这发生在另一个字符串数组方法中,然后将它们复制到另一个数组中,然后在下面的方法中对它们进行冒泡排序。但是,由于我的新数组长度需要 1000 个元素,而磁盘文件只放入 50 个元素,因此出现错误。我认为解决我的问题的最佳方法是创建一个长度与磁盘文件中的字符串。但是,我不确定如何创建另一个磁盘文件输入长度的数组。任何帮助都会很棒。
public static String[]bubbleSort(String[] inputArr) {
String[] Array2 = new String[inputArr.length];
for(int i=0;i<inputArr.length;i++)
Array2[i] = inputArr[i];
for (int i = 0; i<Array2.length; i++)
{
for (int j = 0; j<Array2.length-1; j++)
{
if (Array2[j].compareTo(Array2[j+1]) > 0)
{
String temp = Array2[j];
Array2[j] = Array2[j+1];
Array2[j+1] = temp;
}
}
}
return Array2;
}
【问题讨论】:
-
我建议您向我们展示您的磁盘输入代码,因为这是您需要更改的内容。
-
只需要了解如何将未知长度的数组复制到另一个数组中吗?
-
@Steave Arrays.copyOf 。您必须将新的大小传递给它,当您阅读输入时应该知道该大小。
-
@PeterLawrey 你如何传递新的尺寸?抱歉,我对编码很陌生。