Hirdetés
- Monitorok tucatjait hitelesíti az új GeForce driver
- AI-ra hangolta legújabb NUC mini PC-jét az ASUS
- Befutott a régóta várt, sok P-maggal kitömött, LGA1700-as Core sorozat
- Azt hittük, a GeForce RTX 3060 már leköszönt, de úgy látszik, hogy mégsem!
- Porvihar, zuhogó eső és hó, de az Akasa passzív háza kitart
Új hozzászólás Aktív témák
-
Csaby25
őstag
Sziasztok!
A következő metódus csv file-ból olvas ki sorokat és objektummá alakítom (minden sor egy objektum):private static void readData(File inputFile, Class type) {try {BufferedReader reader = new BufferedReader(new FileReader(inputFile));String line;// Reading first line..while ((line = reader.readLine()) != null) {String[] values = line.split(COMMA_DELIMITER);if (type == Student.class) {Student student = populateStudent(values);if (students == null) {students = new HashMap<Integer, Student>();}students.put(student.getStudentId(), student);}if (type == Subject.class) {Mark mark = populateMark(values);Subject subject = populateSubject(values);if (subject.getMarks() == null) {subject.setMarks(new ArrayList<Mark>());}students.get(mark.getStudentId()).getSubjects().put(subject.getSubjectId(), subject);students.get(mark.getStudentId()).getSubjects().get(subject.getSubjectId()).getMarks().add(mark);}}reader.close();} catch (Exception e) {e.printStackTrace();}}Ez szeretném megoldani Stream-el:
private static void readData(Path inputFile, Class type) {Student student;Subject subject;Mark mark;try {Stream<String> lines = Files.lines(inputFile);List<List<String>> values = lines.map(line -> Arrays.asList(line.split(COMMA_DELIMITER))).collect(Collectors.toList());if (type == Student.class) {values.forEach(value -> student = populateStudent(value));if (students == null) {students = new HashMap<Integer, Student>();}students.put(student.getStudentId(), student);}if (type == Subject.class) {values.forEach(value -> mark = populateMark(value));if (subject.getMarks() == null) {subject.setMarks(new ArrayList<Mark>());}students.get(mark.getStudentId()).getSubjects().put(subject.getSubjectId(), subject);students.get(mark.getStudentId()).getSubjects().get(subject.getSubjectId()).getMarks().add(mark);}//}} catch (Exception e) {e.printStackTrace();}}A forEach-ben (
value -> student = populateStudent(value)) ezt a hibát kapom: ''Local variable student defined in an enclosing scope must be final or effectively final'Tudja valaki, hogy lehet ezt megoldani?
Köszi!
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Komplett RGB Gamer PC / RTX 3080 / i5-12490F / 32GB DDR5 / 250GB & 1TB SSD / Irányáras
- Magyar kiosztású Apple Magic Keyboard 2, Touch ID, teljes méretű
- Új Mac Studio M4 Max 2025 14C CPU /32C GPU / 36GB RAM / 512GB - 1 ÉV APPLE GARANCIA
- 2026 MacBook Air / MacBook Pro / M5 - M5 Pro - M5 MAX 14" / 16"
- Asus 15.6,core i3 8145U(4x3,9Ghz)IntelUHD VGA,MAGYAR Vil.bill.,8-20GB RAM,SSD+HDD?,,Win.11
- Telefon felvásárlás!! Huawei P20 Lite/Huawei P20/Huawei P30 Lite/Huawei P30/Huawei P30 Pro
- Telefon Felvásárlás!! iPhone 14/iPhone 14 Plus/iPhone 14 Pro/iPhone 14 Pro Max
- BESZÁMÍTÁS! Asrock 970 Pro3 970 chipset alaplap garanciával hibátlan működéssel
- Targus DOCK423A - USB-C Dual HDMI 4K HUB - 2 x HDMI (120Hz)
- Intel Xeon E5-2600v4 processzorok készleten 2680v4,2683v4,2697v4,2697Av4(áfás számla, 2 év garancia)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

