Προς το περιεχόμενο

ερωτηση για προγραμμα java


george1703

Προτεινόμενες αναρτήσεις

καλησπερα, θα ηθελα να μου εξηγησει καποιος πως θα καταλαβαινω ποτε να κανω hashmap ή arraylist. 

στο παρακατω προγραμμα δεν μπορω να το  λυσω και με τους δυο τροπους.?

 

Δημιουργείστε πρόγραμμα το οποίο θα καταχωρεί τις επιστημονικές δημοσιεύσεις ενός συνόλου ερευνητών. Συγκεκριμένα το πρόγραμμα θα πρέπει να εμφανίζει ένα μενού επιλογών ως εξής: 1. Καταχώρηση δημοσίευσης, 2. Αναζήτηση δημοσίευσης, 3. Στατιστικά, 4. Έξοδος. Στην 1η επιλογή το πρόγραμμα θα ζητάει αρχικά τον τίτλο της εργασίας και στη συνέχεια θα ζητάει επαναληπτικά τα ονόματα των ερευνητών που συμμετείχαν στην εργασία μέχρι να δοθεί ως όνομα ερευνητή το κενό, που σημαίνει ότι καταχωρήθηκαν όλοι οι ερευνητές της εργασίας. Στην συνέχεια θα επιστρέφει στο μενού. Στην 2η επιλογή θα ζητάει μια συμβολοσειρά και θα εμφανίζει όλες τις καταχωρημένες δημοσιεύσεις που περιέχουν την συμβολοσειρά αυτήν στον τίτλο τους, μαζί με τους αντίστοιχους ερευνητές που συμμετείχαν σε αυτήν, και θα επιστρέφει στο μενού. Στην 3η επιλογή, θα εμφανίζει για κάθε ερευνητή, το πλήθος των καταχωρημένων επιστημονικών του δημοσιεύσεων και θα επιστρέφει στο μενού. Όταν επιλέγεται η 4η επιλογή, τότε το πρόγραμμα θα τερματίζει.

 

 

 

 

ευχαριστώ

 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Moderators

Δε νομίζω ότι μπορείς να χρησιμοποιήσεις hashmap εδώ. Το hashmap είναι associative container, δηλαδή συσχετίζει ένα κλειδί με μία τιμή. Αν θες, για παράδειγμα, να δεις πόσα και ποια φρούτα έχεις στο μανάβικό σου, μπορείς να χρησιμοποιήσεις ένα hashmap με κλειδί το όνομα του φρούτου και τιμή την ποσότητα που έχεις. Εδώ τι θα έβαζες για κλειδί; Θα μπορούσες να βάλεις τον τίτλο, αν απαιτείς το όνομα της κάθε εργασίας να είναι διαφορετικό. Αυτό όμως δεν ξέρω κατά πόσο θα ήταν σωστό, μιας και είναι δυνατό (αν και μάλλον απίθανο) δύο εργασίες να έχουν το ίδιο όνομα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

καλησπερα, θα ηθελα να μου εξηγησει καποιος πως θα καταλαβαινω ποτε να κανω hashmap ή arraylist. 

στο παρακατω προγραμμα δεν μπορω να το  λυσω και με τους δυο τροπους.?

 

Δημιουργείστε πρόγραμμα το οποίο θα καταχωρεί τις επιστημονικές δημοσιεύσεις ενός συνόλου ερευνητών. Συγκεκριμένα το πρόγραμμα θα πρέπει να εμφανίζει ένα μενού επιλογών ως εξής: 1. Καταχώρηση δημοσίευσης, 2. Αναζήτηση δημοσίευσης, 3. Στατιστικά, 4. Έξοδος. Στην 1η επιλογή το πρόγραμμα θα ζητάει αρχικά τον τίτλο της εργασίας και στη συνέχεια θα ζητάει επαναληπτικά τα ονόματα των ερευνητών που συμμετείχαν στην εργασία μέχρι να δοθεί ως όνομα ερευνητή το κενό, που σημαίνει ότι καταχωρήθηκαν όλοι οι ερευνητές της εργασίας. Στην συνέχεια θα επιστρέφει στο μενού. Στην 2η επιλογή θα ζητάει μια συμβολοσειρά και θα εμφανίζει όλες τις καταχωρημένες δημοσιεύσεις που περιέχουν την συμβολοσειρά αυτήν στον τίτλο τους, μαζί με τους αντίστοιχους ερευνητές που συμμετείχαν σε αυτήν, και θα επιστρέφει στο μενού. Στην 3η επιλογή, θα εμφανίζει για κάθε ερευνητή, το πλήθος των καταχωρημένων επιστημονικών του δημοσιεύσεων και θα επιστρέφει στο μενού. Όταν επιλέγεται η 4η επιλογή, τότε το πρόγραμμα θα τερματίζει.

 

 

 

 

ευχαριστώ

Map<String, ArrayList<String>> list = new HashMap<>();
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

δηλαδή θα το λυσω και με hashmap και arrayList? μπορώ να το λυσω μονο με arrayList ή θα ειναι λαθος? 

 

Από την ερώτησή σου είναι φανερό ότι δέν έχεις καταλάβει τίποτε για τα Java Collections.. και προφανώς δέν μπορείς να το φτιάξεις ούτε με HashMap, ούτε με ArrayList.. πόσο μάλλον να δουλέψεις με generics.. για να προλάβω τα επόμενα σου ποστ...

 

1) Το HashMap είναι implementation του interface Map ενώ το ArrayList του interface List..

 

2) Προφανώς το HashMap που χρησιμοποιεί κλειδιά για να αποθηκεύσει τα δεδομένα πιάνει πολύ περισσότερη μνήμη από το ArrayList και αυτό δέν μας αρέσει..

 

3) το HashMap δεν διατηρεί τη σειρά εισόδου των δεδομένων ενώ το ArrayList τη διατηρεί.

 

4) το HashMap δέν επιτρέπει διπλότυπα elements σε αντίθεση με το ArrayList που μπορείς να έχεις όσα θές

 

5) το HashMap επιτρέπει μόνο ένα null κλειδί και όσα null elements θές σε αντίθεση με το ArrayList που μπορείς να έχεις όσα null θες

 

6) στο HashMap για να κάνεις get ένα element πρέπει να ξέρεις το αντίστοιχο κλειδί, ενώ στο ArrayList έχεις index

 

Ελπίζω τουλάχιστον να έχεις καταλάβει μέχρι στιγμής ποιό από τα δύο πρέπει να χρησιμοποιήσεις..

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...