У меня есть txt-файл, который я помещаю в массив. Данные в файле txt содержат данные в формате:Сортировка Arraylist Java
Order # Date Name City State Zip Code Transaction Amount
по строке с каждым элементом, представляющим столбец.
Тогда есть еще 1000 строк, на которых они заполнены ответами. Я хотел бы отсортировать сумму транзакции.
Вот мой код:
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;
public class Rewards {
public static void main(String[] args) throws FileNotFoundException {
String fileName = ("test.txt");
FileReader fin = new FileReader("C:/Users/Jordan/Desktop/Project5Text.txt");
Scanner src = new Scanner(fin);
ArrayList<String> lines = new ArrayList<String>();
src.useDelimiter(":");
Random rand = new Random();
while (src.hasNext()) {
String l = src.nextLine();
if (!l.equals(""))
lines.add(l);
}
String[] randomChoices = new String[1]; // Number of random choices
for (int i = 0; i < randomChoices.length; i++) {
String randomString = lines.get(1 + rand.nextInt(lines.size() - 1));
randomChoices[i] = randomString;
}
for (String s : randomChoices)
System.out.println("Random Winner for $20 gift card is: " +s);
String[] randomChoices1 = new String[1]; // Number of random choices
for (int i = 0; i < randomChoices1.length; i++) {
String randomString = lines.get(1 + rand.nextInt(lines.size() - 1));
randomChoices1[i] = randomString;
}
for (String s : randomChoices1)
System.out.println("Random Winner for $40 gift card is: " +s);
String[] randomChoices2 = new String[1]; // Number of random choices
for (int i = 0; i < randomChoices2.length; i++) {
String randomString = lines.get(1 + rand.nextInt(lines.size() - 1));
randomChoices2[i] = randomString;
}
for (String s : randomChoices2)
System.out.println("Random Winner for $60 gift card is: " +s);
String[] randomChoices3 = new String[1]; // Number of random choices
for (int i = 0; i < randomChoices3.length; i++) {
String randomString = lines.get(1 + rand.nextInt(lines.size() - 1));
randomChoices3[i] = randomString;
}
for (String s : randomChoices3)
System.out.println("Random Winner for $80 gift card is: " +s);
String[] randomChoices4 = new String[1]; // Number of random choices
for (int i = 0; i < randomChoices4.length; i++) {
String randomString = lines.get(1 + rand.nextInt(lines.size() - 1));
randomChoices4[i] = randomString;
}
for (String s : randomChoices4)
System.out.println("Random Winner for $100 gift card is: " +s);
}
}
Вот некоторые из текстового файла, который я использую.
Заказ # Дата Имя Отчество Фамилия Адрес Город Штат Индекс Электронная почта Сумма транзакции
1 8/26/2012 Kristina H Chung +947 Martin Ave. Muncie CA 46489 [email protected] $ 593
2 11/16/2012 Paige H Chen 15 MainWay Rd. Dallas HI 47281 [email protected] $ 516
3 11/10/2012 Шерри E Melton 808 Washington Way Бразилия CA 47880 [email protected] $ 80
4 9/20/2012 Гретхен I Hill 56 Washington Dr Атланта FL 47215 [email protected] $ 989
5 3/11/2012 Karen U Puckett 652 Maplewood Ct. Бразилия FL 46627 [email protected] $ 826
6 7/4/2012 Patrick O Song 679 MainWay Rd. Lafayette GA 47161 [email protected] $ 652