PDA

View Full Version : Rubrica in Java


Squall 94
24-06-2012, 10:23
Ciao,
come consigliato da un utente su questo forum sto facendo una rubrica che legga, scriva i dati immessi su un file.
Io ero sbituato ai file di testo e solo ora ho scoperto la differenza tra un ifle strutturato e un file di testo, il problema però è nel programma come definire questa struttura.

Partiamo dal problema numero 1 : quando definisco il file per l'output mi dice questo

unreported exception java.io.notfoundexception ; must be caught or declared in to be thrown



import java.io.*;
import java.lang.*;
import java.text.*;
import java.util.*;
/**
*
* @author Administrator
*/

public class RubricForm extends javax.swing.JFrame
{

/**
* Creates new form RubricForm
*/
public RubricForm()
{
initComponents();

}
Rubric R1,R2 = new Rubric();
FileOutputStream f = new FileOutputStream("Rubric.dat");
ObjectOutputStream fOUT = new ObjectOutputStream(f);


Non riesco a capire dove sia il problema, vengo da C# ed è stata un impresa ieri per ambientarmi un pochino, oggi ho questo problemino senza il quale non posso proseguire.

Ho fatto una classe Rubric.java dove ci sono i metodi per restituire e permettere la modifica dei valori e ho fatto un pulsante che mi crea l'oggetto con i valori presi da textfield, una volta creato l'oggetto dovrei scrivere il contenuto in un file.
Questo in C# l'ho fatto una volta sola quindi non sono così pratico, anche perchè non riuscì a fare la formattazione come volevo io, magari era una cavolata però non ci sono riuscito.

Ora non so neanche come l'ha integrata la classe perchè nel codice non vedo nulla del genere, comunque sia funziona perchè in un altra textfield ho riportato il contenuto dell'oggetto creato.
La classe che ho fatto dove dovrebbe essere inclusa ? L'oggetto l'ho creato ma non trovo il codice che integra la classe ( neanche in C# dovevo farlo se non ricordo male ), ho visto che è tutto nella cartella " src ", include tutto quello che è al suo interno nel progetto ?
Al lato sinistro è presente nel " Default Package ", credo includa tutto come C#.
Dubbio veramente banale ma voglio capire come agisce questo IDE per non lasciarmi sfuggire di mano le cose fondamentali, fa che poi devo sbattere la testa per questi problemini :D .

Mi è stato chiesto di farlo con le liste e code ma io non so neanche cosa sono, per il momento faccio così e poi vedo di documentarmi su questo, ho del materiale da Wikipedia che sembrerebbe essere fatto bene e da un libro anch'esso altrettanto, mi serve tempo però.

P.S.
Sto usando NetBeans 7.1.2

wizard1993
24-06-2012, 10:26
buona parte delle eccezioni in java sono checked e vanno catturate per forza con un blocco try catch oppure con un throw nell'intestazione del metodo

Squall 94
24-06-2012, 11:07
Ti riferisci alla creazione del file ?

wizard1993
24-06-2012, 13:23
Ti riferisci alla creazione del file ?

mi riferisco al fatto che il costruttore di FileOutputStream dichiara di poter lanciare l'estensione di file non trovato e tela devi gestire indipendentemente dal fatto che questa accadrà o meno.

ps: comunque, se conosci meglio il c#, non sentirti obbligato a cercare subito il java: per esperienza ti posso dire che (strettamente al linguaggio) imparato uno, bene o male si sanno tutti quelli che adoperano il medesimo paradigma. La cosa difficile è la libreria standard, ma per imparare e imperativo non usarla.

Squall 94
24-06-2012, 14:21
In un altra discussione ho detto che non volevo più continuare C#, come hai detto tu è la medesina cosa poi ma lo faccio per altri motivi ...
Alcuni esempi li ho visti ma non sempre ricorrono alla gestione delle eccezioni, facendole non saprei come fare e non riesco a capire quello che hai detto ...
Scusa ma ho iniziato Java poco tempo fa, diciamo solo teoria che ho sentito molte volte, con i File strutturati ci approdo adesso perchè ero abituato ai file di testo, anche se credo il problema me lo farò pure la .

Squall 94
24-06-2012, 16:55
Mi sono imbattuto in un errore solito degli IDE, mi compila un form vecchio, vabbè a parte questo mi sono preso questo codice dal mio libro, controllare un eccezione intendevi una cosa del genere ?

Non capisco questa necessità anche se credo con i file di testo lo feci anch'io, però qui mi vedo molti errori dal compilatore, se devo zippare il file lo metto quì e gli date un occhiata, anche perchè compilando sempre lo stesso form non posso andare più di tanto avanti .


try
{
FileOutputStream f = new FileOutputStream("Rubric.dat");
ObjectOutputStream fOUT = new ObjectOutputStream(f);

fOUT.writeObject(R1);
fOUT.fflush();

f.close();
}
catch(Exception e)
{
JOptionPane.showMessageDialog(null, " Prova file " );
}

Squall 94
25-06-2012, 18:09
Up !

UpdatedMind
25-06-2012, 20:57
Ti consiglio di utilizzare una ObjectOutputStream.

ObjectOutputStream oos = new ObjectOutputStream (new FileOutputStream("rubrica.dat"));

per scrivere ti basterà richiamare il metodo writeObject. Altrettanto facile sarà recuperarlo con una readObject (che richiede cast esplicito).

:)

ingframin
26-06-2012, 07:20
Ma forse prima di scrivere su file non era meglio strutturare le classi che fanno da modello per i contatti della rubrica (oltre alla classe "Rubrica") che fa da contenitore?

ingframin
26-06-2012, 10:57
Se hai pazienza di aspettare stasera ti posto un po'di materiale, cosi' ti do qualche dritta. Diamo una mano a questo giovane volenteroso! :D

Squall 94
26-06-2012, 19:24
Grazie, li leggerò con molto piacere :) .
Comunque non ho capito cosa intendi per le altre classi.
Se non l'ho scritto prima, io non ho mai gestito file, file di testo si ma in C++, in C# ho dovuto ricorrere alla copia di molti esempi per arrivare a farlo, ma mai file strutturati, l'ho scoperta grazie a te questa cosa :) , subito lo sono andato a vedere sul mio libro di Java ed è spiegato bene, purtroppo che c'è la sola gestione dei file di testo come esempio.

Tornando alle classi, non ho capito quali dovrebbero essere le altre classi o che ruolo dovrebbero svolgere, cioè " strutturare le classi che fanno da modello per i contatti della rubrica ", so che i ifle hanno una struttura definita ed è questo che vorrei sapere come fare, da come hai detto sembrerebbe che dovrei creare delle classi subordinate per ogni oggetto della classe principale e specificarne la struttura, caratteristiche etc.

Questo è quello che ho interpretato :D .

ingframin
27-06-2012, 07:23
Questo è perché ti sei fissato a pensare al file prima di studiare la teoria!
Ti servono almeno:
1) La classe Contatto
2) La classe Rubrica
3) La classe ListaConcatenata
4) La classe AlberoBinario (per le 2 implementazioni che ti suggerivo)
5) Una classe GestioneIO per scrivere e leggere su file (o eventuali sorgenti alternative)
6) Una classe che contiene il main!

http://it.wikipedia.org/wiki/Programmazione_orientata_agli_oggetti
Comincia a leggerti questo articolo che è fatto bene, poi passa a:
http://oldsite.to.infn.it/groups/group4/mirror/linux/AppuntiLinux/AL-9.30.144.html

Anche io sto scrivendo una cosa che ti mando appena ho finito.

PS
Ieri sera c'era festa e sono uscito perciò non ho postato nulla, cerco di rimediare oggi.

banryu79
27-06-2012, 08:42
Questa risorsa, se si ha la pazienza di sfruttarla tutta per bene, potrebbe essere molto utile a Squall 94:
http://www.itmaybeahack.com/homepage/books/oodesign.html

ingframin
27-06-2012, 13:31
Bel link banryu! Hai fatto centro!

Mulder90
27-06-2012, 17:00
Questa risorsa, se si ha la pazienza di sfruttarla tutta per bene, potrebbe essere molto utile a Squall 94:
http://www.itmaybeahack.com/homepage/books/oodesign.html

cavolo questo fa comodo anche a me! grazie :D

Squall 94
27-06-2012, 18:30
infagrim la prima parte su wikipedia l'ho letta da diversi libri oltre che proprio in wikipedia, non avevo proprio compreso quello che mi avevi detto .
La seconda si c'è qualcosa di nuovo, allora dammi tempo di leggere e poi ne riparliamo.


L'albero e le liste concatenate me le sono stampate dai link che mi passasti e li devo ancora leggere, a questo però ci penso dopo, per il momento fammi finire il quadro delle classi perchè comunque c'è poco che non so nel secondo link.

Nel terzo invece quello dell'altro utente mamma mia, ci sono tantissimi esercizi con cui sbattere a testa, buono buono :D ma almeno devo sapere queste cose che mi ha detto infagrim, come ho detto prima liste e code mai sentite e quindi mai usate, mi ci vorrà un po', non è detto neanche che ci riesco, per il momento concentriamoci sulle sole classi e la loro gestione, poi vediamo queste cose quì.

Ah una cosa, visto che non mi compila il form nuovo su cui lavoro ( ne compila uno vecchio ), come posso risolvere il problema ?

Anche in C# mi succedeva ...

ingframin
28-06-2012, 11:42
Ma a questo punto perche' non citare questo?
http://www.greenteapress.com/thinkapjava/thinkapjava.pdf

Spiega bene l'errore e ti veniamo in aiuto. Comunque prima di mettere form e finestre usa la console, alle gui ci penserai in seguito.

Squall 94
28-06-2012, 19:07
Mi stai chiedendo di studiare troppo adesso :D , purtroppo lavoro .
Comunque va bene ma un po' di teoria ce l'ho su un libro cartaceo, tratta però file di testo e non file strutturati, dice solamente la differenza tra questi due .

Tutta sta roba ci metterò molto per leggerla, nel fine settimana posso finire le liste e le code e durante la settimana sperimentare in esercizi, ma quali ?
Provo ad applicare tutto su questo programmino, vediamo ...

L'ultima cosa che mi hai postato visto che è in inglese e mi può far perdere tempo usando google translate per qualche termine, direi che ci metterò molto, non è per adesso .
Fammi risolvere liste, code, alberi etc ...
Spero di comprenderle al volo :D .

Squall 94
28-06-2012, 19:56
Ah poi era una battuta ? Dovrei leggere tutto quel libro per risolvere il problema :D ?

Si ho capito mi mancano un po' di basi però cavolo mi hai dato bel lavoro da svolgere, cerco di farcela entro il prossimo mese, almeno per capire bene liste, code e quelle cose li .

wizard1993
28-06-2012, 22:39
Ah poi era una battuta ? Dovrei leggere tutto quel libro per risolvere il problema :D ?


in realtò (almeno come l'ho interpretata io) era metà e metà. Non è che ti serve tutto quel libro per risolvere l'esercizio, ma per imparare a programmare potresti fare con quel testo senza altro

ingframin
29-06-2012, 07:22
in realtò (almeno come l'ho interpretata io) era metà e metà. Non è che ti serve tutto quel libro per risolvere l'esercizio, ma per imparare a programmare potresti fare con quel testo senza altro

This :read:
L'esercizio della rubrica è stato il leit motif del corso di Programmazione Orientata agli oggetti che ho seguito all'università. Abbiamo impiegato 5 settimane a svolgerlo, lezione dopo lezione.
Perché proprio la rubrica? Perché è un programma che di primo acchitto è semplice e non spaventa, ma poi ti accorgi che facendolo tocchi con mano un sacco di aspetti della programmazione ad oggetti.
Se vuoi fare il programmatore il libro che ti ho postato è solo il punto di partenza, c'è da sudare da studiare, da esercitarsi... Insomma è un bel casino!
Però se lo fai da amatore non c'è problema, è il tuo hobby, non sentirti obbligato a fare tutto in una settima. Serve tempo per assimilare certi concetti :)
Se lo fai per lavoro prima o poi arriverà qualcuno a dirti "mi serve un esperto di questa tecnologia entro una settimana, toh.. studiati 'ste 1000 paginette che poi arriva il lavoro da fare". :doh:
Non pensare di svolgere la rubrica in poco tempo e lasciati i file e l'interfaccia grafica all'ultimo. Pensa prima di tutto a come costruire un modello orientato agli oggetti della rubrica telefonica!
Altri esercizi interessanti potrebbero essere ricostruire il pokedex (il catalogo dei pokemon) oppure qualche programmino gestionale. Quando hai preso dimestichezza con questi poi arriva la parte "massiccia" dove per forza di cose bisogna studiare qualcosa di algoritmi e ing. del software (che io purtroppo ancora non ho studiato se non in parte). :cry:
Ma niente si ottiene leggendo un tutorial di 10 pagine, altrimenti basterebbe un semplice ricettario e saremmo tutti Gualtiero Marchesi, on o? ;)

[Kendall]
29-06-2012, 08:15
Ti hanno già consigliato tutti molto bene. Solo un consiglio mi sentirei di darti oltre a quanto detto (sempre che non mi sia sfuggito :p):

"Lascia stare form, pulsanti, box e finestrelle varie. Metti da parte ogni elemento della gui e crea la rubrica nella sua parte squisitamente logica. Per i test creati una interfaccetta console basilare. Dopo, e solo dopo crea l'interfaccia, sempre se avrai voglia di dare un "corpo" al tuo programma. Perchè quello è tutto un altro mondo e a dire il vero ben poco ha a che vedere con la programmazione java pura (ma vale in generale per un po' tutti i linguaggi e i relativi framework grafici)"

ingframin
29-06-2012, 10:26
;37717059']Ti hanno già consigliato tutti molto bene. Solo un consiglio mi sentirei di darti oltre a quanto detto (sempre che non mi sia sfuggito :p):

"Lascia stare form, pulsanti, box e finestrelle varie. Metti da parte ogni elemento della gui e crea la rubrica nella sua parte squisitamente logica. Per i test creati una interfaccetta console basilare. Dopo, e solo dopo crea l'interfaccia, sempre se avrai voglia di dare un "corpo" al tuo programma. Perchè quello è tutto un altro mondo e a dire il vero ben poco ha a che vedere con la programmazione java pura (ma vale in generale per un po' tutti i linguaggi e i relativi framework grafici)"

This :read:

wizard1993
29-06-2012, 14:01
This :read:
L'esercizio della rubrica è stato il leit motif del corso di Programmazione Orientata agli oggetti che ho seguito all'università. Abbiamo impiegato 5 settimane a svolgerlo, lezione dopo lezione.
Perché proprio la rubrica? Perché è un programma che di primo acchitto è semplice e non spaventa, ma poi ti accorgi che facendolo tocchi con mano un sacco di aspetti della programmazione ad oggetti.
Se vuoi fare il programmatore il libro che ti ho postato è solo il punto di partenza, c'è da sudare da studiare, da esercitarsi... Insomma è un bel casino!
Però se lo fai da amatore non c'è problema, è il tuo hobby, non sentirti obbligato a fare tutto in una settima. Serve tempo per assimilare certi concetti :)
Se lo fai per lavoro prima o poi arriverà qualcuno a dirti "mi serve un esperto di questa tecnologia entro una settimana, toh.. studiati 'ste 1000 paginette che poi arriva il lavoro da fare". :doh:
Non pensare di svolgere la rubrica in poco tempo e lasciati i file e l'interfaccia grafica all'ultimo. Pensa prima di tutto a come costruire un modello orientato agli oggetti della rubrica telefonica!
Altri esercizi interessanti potrebbero essere ricostruire il pokedex (il catalogo dei pokemon) oppure qualche programmino gestionale. Quando hai preso dimestichezza con questi poi arriva la parte "massiccia" dove per forza di cose bisogna studiare qualcosa di algoritmi e ing. del software (che io purtroppo ancora non ho studiato se non in parte). :cry:
Ma niente si ottiene leggendo un tutorial di 10 pagine, altrimenti basterebbe un semplice ricettario e saremmo tutti Gualtiero Marchesi, on o? ;)

lo so, ormai sono 8 anni (di cui da 6 in java) che programmo e un po' di ossa (su programmi commerciali venduti) me le sono fatte. Io personalmente sono partito da un gestionale di tipo amministrativo per l'azienda di famiglia, poi ne ho scritti altri (una decina circa, se si considera le varie major release... benedette leggi che cambiano). Ormai dopo svariati manuali (da quello ufficiale oracle, a quello della deitel al all'immortale how to think), il metodo lo dovrei aver capito, considerano che mi sono reinventato la metà dei pattern del libro della gang of four da solo, senza averli nemmeno mai letti solo con l'esperienza.
Ormai (putroppo) non sono più un novizio, e il piacere della sperimentazione programmando mi è quasi del tutto passato, ma qualche soddisfazione me la sono tolta

ingframin
29-06-2012, 15:25
lo so, ormai sono 8 anni (di cui da 6 in java) che programmo e un po' di ossa (su programmi commerciali venduti) me le sono fatte. Io personalmente sono partito da un gestionale di tipo amministrativo per l'azienda di famiglia, poi ne ho scritti altri (una decina circa, se si considera le varie major release... benedette leggi che cambiano). Ormai dopo svariati manuali (da quello ufficiale oracle, a quello della deitel al all'immortale how to think), il metodo lo dovrei aver capito, considerano che mi sono reinventato la metà dei pattern del libro della gang of four da solo, senza averli nemmeno mai letti solo con l'esperienza.
Ormai (putroppo) non sono più un novizio, e il piacere della sperimentazione programmando mi è quasi del tutto passato, ma qualche soddisfazione me la sono tolta

Non mi riferivo a te ma a squall 94 :rolleyes:

wizard1993
29-06-2012, 17:36
Non mi riferivo a te ma a squall 94 :rolleyes:

scusami, avevo capito male

Squall 94
01-07-2012, 09:36
infagrim allora ho letto un po' .
Vabbè lo stack mi è stato chiaro, ma è l'unica cosa positiva :) .
Quando ho cominciato a leggere le liste, a 3/11 pagine, mi ha nominato le hash table e gli alberi, così ho detto andiamoci a vedere cosa sono e me le avevi anche linkate .
Quì mi sono puntato perchè è pura teoria, neanche minimamente una riga di codice in un qualsiasi linguaggio .
Non capisco proprio come utilizzarli, la loro utilità forse mi è arrivata :) , ma il resto proprio nulla .

Per la parte in Java mi è stata utilissima, mi ha dato una panoramica molto dettagliata e precisa relativsa ai package, classi erededitarie che comunque già sapevo ma è leggermente differente nel C# .
La caratteristica " abstract " mi è nuova, devo fare qualche prova per vedere come posso utilizzarla.

Comunque, detto questo mi occorrerebbe sapere altro sul programma rubrica anche se non so questo non so come posso utilizzare i metodi che mi hai detto tu :) .



Questo è perché ti sei fissato a pensare al file prima di studiare la teoria!
Ti servono almeno:
1) La classe Contatto
2) La classe Rubrica
3) La classe ListaConcatenata
4) La classe AlberoBinario (per le 2 implementazioni che ti suggerivo)
5) Una classe GestioneIO per scrivere e leggere su file (o eventuali sorgenti alternative)
6) Una classe che contiene il main!

http://it.wikipedia.org/wiki/Program...a_agli_oggetti
Comincia a leggerti questo articolo che è fatto bene, poi passa a:
http://oldsite.to.infn.it/groups/gro...-9.30.144.html

Anche io sto scrivendo una cosa che ti mando appena ho finito.




Se ho capito, la classe rubrica conterrà il " main " e l'altra classe sarà per la sola gestione del contatto, quindi con tutte le sue caratteristiche .
Le altre classi oltre alla rubrica e contatto cosa dovrebbero contenere ?

Dalla " hash table " ho capito solo che ad ogni dato o comunque un qualcosa che contiene dei dati, viene assegnata una chiave per facilitare la ricerca di di quel dato, quindi è indifferente quale sia il numero di dati da cercare perchè non esegue un confronto come un algoritmo di ricerca normale, quindi tutto avviene in maniera molto più veloce e le risorse impiegate probabilmente sono molto inferiori.

Questo è quello che mi è rimasto, per il resto, l'albero ( grafo ), lì mi è venuto il sonno, stavo leggendo in backround :D .

Devo finire di vedere le liste perchè mi sono bloccato quando ho incontrato queste due cose e mi mancano le code.

ingframin
02-07-2012, 14:12
infagrim allora ho letto un po' .
Vabbè lo stack mi è stato chiaro, ma è l'unica cosa positiva :) .
Quando ho cominciato a leggere le liste, a 3/11 pagine, mi ha nominato le hash table e gli alberi, così ho detto andiamoci a vedere cosa sono e me le avevi anche linkate .
Quì mi sono puntato perchè è pura teoria, neanche minimamente una riga di codice in un qualsiasi linguaggio .
Non capisco proprio come utilizzarli, la loro utilità forse mi è arrivata :) , ma il resto proprio nulla .

Per la parte in Java mi è stata utilissima, mi ha dato una panoramica molto dettagliata e precisa relativsa ai package, classi erededitarie che comunque già sapevo ma è leggermente differente nel C# .
La caratteristica " abstract " mi è nuova, devo fare qualche prova per vedere come posso utilizzarla.

Comunque, detto questo mi occorrerebbe sapere altro sul programma rubrica anche se non so questo non so come posso utilizzare i metodi che mi hai detto tu :) .



Se ho capito, la classe rubrica conterrà il " main " e l'altra classe sarà per la sola gestione del contatto, quindi con tutte le sue caratteristiche .
Le altre classi oltre alla rubrica e contatto cosa dovrebbero contenere ?

Dalla " hash table " ho capito solo che ad ogni dato o comunque un qualcosa che contiene dei dati, viene assegnata una chiave per facilitare la ricerca di di quel dato, quindi è indifferente quale sia il numero di dati da cercare perchè non esegue un confronto come un algoritmo di ricerca normale, quindi tutto avviene in maniera molto più veloce e le risorse impiegate probabilmente sono molto inferiori.

Questo è quello che mi è rimasto, per il resto, l'albero ( grafo ), lì mi è venuto il sonno, stavo leggendo in backround :D .

Devo finire di vedere le liste perchè mi sono bloccato quando ho incontrato queste due cose e mi mancano le code.

In pratica il programma rudimentale che facemmo a lezione era fatto cosi':
1) Una classe Contatto che conteneva i dettagli del contatto e i metodi per modificarli/leggerli.
2) Una interfaccia Rubrica che aveva al suo interno solo l'intestazione dei metodi che servivano ad usare la rubrica e veniva poi implementata da:
2.1) Una classe RubricaConcatenata che implementava la rubrica come una lista concatenata
2.2) Una classe RubricaArray che in pratica implementava la rubrica come un array.
2.3) (questa l'ho aggiunta io dopo) Una classe RubricaAlbero che implementa la rubrica come un albero binario di ricerca.
3) Una classe GestioneIO che in pratica conteneva tutto il necessario per leggere e scrivere su file (ma che in realta' potrebbe benissimo essere un'interfaccia verso due classi concrete, una che gestisce l'IO su file + n altre che lo fanno su rete/cloud/porta seriale/ecc...)
4) Una classe che contiene il main e poco altro.
Nel mio post ti suggerivo di fare una classe rubrica in due varianti (una con lista e una con albero) speravo che arrivassi da solo a pensare "ah posso usare un interfaccia comune per lista e albero e scrivere una sola volta la rubrica" ;)
Perdonami, era un piccolo tranello.
Buono studio :)

Squall 94
09-07-2012, 09:05
Questi giorni ne ho approfittato per leggere tutto quello che mi avevi postato, la parte da Wikipedia .
Devo dire che non ci riuscirò a realizzare una rubrica usando le liste, il solo codice che ho visto è stato quello appunto dell'implementazione in Java di una lista concatenata.
Non è stato molto difficile comprenderlo ma non saprei comunque come fare per il mio programmino, per non parlare dell'albero, proprio niente .
Le hash table mi sono parse facili, anche la loro utilità ma nel codice cosa combino ? :)

Vedo di cercare qualcosa su youtube, forse a parole e con esempi più semplici apprenderò qualcosa di più ;) .

ingframin
10-07-2012, 08:48
http://www.simplesoft.it/una-lista-concatenata-in-java.html
http://lia.deis.unibo.it/Courses/FondB0506-INF-LZ/laboratorio/Esercitazioni07_e_soluzione.pdf

Google e' il tuo migliore amico! ;)

[Kendall]
10-07-2012, 10:34
http://www.simplesoft.it/una-lista-concatenata-in-java.html
http://lia.deis.unibo.it/Courses/FondB0506-INF-LZ/laboratorio/Esercitazioni07_e_soluzione.pdf

Google e' il tuo migliore amico! ;)

Unica pecca della lista concatenata del link è che in effetti è una lista "mezza-concatenata". Ma la spiegazione è buona e molto lineare. Ti basterà poco Squall però arricchire quell'esempio aggiungendo ai nodi il riferimento al nodo precedente.

A parte questo discorso, secondo me Squall dovresti prenderti un bel libro sul java e seguire quello. Tutorial e guide online sono strumenti estremamente validi, ma secondo me prima dovresti acquisire una certa destrezza nel muoverti con il linguaggio.

banryu79
10-07-2012, 11:21
;37772328']Unica pecca della lista concatenata del link è che in effetti è una lista "mezza-concatenata". Ma la spiegazione è buona e molto lineare. Ti basterà poco Squall però arricchire quell'esempio aggiungendo ai nodi il riferimento al nodo precedente.
Aggiungo un link a una discussione recente, c'è del codice di esempio che implementa una coda con una lista doppiamente linkata, potrebbe essere utile per dare qualche idea a Squall:
http://www.hwupgrade.it/forum/showthread.php?t=2480897
@Squall: prova a vedere se riesci a leggere e capire tutto quel codice, dal punto di vista sintattico.

;37772328']
A parte questo discorso, secondo me Squall dovresti prenderti un bel libro sul java e seguire quello. Tutorial e guide online sono strumenti estremamente validi, ma secondo me prima dovresti acquisire una certa destrezza nel muoverti con il linguaggio.
Quotone.
Io a Squall consiglio di:
1) procurarsi un buon manulae/tutorial sul linguaggio Java e studiarlo. La conoscenza del linguaggio è imprescindibile.
2) Seguire (smazzarsi) il libro/guida/tutorialone che gli ho segnalato alla pagina precedente. Ti terrà impegnato per parecchio: ogni volta che incontri l'uso di una struttura dati che non hai ancora studiato, oppure che incontri un nuovo concetto completamente alieno, corri a studiarlo (parliamo di Java quindi come primo tentativo per recuperare del materiale cerca i "Java Tutorials" o "Really Big Index" sul sito di Oracle).
3) Studiare giorno per giorno, senza "ammazzarsi" per la foga di voler fare e/o conoscere: per la mia esperienza alla lunga è la costanza che paga.

ingframin
10-07-2012, 16:01
http://www.apogeonline.com/libri/9788850329564/scheda

Questo e' un ottimo libro, un po' vecchiotto ma fatto molto bene