Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre
Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre
Abbiamo provato Google Pixel 11, il più accessibile della nuova gamma: chip Tensor G6 condiviso con i modelli Pro, fotocamera 48 MP con Magic Capture e Stili Fotografici, display Actua da 3000 nit e batteria da 4985 mAh. Ecco come si comporta nell'uso quotidiano, e cosa cambia davvero rispetto a Pixel 11 Pro e Pro XL
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship
Google Pixel 11 Pro XL debutta in Italia con il nuovo Tensor G6, lo Zoom Pro fino a 120x, il display Super Actua da 3600 nit e la new entry HiLight riservata ai modelli Pro: lo abbiamo provato in anteprima per diversi giorni prima del lancio commerciale, tra fotocamera generativa, ricarica ancora indietro rispetto ai rivali e un prezzo che parte da 1399 euro
Non sai programmare? Ecco cosa si può fare con un LLM e una GeForce RTX 5070 Ti
Non sai programmare? Ecco cosa si può fare con un LLM e una GeForce RTX 5070 Ti
Con un semplice dialogo in linguaggio naturale e la potenza di una scheda video di fascia alta è possibile costruire software funzionante da zero, senza scrivere una riga di codice e senza inviare un solo byte dei propri dati a server esterni
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 20-08-2006, 17:37   #1
aduri
Member
 
Iscritto dal: Nov 2005
Città: Genova
Messaggi: 75
(Java) problemi con linkedList e rnd

Sto cercando di andare per gradi per raggiungere la soluzione del problema richiesto dal prof.

Testo:
Definire la classe SortedLinkedList che estende la classe LinkedList (vista a
lezione) PREMETTO CHE IO NON L'HO VISTA E NON SONO RIUSCITO AD AVERE APPUNTI
e che mantiene ordinata la lista: ridefinire il metodo add() affinché inserisca gli
elementi in ordine. Gli oggetti da inserire devono essere confrontabili e quindi devono
implementare l’interfaccia Comparable. Si ordini la lista in modo che il valore massimo
sia in testa (first) e il valore minimo in coda (last). Verificare la correttezza
dell’implementazione: per esempio usando sequenze di stringhe in ordine, in ordine inverso,
casuali, uguali. Verificare con sequenze di 21 elementi Integer casuali, con valori
compresi nell’intervallo [-30,30].


Questa e' la prima parte del codice.

Il mio primo problema e' capire come comprendere anche i numeri negativi nella lista random.
Il codice ne elenca 21 interi positivi.
Il secondo e' capire come ridefinire il metodo add() in una LinkedList???

Codice:
import java.util.*;

public class TestLinkedList extends LinkedList
{
private static int elementi;

public static void main ( String []args ) 
    {
       if(args.length > 0)
          elementi = Integer.parseInt(args[0]);
       else
         elementi = 21;
         System.out.println( "Prova su " + elementi + "elementi." );

         LinkedList l = new LinkedList();

         // riempi la lista di numeri a caso tra -30 e +30

          ListIterator it_aggiunta = l.listIterator();
       for ( int i = 0; i < elementi; i++ ) 
       {
          int rand = (int)Math.round
                        ( Math.random() * 30 );
          it_aggiunta.add( new Integer( rand ) );
       }

       // stampa tutti i valori

       System.out.println( "-Collezione completa:" );
       stampaCollezione( l );

       }

    private static void stampaCollezione
                                   ( Collection c ) 
    {
       Iterator i = c.iterator();
       while ( i.hasNext() ) 
       {
          System.out.println( i.next() );
       }
    }
}
aduri è offline   Rispondi citando il messaggio o parte di esso
Old 21-08-2006, 22:42   #2
aduri
Member
 
Iscritto dal: Nov 2005
Città: Genova
Messaggi: 75
Sono riuscito a fare un passo in avanti e visualizzo i numeri come richiesto.

Ora cerco di capire come fare l'overdrive del metodo add() con compareTo().
Allego il codice con compilazione a buon fine (a scopo didattico) x chi e' interessato:




Codice:

import java.util.*;
public class SortedLinkedList extends LinkedList
{
private static int elementi;
public static void main ( String []args )
{
if(args.length > 0)
elementi = Integer.parseInt(args[0]);
else
elementi = 21;
System.out.println( "Prova su " + elementi + "elementi." );
LinkedList l = new LinkedList();
// riempi la lista di numeri a caso tra -30 e +30
ListIterator it_aggiunta = l.listIterator();
Random generatore=new Random();
for ( int i = 0; i < elementi; i++ )
{
int segno=generatore.nextInt(2);// 0 o 1
int n=generatore.nextInt(31);
if(n<15)
l.add(new Integer(- n ));
else
l.add(new Integer(n));
}
// stampa tutti i valori
System.out.println( "-Collezione completa:" );
stampaCollezione( l );
}
private static void stampaCollezione
( Collection c )
{
Iterator i = c.iterator();
while ( i.hasNext() )
{
System.out.println( i.next() );
}
}
aduri è offline   Rispondi citando il messaggio o parte di esso
Old 22-08-2006, 08:50   #3
franksisca
Senior Member
 
L'Avatar di franksisca
 
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
Secondo me ti conviene creare la classe SortedLinkedList a parte, e non metterci il main dentro, ma mettere il main da un'altra parte(io lo chiamo StarterClass).

Per la ridefinizione del metodo add(Object o) non farti impressionare, non è difficile.

per prima cosa devi anche implementare il metodo compareTo(Object o) in modo che hai un metodo di confronto diretto, senza dover andare a controllare ogni volta.

il compareTo() restituisce, tipicamente, chiamato in questo modo
Codice:
a.compareTo(b)=-1  se a<b
a.compareTo(b)=0  se a=b
a.compareTo(b)=1  se a>b
quindi, detto ciò, credo che sia abbastanza facile capire come ordinare la lista.
se hai problemi fai un fischio
__________________
My gaming placement
franksisca è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Google Pixel 11: non ha l'HiLight dei Pro, ma è il Pixel più equilibrato di sempre Recensione Google Pixel 11: non ha l'HiLight dei...
Google Pixel 11 Pro XL: fotocamera al top, batteria indietro. Luci e ombre del nuovo flagship Google Pixel 11 Pro XL: fotocamera al top, batte...
Non sai programmare? Ecco cosa si può fare con un LLM e una GeForce RTX 5070 Ti Non sai programmare? Ecco cosa si può far...
Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto Recensione Samsung Galaxy Z Fold8 Ultra: il pieg...
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing" Insta360 X6: Dolby Vision, 8K e montaggio "...
Sennheiser Momentum 5, i nuovi auricolar...
Serie A e Serie B al via: guida ai nuovi...
CMF Buds Neo, il sub-brand di Nothing pr...
GTA 6 è già un successo: i preordini sta...
Una Visa scaduta può ancora pagar...
I migliori robot aspirapolvere in offert...
The Duskbloods non cambia la direzione d...
Un weekend di ribassi eccezionali su Ama...
Cosa succede se l'IA diventa una persona...
Tutta la stagione NFL 2026/2027 è su DAZ...
I 3 portatili in offerta migliori di tut...
iPhone 17 Pro e Pro Max ai minimi storic...
SK hynix, il boom dell'HBM finisce in bu...
Linktour Alumi, test drive: la microcar ...
Dopo l'atterraggio, il razzo spaziale ci...
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: 16:05.


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