gpt4 book ai didi

java - 如何将数组中的某些元素(字符串)放入新数组(整数)?

转载 作者:行者123 更新时间:2023-11-29 04:20:50 27 4
gpt4 key购买 nike

所以我有一个看起来像这样的文本文件

4
10 orange
20 grape
100 Pencil Cases
4 Card

第一行是对象的数量。下一行是价格和对象的名称。我必须找到价格最低的对象并只返回对象的名称。 (因此,在本例中为“卡片”)

我将 txt 放入 Arraylist 并将其拆分,这样我只能得到数字。我正在尝试将数字放入一个新的整数数组中以进行比较。这是我试过的代码。

 public class Assignment {
public static void main(String[] args) {
try {
BufferedReader rd = new BufferedReader(new FileReader("C:\\Users\\USER\\Documents\\input.txt"));
List<String> lines = new ArrayList<String>();
String line = null;
while ((line = rd.readLine()) != null)
{
lines.add(line);
}
rd.close();
for (int i =0; i<lines.size(); i++) {
String[] items = lines.get(i).split(" ", 2);
for (String s: items) {
System.out.println(s);
}

int[] array2 = new int[items.length];
int k =0;
for (int n= 2; n< items.length; n=n+2) {
array2[k] = Integer.parseInt(items[n]);
for (Integer l: array2) {
System.out.println(l); }
}
}

}

catch (Exception e) {
System.out.println("Error");
}
}
}

我认为 array2 部分有问题。有人可以提示我应该如何解决这个问题吗? stackoverflow 和 Java 的新手,所以如果我的问题(或我的语法也...)有问题,我很抱歉!

最佳答案

I am trying to put the numbers into a new integer array to compare them

这是您可以做到的。

int[] array2 = new int[lines.size() - 1];
int k = 0;
for (int i = 1; i < lines.size(); i++) { //Start at row 1
String[] items = lines.get(i).split(" ", 2);
array2[k++] = Integer.parseInt(items[0]); //The first element is the price
}
System.out.println(Arrays.toString(array2)); //[10, 20, 100, 4]

但是,有了这个,您无法获得最高价商品的名称。因此,您需要将名称和价格一起存储,我会留给您。

关于java - 如何将数组中的某些元素(字符串)放入新数组(整数)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49275022/

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