Le stringhe in Java: java.lang.string

Размер: px
Начинать показ со страницы:

Download "Le stringhe in Java: java.lang.string"

Транскрипт

1 Le stringhe in Java: java.lang. G. Grossi 18 ottobre 2006

2 Indice 1

3 Indice 1 2 Uso di oggetti

4 Indice 1 2 Uso di oggetti 3 Caratteri e sottosringhe

5 Bestiario... Che cosa sarebbe la sintassi senza la semantica...!?

6 Bestiario...

7 Bestiario...

8 Bestiario...

9 Bestiario...

10 Indice Uso di oggetti 1 2 Uso di oggetti 3 Caratteri e sottosringhe

11 Comporre la data odierna Uso di oggetti Problema Scrivere un programma Java che letti da stdin giorno, mese e anno restituisca il seguente output: grossi[lez02/java]->java ComponiDataOdierna Inserisci il giorno: 18 Inserisci il mese: 10 Inserisci l anno: 2006 La data odierna è: 18/10/2006 (10) nel formato gg/mm/aaaa (<num caratteri>)

12 Soluzione (I) Uso di oggetti Suddividere il problema in passi elementari... 1 importare le classi per l input/output 2 dichiarare le variabili necessarie 3 assegnare il valore alle vars mediante lettura da input 4 calcolare il numero caratteri digitati 5 stampare l output Vedi il programma ComponiDataOdierna.java...

13 Soluzione (II) Uso di oggetti Una soluzione più raffinata... 1 importare le classi per l input/output 2 definire solo le variabili realmente necessarie e nel punto in cui vengono usate per la prima volta (unione dei punti 2 e 3 precedenti) 3 calcolare il numero caratteri digitati desumendoli da variabli già assegnate 4 stampare l output Vedi il programma ComponiDataOdierna1.java...

14 Analisi Uso di oggetti Quanti oggetti di tipo vengono creati nella I e nella II soluzione?

15 Analisi Uso di oggetti Quanti oggetti di tipo vengono creati nella I e nella II soluzione? giorno mese anno "18" "10" "2006" "/" "La data odierna e : "

16 Analisi (2) Uso di oggetti Come si concatena la costruzione dell oggetto (stringa) finale?

17 Analisi (2) Uso di oggetti Come si concatena la costruzione dell oggetto (stringa) finale? "La data odierna e : " "18" "La data odierna e : 18" "/" "La data odierna e : 18/" "10" "La data odierna e : 18/10" "/" "La data odierna e : 18/10/" "2006" data "La data odierna e : 18/10/2006"

18 Codifica Uso di oggetti E noto che i migliori scrittori a volte infrangono le regole della retorica. Quando lo fanno, tuttavia, il lettore coglie nella frase qualcosa che compensa la violazione della regola stessa. Se non si è certi di riuscire a fare altrattanto, probabilmente è meglio seguire le regole. The elements of style

19 Indice Caratteri e sottosringhe 1 2 Uso di oggetti 3 Caratteri e sottosringhe

20 Metodi di Caratteri e sottosringhe public char charat(int indice) Restituisce il carattere specificato dall indice. Il primo carattere è all indice 0, il secondo a 1,... l ultimo a length() - 1. Causa un errore se il valore dell indice negativo o maggiore di length() - 1. public char trim() Restituisce la stringa ripulita dai caratteri spazio posti in testa e in coda alla stringa stessa.

21 Metodi di Caratteri e sottosringhe public substring(int beginindex) public substring(int beginindex, int endindex) Restituisce una nuova stringa che è sottostringa di questa. La sottostringa inizia all indice specificato beginindex e si estende al carattere di indice endindex - 1. Quindi la lunghezza della sottostringa è endindex-beginindex.

22 Metodi di Caratteri e sottosringhe public int indexof(int ch) Restituisce l indice della prima occorrenza del carattere specificato. Se il carattere non esiste restituisce -1 public int lastindexof(int ch) Restituisce l indice dell ultima occorrenza del carattere specificato. Se il carattere non esiste restituisce -1 public int tolowercase() Converte tutti i caratteri della stringa in caratteri minuscoli public int touppercase() Converte tutti i caratteri della stringa in caratteri maiuscoli

23 Analisi dell URL Caratteri e sottosringhe Problema Scrivere un programma Java che dato un URL (Uniform Description Language) risponda alle seguenti questioni: Q.1 stampa i caratteri primo/ultimo Q.2 stampa il protocollo in MAIUSCOLO Q.3 stampa estensione del file caricato in minuscolo Q.4 stampa il Nome del server Q.5 rimpiazza il protocollo con un nuovo protocollo Q.6 rimpiazza vecchio simbolo con un nuovo simbolo

24 Soluzione Caratteri e sottosringhe R.1) Primo/ultimo: h/p R.2) Protocollo: HTTP R.3) File caricato: php R.4) Nome server: Q.5) Nuovo Protocollo? https R.5) Nuovo URL: Q.6) Nuovo simbolo? W Q.6) Vecchio simbolo? w R.6) Vedi il programma URL.java...

Fondamenti di Informatica T-1

Fondamenti di Informatica T-1 Fondamenti di Informatica T-1 Stringhe Tutor: Allegra De Filippo [email protected] a.a. 2015/2016 Fondamenti di Informatica T-1 Allegra De Filippo 1 / 13 STRINGHE: Definizione e creazione Stringa

Подробнее

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario La classe String Lettura da input di dati numerici (tipo int) Stampa di dati numerici Uno sguardo al codice Esercizi 21/03/2011 2

Подробнее

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Подробнее

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma Fondamenti di Informatica INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica - Programma Un programma è una formulazione

Подробнее

Laboratorio di Programmazione Laurea in Bioinformatica

Laboratorio di Programmazione Laurea in Bioinformatica Laboratorio di Programmazione Laurea in Bioinformatica 15 dicembre 2008 1 Programmazione strutturata 1.1 Esercizio 1 Si scriva lo pseudocodice di un programma che calcola la media di due numeri reali.

Подробнее

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

9 - Array. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo 9 - Array Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea

Подробнее

Esercizi su strutture dati

Esercizi su strutture dati Esercizi su strutture dati Marco Alberti Programmazione e Laboratorio, A.A. 2016-2017 Dipartimento di Matematica e Informatica - Università di Ferrara Ultima modifica: 21 dicembre 2016 Liste collegate

Подробнее

Laboratorio di Python

Laboratorio di Python , Input da tastiera, Iterazione incondizionata 7 marzo 2014 Sommario 1 2 3 Outline 1 2 3 Definizione di funzione import modulo Si importa il modulo specificato def nome_f(par 1,, par n ) : Si definiscono

Подробнее

Classi e array. Viene ora affrontato un problema di definizione di una classe in cui una variabile d istanza è di tipo array

Classi e array. Viene ora affrontato un problema di definizione di una classe in cui una variabile d istanza è di tipo array Classi e array Viene ora affrontato un problema di definizione di una classe in cui una variabile d istanza è di tipo array Si vuole definire una classe Polinomio per la rappresentazione di polinomi a

Подробнее

ESERCIZIO 1 ESERCIZIO 2

ESERCIZIO 1 ESERCIZIO 2 ESERCIZIO 1 Scrivere una funzione che data una stringa A calcoli la sua lunghezza. int lunghezza(char A[]); Scrivere una funzione che date due stringhe A e B copi il contenuto di A in B e restituisca il

Подробнее

Input/Output di numeri

Input/Output di numeri Input/Output di numeri I/O di numeri Per utilizzare le funzioni di I/O occorre include il file di intestazione (o file header) stdio.h utilizzando all inizio del sorgente la direttiva #include

Подробнее

ERRATA CORRIGE. void SvuotaBuffer(void); void SvuotaBuffer(void) { if(getchar()!=10) {svuotabuffer();} }

ERRATA CORRIGE. void SvuotaBuffer(void); void SvuotaBuffer(void) { if(getchar()!=10) {svuotabuffer();} } ERRATA CORRIGE Pulizia del buffer di input: come fare? (1) Dopo aver richiamato getchar() per prelevare un carattere dal buffer di input, inseriamo una seconda chiamata a getchar(), senza assegnare il

Подробнее

STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe

STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe STRINGHE IN JAVA In Java, le stringhe non sono pezzi di memo-ria con dentro dei caratteri, come in C: sono oggetti appartenenti alla classe String Una stringa Java rappresenta uno specifico valore e come

Подробнее

Lezione 6 programmazione in Java

Lezione 6 programmazione in Java Lezione 6 programmazione in Java Nicola Drago [email protected] Dipartimento di Informatica Università di Verona Anteprima Le costanti I vettori Cos è un vettore Come si usa I vari tipi di vettori Esempi

Подробнее

Caratteri e stringhe

Caratteri e stringhe Caratteri e stringhe Caratteri Dato che un computer può memorizzare esclusivamente sequenze di bit, per memorizzare un carattere (e quindi testi) è necessario stabilire una convenzione che associa a un

Подробнее

Laboratorio di informatica Ingegneria meccanica

Laboratorio di informatica Ingegneria meccanica Laboratorio di informatica Ingegneria meccanica Esercitazione 6 7 novembre 2007 Correzione di un programma Un programma può contenere errori sintattici e/o errori logici. Gli errori sintattici vengono

Подробнее

Università degli Studi di Cassino Corso di Fondamenti di Informatica Tipi strutturati: Stringhe. Anno Accademico 2010/2011 Francesco Tortorella

Università degli Studi di Cassino Corso di Fondamenti di Informatica Tipi strutturati: Stringhe. Anno Accademico 2010/2011 Francesco Tortorella Corso di Informatica Tipi strutturati: Stringhe Anno Accademico 2010/2011 Francesco Tortorella Stringhe di caratteri La stringa è il tipo strutturato con cui vengono rappresentati gruppi di caratteri quali

Подробнее

Introduzione alla programmazione. Alice Pavarani

Introduzione alla programmazione. Alice Pavarani Introduzione alla programmazione Alice Pavarani Il linguaggio C Creato da Dennis Ritchie nel 1972 presso i Bell Laboratories Linguaggio di programmazione procedurale, strutturato Linguaggio ad alto livello

Подробнее

A. Ferrari. informatica. Java basi del linguaggio. Alberto Ferrari Informatica

A. Ferrari. informatica. Java basi del linguaggio. Alberto Ferrari Informatica informatica Java basi del linguaggio Alberto Ferrari Informatica struttura di un programma Java /** * Classe EsempioProgramma * Un esempio di programmazione in Java * @author 4A Informatica */ public class

Подробнее

D B M G Il linguaggio HTML

D B M G Il linguaggio HTML Programmazione Web Il linguaggio HTML Il linguaggio HTML Concetti di base Le interfacce utente in HTML I form Le tabelle Il passaggio dei parametri contenuti nei form @2011 Politecnico di Torino 1 Concetti

Подробнее

Scrittura formattata - printf

Scrittura formattata - printf Esercizi su Input/Output con formato FormattedIO 1 Scrittura formattata - printf Funzione printf int printf ( , ) La funzione restituisce un valore intero uguale ai caratteri

Подробнее

Fondamenti di Informatica T-1

Fondamenti di Informatica T-1 Fondamenti di Informatica T-1 Introduzione al linguaggio Java - Input/Output, Variabili, Tipi Tutor: Allegra De Filippo [email protected] a.a. 2015/2016 Fondamenti di Informatica T-1 Allegra De

Подробнее

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER

Variabili. Unità 2. Domenico Daniele Bloisi. Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Corso di Programmazione e Metodi Numerici Ingegneria Aerospaziale BAER Domenico Daniele Bloisi Docenti Metodi Numerici prof. Vittoria Bruni [email protected] Programmazione prof. Domenico

Подробнее

Esercizi per il recupero del debito formativo:

Esercizi per il recupero del debito formativo: ANNO SCOLASTICO 2005/2006 CLASSE 4 ISC Esercizi per il recupero del debito formativo: Facendo esclusivamente uso delle istruzioni del linguaggio macchina mnemonico del microprocessore INTEL 8086 viste

Подробнее

Esercitazione 11. Liste semplici

Esercitazione 11. Liste semplici Esercitazione 11 Liste semplici Liste semplici (o lineari) Una lista semplice (o lineare) è una successione di elementi omogenei che occupano in memoria una posizione qualsiasi. Ciascun elemento contiene

Подробнее

Corso sul linguaggio Java

Corso sul linguaggio Java Corso sul linguaggio Java Modulo JAVA1 1.1 Programmazione base 1 Prerequisiti Saper scrivere algoritmi elementari Tecniche elementari di sviluppo di una applicazione Modalità a riga di comando Utilizzo

Подробнее

Introduzione alla programmazione

Introduzione alla programmazione Introduzione alla programmazione Cosa è un calcolatore? Hardware Processore Memoria Periferiche Funzionamento Esegue istruzioni elementari Esegue istruzioni molto velocemente Deve essere programmato Il

Подробнее