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

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

Δημοσ.

Κανα ένα πρόγραμμα σε java, το οποίο θέλω να διαβάζει με την StdIn.readAllInts() και να καταχωρεί τους αριθμούς σε έναν συγκεκριμένο πίνακα, στη συνέχεια θέλω να κάνω το ίδιο για έναν δεύτερο πίνακα.

 int a[];
  StdOut.println("Dwste ta stoixeia tou array a");
  a = StdIn.readAllInts();
 int b[];
  StdOut.println("Dwste ta stoixeia tou array b");
  b = StdIn.readAllInts();

διαβάζει για τον πρώτο πίνακα και για τον δεύτερο δεν μπαίνει καν. 

    public static int[] readAllInts() {
        String[] fields = readAllStrings();
        int[] vals = new int[fields.length];
        for (int i = 0; i < fields.length; i++)
            vals[i] = Integer.parseInt(fields[i]);
        return vals;
    }

Τι πρεπει να κανω?

Δημοσ.

Από ότι φαίνεται η readAllInts() θα καλείται για να διαβάζει αριθμούς από αρχείο. Η readAllString() δεν φαίνεται να επιστρέφει μέχρι να βρει την  ένδειξη EOF. Μια πιθανή λύση είναι να δεσμεύεις αρκετή μνήμη στον πίνακα και μετά να διαβάζεις έναν έναν τους αριθμούς. Και αν δεν ξέρεις εξαρχής μπορείς να αποθηκεύεις την είσοδο του χρήστη σε μια μεταβλητή String και έπειτα να κάνεις την μετατροπή σε αριθμούς για να αποθηκευτούν στον πίνακα σου.  

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

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

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

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

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

Σύνδεση

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

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