ebook img

Programmare in Java PDF

370 Pages·2015·2.89 MB·Italian
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Programmare in Java

Programmare in Java Volume III Esercizi G. Frosini,G. Lettieri, A. Vecchio 6ottobre2015 v0.99 Indice Prefazione 9 1 Strumentidisviluppo 11 1.1 IntroduzioneaNetBeans 11 1.2 Gestionedeiprogetti 11 1.3 Scritturaemodificadeifilesorgenti 15 1.4 Compilazione 16 1.5 Esecuzione 18 1.6 Debugging 19 1.7 LaclasseConsole 21 2 Elementidibase 23 2.1 Espressioni 23 2.2 Max 24 2.3 Manipolabit 25 2.4 Equazioni 26 2.5 Conversioni 27 3 Istruzionieprogramma 29 3.1 Piu` omeno 29 3.2 Potenze 29 3.3 Pensaunnumero 31 3.4 Parentesi 32 3.5 TavolaPitagorica 33 3.6 Automa 34 3.7 Sequenzadipositivi 36 4 Funzioni 39 4.1 Calcolodiunafunzionereale 39 4.2 Numeriperfetti 40 6 INDICE 4.3 Cartedicredito 41 4.4 Minimocomunemultiplo 42 4.5 Contaparole 44 4.6 Proporzionedivina 46 5 Enumerazioni,array,stringhe 49 5.1 Assegnamentodiarray 49 5.2 Uguaglianzatrastringhe 50 5.3 Zero,positivi,negativi 51 5.4 Prodottodipolinomi 52 5.5 Rotazione 54 5.6 Matricetrasposta 55 5.7 Palindroma 57 5.8 Rubrica 59 6 Classi 61 6.1 Usodeipackage 61 6.2 Studente 62 6.3 ProgrammiTV 64 6.4 Palestra 66 6.5 Numericomplessi 68 6.6 Matriciquadrate 72 6.7 Matricicomplesse 75 6.8 Dieta 77 6.9 Archivioimmobiliare 82 6.10 Biblioteca 85 6.11 Labirinto 90 6.12 Package 96 7 Liste 101 7.1 Listadoppia 101 7.2 Rubrica2 104 7.3 Ruota 106 7.4 IperSfera 110 8 Altreproprieta` delleclassi 117 8.1 Acquisti 117 8.2 Biglietti 121 8.3 Spettacoli 123 8.4 Miaconsole 126 INDICE 7 9 Derivazione 129 9.1 Pila 129 9.2 Pilaordinabile 133 9.3 Pilaiterabile 136 9.4 Menu` 139 9.5 PorteMagiche 143 9.6 Finestre 147 9.7 Finestre2 150 9.8 Prendereolasciare 152 9.9 Porteechiavi 160 9.10 Buioeluce 162 9.11 Messaggiocifrato 163 10 Eccezioni 167 10.1 Ricercainunvettore 167 10.2 Pilaconeccezioni 168 10.3 Programmaerrato 173 10.4 Controllosintassi 176 10.5 Controllosintassi(supiu` linee) 180 10.6 Controllosintassi(debug) 181 11 Ingressoeuscita 185 11.1 Copiadifile 185 11.2 Cerca 187 11.3 Stampafile 188 11.4 Rimuovivocali 191 11.5 Mappadellabirinto 193 12 Lettureescritturedioggetti 199 12.1 Tavola 199 12.2 Salvagioco 204 13 Generici 207 13.1 Coda 207 13.2 Insieme 208 14 Thread 215 14.1 Threadsemplici 215 14.2 Threadinterrotti 218 14.3 Versaepreleva 220 14.4 Dadi 222 14.5 Ladro 226 8 INDICE 14.6 Trovaperfetti 234 14.7 Stradaerane 238 14.8 Filosofipranzanti 246 14.9 Filosofipranzanti:deadlockestarvation 251 15 Programmazionedirete 257 15.1 Calcolatore 257 15.2 Calcolatoreconcorrente 263 15.3 Chiacchiere 266 15.4 Chiacchiere(contutti) 269 15.5 Agendaremota 272 16 Invocazionedimetodiremoti 283 16.1 Numeriprimi 283 16.2 Teatro 287 16.3 Borsa 292 16.4 Esecuzioneremota 299 17 Interfaccegrafiche 303 17.1 Giorni 303 17.2 Editor 306 17.3 Calcolatrice 310 17.4 TicTacToe 314 17.5 Supercar 318 18 AppleteServlet 325 18.1 Uomocannone 325 18.2 CodiceFiscale 329 18.3 Indovina 333 18.4 Sondaggio 337 18.5 Sondaggiocorretto 340 19 StrutturedatieJavacollectionframework 345 19.1 Tabellahashconliste 345 19.2 Codaprioritaria 348 19.3 Grafo 350 19.4 Grafoconnesso 355 19.5 Alberoiterabile 357 19.6 Confrontoprestazioni 362 A Filejar 371 Prefazione Questovolumecontieneunaseriediesercizirelativiallinguaggiodiprogram- mazioneJava,nellaversione1.5osuperiore.Gliesercizisonosuddivisiincapitoli, dove ognicapitolo tratta di un particolare aspetto del linguaggioJava. Gli aspetti dellinguaggioprocedonodiparipassoconlatrattazionechenevienedataneidue testi“ProgrammareinJava,VolumeI”e“ProgrammareinJava,VolumeII”(G.Fro- sinieA.Vecchio). Inparticolare,icapitolidal2al14corrispondonoagliomonimi capitolidel testo “Programmarein Java, Volume I”, mentrei capitolidal15 al 19 corrispondonoaicapitolideltesto“ProgrammareinJava,VolumeII”.Ilcapitolo1 contieneunaintroduzioneall’utilizzodellostrumentodisviluppo“NetBeans”. Losvolgimentodegliesercizidiognicapitolorichiedelaconoscenzadituttigli aspetti del linguaggioJava introdottiprecedentemente. Nei pochi casi in cui e` ri- chiestaunaconoscenzadiargomentiancoranontrattati,questivengonobrevemente introdottineltestodell’eserciziointeressato. Perognieserciziovienepresentataunasoluzionecompleta. Lasoluzionee` sta- ta provatasull’elaboratoree successivamenteinclusa neltesto, perminimizzarele possibilita` dierrore(cio` nonescludechequalcheerrorepossa esservicomunque). Molte soluzioni sono corredate di note esplicative, volte a chiarire i passaggi piu` difficilioasottolinerarequellipiu` interessanti. Alcuni esercizi richiedono di estendere o modificare altri esercizi incontrati precedentementenellibro. Strumenti di sviluppo 1. 1.1 Introduzione a NetBeans NetBeans e` un ambiente di sviluppo integrato per applicazioni Java. Il ter- mine “integrato” indica la capacita` dello strumento di supportare tutte le attivita` che ricorrono nella sviluppo di un programma: la scrittura/modifica dei file sor- genti, la loro compilazione, l’esecuzione del programma e la rimozione dei suoi malfunzionamenti(quest’ultimafasee` comunementenotacomedebugging). NetBeanse` gratuitoepuo` esserescaricatoall’indirizzo: http://www.netbeans.org Leschermateeleindicazioniriportateinquestocapitolosonobasatesullaversione 5.5,l’ultimadisponibilealmomentodellastesura. 1.2 Gestione dei progetti Unprogettoe`uninsiemedifilesorgentiacuisonoassociatealcuneinformazioni chel’ambientedisviluppousapercompilareedeseguireiltutto. Taliinformazioni includonoil classpath associato alla compilazioneed all’esecuzione, gli eventuali argomentiinizialiecos`ıvia. NetBeansincludeun certonumerodicategoriediprogetti(General, Web, En- terprise, Service Oriented Architecture, etc.) ognuna delle quali e` relativa ad una particolaretipologiadiapplicazioni.Inquestotesto,permotividisintesi,prendere- moinconsiderazionelasolacategoriaGeneral,relativaalleapplicazioniJavabasa- tesullapiattaformaStandardEdition(inaltreparole,leapplicazionipermacchine desktop). All’interno della categoria General sono presenti alcuni modelli di progetto predefiniti,traipiu` importanticitiamo: 12 CAPITOLO1 JavaApplicationperlacreazionediunanormaleapplicazione;l’ambiente,se • non indicato diversamente, crea automaticamente lo scheletro di una classe dotatadimetodomain(). JavaClassLibraryperlacreazionediunalibreriadiclassiprivediunmetodo • main(). Java Project with Existing Sources quando il progetto deve essere creato a • partiredauninsiemedifilesorgentipreesistenti. Per creare un nuovoprogettoselezionare File > New Project: viene visua- lizzataunaschermatachepermettedisceglierelacategoriaeilmodellodelnuovo progetto(Figura1.1a). Quindivienevisualizzataunanuovafinestraconcuisipuo` scegliere il nome del nuovo progetto, e la cartella in cui verranno contenuti i file sorgentiebinarirelativialprogettoinquestione(Figura1.1b). Unavoltacreato,il progettoappareinunaappositalistapresentesullasinistradelloschermo. Ogniprogettoe` memorizzatoinunacartellaall’internodellaquale,oltrea file contenentiinformazionidiconfigurazione,sonopresentileseguentisottocartelle: src contieneifilesorgenti;seleclassiappartengonoapackage,alsuointernosono presentilecorrispondentisottocartelle. build contieneunasottocartellaclasses,all’internodellaqualesonopostituttiifile classprodottidallacompilazione(eventualmentestrutturatiinsottocartellese leclassiappartengonoapackage). dist contieneunfilearchiviojarchepuo` essereusatoperdistribuirel’applicazione agliutentifinalisottoformadiununicofile. test contieneifilesorgentidelleclassiditest(ifileclasscorrispondentisonoposti inunasottocartelladibuild) Peraprireunprogettogia`esistentesideveselezionareFile > Open Project, quindideveesserelocalizzatalacartelladelprogettodaaprire. Per chiudere un progetto e` sufficiente eseguire un click con il tasto destro del mouse sulla sua icona (sulla sinistra dello schermo), quindisi deve selezionare la voceClose Project. NetBeansconsentealprogrammatoreditenereaperticontemporaneamentetutti i progetti che vuole. Se le dimensioni di una applicazione sono particolarmente rilevanti, e` possibile suddividerla in tanti progetti tra loro correlati, dove uno di essi, e solo uno, e` indicato come progetto principale. La scomposizione di una applicazione in piu` progetti puo` anche essere motivata dalla volonta` di favorire il riutilizzodicomponentisoftware.Sipensiperesempioalcasoincuinellosviluppo STRUMENTIDISVILUPPO 13 (a) (b) Figura1.1:Creazionediunnuovoprogetto

Description:
18 Applet e Servlet NetBeans include un certo numero di categorie di progetti (General, Web, En- Java Project with Existing Sources quando il progetto deve essere creato a .. Eseguendo Build Project l'ambiente di sviluppo produce un file archi- code = new ArrayList(numPrio);. 13.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.