Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente
Google Pixel Watch 5 ha affinato una formula già convincente con hardware più veloce, Gemini offline e nuovi strumenti per sport e benessere. Abbiamo provato la versione LTE da 41 mm, comoda anche di notte e ben proporzionata sui polsi piccoli. Il design resta un punto di forza, ma l'autonomia premia ancora il 45 mm e alcune funzioni AI non sono disponibili in Italia: ecco che cosa cambia rispetto a Watch 4 e quale formato conviene scegliere oggi
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Politica, accademia e industria a confronto su mercato unico, sicurezza e competitività. Nei laboratori di Vimercate, Nokia ha mostrato le nuove generazioni di chip ottici e i test che ogni prodotto deve superare prima di arrivare sul mercato
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
Abbiamo assemblato e provato la Fiido Nomads Pro, evoluzione del modello da trekking già presente nella gamma, che migliora in tutto, soprattutto grazie al motore centrale, fluido e potente. Ottima app, costruzione solida e prezzo ok completano il quadro
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-09-2008, 17:56   #1
tux_errante
Member
 
Iscritto dal: Dec 2007
Città: latina
Messaggi: 52
[java] strutture collegate lineari : side effect

salve
vorrei capire meglio la differenza tra algoritmi con side effect e gli altri.
In particolare sto studiando come concatenare due liste (uno dei tanti esempi) e ovviamente ci sono diversi modi, il libro presenta l'esempio con SE, senza e ricorsivo con SE, mentre nella classe di prova poi userà soltanto quelli senza side effect.
La mia domanda è questa : posso usare indifferentemente uno dei due tipi di algoritmo con la stessa classe ?
Anche se non credo dato che quelli con SE hanno un tipo restituito mentre gli altri sono void.

scrivo i due algoritmi per maggiore chiarezza :

Codice:
class Nodolista{
   String info;
   Nodolista next;
}

public class SequenzaStringhe{
 ....
  // concatena alla lista this la lista l
public void append(SequenzaStringhe l) {
  // 1.crea un nodo ausiliario per trattare  uniformemente
  // il caso in cui l'oggetto di invocazione sia  la
  // lista vuota
  NodoLista a = new NodoLista(null, nodoinit);
  // 2.vai fino all'ultimo elemento della lista
  NodoLista p = a;
  while (p.next != null)
     p = p.next;
  // 3.copia gli elementi di l in coda a p
  NodoLista q = l.nodoinit;
  while (q != null) {
    p.next = new NodoLista(q.info, null);
    p = p.next;
    q = q.next;
  }
  // 4.elimina il nodo ausiliario
  nodoinit = a.next;
}

 // con side effect
 public static Nodolista append(Nodolista p1, Nodolista p2){
   if (p1==null) return p2;
   else {
       Nodolista q=p1;
       while (q.next!=null) q=q.next;
       q.next=p2;
       return p1;
    }
 }
}
tux_errante è offline   Rispondi citando il messaggio o parte di esso
Old 11-09-2008, 18:55   #2
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
Ad uno di latina non può che rispondere uno di frosinone......


I metodi che fanno side effect in sostanza modificano lo stato dell'oggetto di invocazione, mentre i metodi "funzionali" no.

Nell'esempio del metodo append con le liste....
il primo (SE) aggiunge in coda alla lista su cui invochi il metodo
Codice:
             miaLista.append(nuovaLista);
cioè dopo l'invocazione del metodo miaLista avrà attaccata in fondo anche nuovaLista.

il secondo invece semplicemente costruisce una nuova lista (una terza) a partire dalle prime due, e restituisce quella.
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 12-09-2008, 11:25   #3
tux_errante
Member
 
Iscritto dal: Dec 2007
Città: latina
Messaggi: 52
grazie per la risposta quasi-compaesano

non ho ben capito una cosa, a partire dalla stessa classe cliente, posso usare indifferentemente uno dei due algoritmi ?
tux_errante è offline   Rispondi citando il messaggio o parte di esso
Old 12-09-2008, 16:05   #4
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
A partire da una classe cliente, puoi usare entrambi i metodi, certo!

Ovviamente in modo diverso e ottieni risultati diversi (ricordi??? una lista modificata oppure una lista nuova di zecca)


PS: scusa la domanda, ma mica stai studiando sulle dispense di calvanese, iocchi, demetrescu, nardi????
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"

Ultima modifica di Oceans11 : 12-09-2008 alle 16:07. Motivo: aggiunta PS
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2008, 19:25   #5
tux_errante
Member
 
Iscritto dal: Dec 2007
Città: latina
Messaggi: 52
huahhaha
si!
quelle

comunque non era niente di difficile bastava qualche esercizio

studi anche te a roma ?
tux_errante è offline   Rispondi citando il messaggio o parte di esso
Old 13-09-2008, 21:53   #6
Oceans11
Senior Member
 
L'Avatar di Oceans11
 
Iscritto dal: Sep 2005
Città: Torino
Messaggi: 606
che soggetti quei quattro!!!

a te chi fa lezione?
beh in effetti devo la mia seppur modesta conoscenza di java a calvanese!

cmq no non sto più a roma, mi sono trasferito a siena.
__________________
"Se proprio dovete piratare un prodotto, preferiamo che sia il nostro piuttosto che quello di qualcun altro." [Jeff Raikes]
"Pirating software? Choose Microsoft!"
Oceans11 è offline   Rispondi citando il messaggio o parte di esso
Old 14-09-2008, 23:04   #7
tux_errante
Member
 
Iscritto dal: Dec 2007
Città: latina
Messaggi: 52
il corso di fondamenti me lo ha fatto il mitico Demetrescu, mentre Tecniche di programmazione il noioso Iocchi
tux_errante è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente Recensione Google Pixel Watch 5: sembra lo stess...
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo Nokia Innovation Day 2026: la sovranità e...
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi In sella alla Fiido Nomads Pro: e-bike con motor...
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto ASUS Zenbook 14 (UX3480AA): tanta autonomia con ...
MSI PRO MAX: QD-OLED ultrawide per lavorare, creare e giocare MSI PRO MAX: QD-OLED ultrawide per lavorare, cre...
Mercato smartphone: vendite in calo del ...
NASA Perseverance stabilisce un nuovo re...
Frontech chiude il terzo ciclo di accele...
70mai A900 e A900 Ultra in prova: le nuo...
Ninja CRISPi a 99,99€ su Amazon: la frig...
Amazon supera il milione di robot nei ma...
Microsoft ufficializza Xbox Labs, il nuo...
Perché prendo sul serio il paper ...
Apple Watch SE 3 a 219€ su Amazon: displ...
GTA VI potrebbe arrivare su PC molto pri...
Windows 10, il Patch Tuesday di ottobre ...
Arm condannata a pagare a Qualcomm... 2 ...
tado° in offerta su Amazon: valvole ...
Windows 11, disponibili gli aggiornament...
HUAWEI MatePad Pro 12 e WATCH 6 arrivano...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 11:09.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v