Java – Guida al costrutto “for-each”

L’uscita di Java 5, avvenuta nel lontano 2004, aveva portato un gran numero di novità molto importanti tra cui i generics, le annotation, le enum e svariate altre funzionalità. Tra queste novità c’è stata anche la introduzione di un nuovo tipo di ciclo “for” che nella documentazione ufficiale è denominato enhanced for (“for migliorato”) ma viene generalmente chiamato in maniera più amichevole e informale for-each (o senza trattino, for each). Questo termine, tra l’altro, è usato anche in altri linguaggi e contesti quindi è facilmente riconoscibile e comprensibile.

Continua a leggere

Java – Avviare ricerca internet con il browser predefinito

In una applicazione Java “desktop” di tipo grafico (o al limite una applicazione “console”) potrebbe essere necessario, in qualche caso, lanciare un browser esterno per aprire la pagina con i risultati della ricerca su internet fatta tramite uno specifico “motore di ricerca” (es. Google o Bing, giusto per citarne due noti).

Continua a leggere

Java – Generazione di numeri “casuali”

Poter generare numeri “casuali” è una necessità che si può avere in svariati tipi di applicazioni, ad esempio in ambito matematico/scientifico ma anche, più banalmente, in applicazioni a scopo ludico o didattico (es. giochi, quiz, ecc...).

Il framework standard di Java fornisce già diverse possibilità per la generazione di numeri casuali. L’obiettivo di questo articolo è di descrivere queste funzionalità con l’aiuto di alcuni esempi pratici.

Continua a leggere

Pubblicato in Java

Java – Il limit dello split per le stringhe

A partire dalla release 1.4 di Java la classe String ha due metodi split che permettono di spezzare una stringa sfruttando il meccanismo delle regular expression (espressioni regolari), introdotte anch’esse in Java 1.4. L’uso di questi split mi ha talvolta causato dubbi/disagi ma non per il concetto stesso di “split” o per l’uso delle espressioni regolari. No, per un altro motivo: il concetto “extra” del limit che è stato volutamente aggiunto nello split. E ogni volta devo andare a rileggere la documentazione javadoc per ricordarmi la logica di questo limit ...

Continua a leggere