Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto
Recensione Samsung Galaxy Z Fold8 Ultra: il pieghevole più famoso diventa quasi perfetto
Samsung rinnova la serie pieghevole di punta con Galaxy Z Fold8 Ultra: pannello interno da 8 pollici quasi senza piega, cerniera Flex Titanium, Snapdragon 8 Elite Gen 5 for Galaxy e batteria finalmente da 5.000 mAh. Prezzo italiano da 2.299 a 2.899 euro. Tra colorimetro, benchmark reali e giorni di uso quotidiano, ecco dove questo pieghevole convince e dove il nome Ultra fatica ancora a trovare piena giustificazione
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
La nuova Insta360 X6 introduce sensori Sony da 1/1.1" e un SoC Triple AI a 4nm. Analizziamo le riprese 8K, il primo Dolby Vision nativo a 10-bit nel settore sferico e l'innovativo flusso di lavoro diretto sulla futura versione 22 di DaVinci Resolve.
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Dopo due settimane trascorse al volante della Dacia Spring 2026 possiamo raccontarvi tutto, dalle novità di motore e batteria, fino ai consumi in tutti le situazioni, compresa l'autonomia reale ad alta velocità
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-06-2007, 10:47   #1
gigippa
Member
 
Iscritto dal: Apr 2007
Città: Torino
Messaggi: 95
[Java] problema

Ciao. Devo implementare i metodi trasformaInTripla della classe che metto qui sotto

Codice:
import java.util.Scanner;
import static java.lang.System.*;

public class CoppiaTripla{

  static Scanner input = new Scanner(System.in);

  public static void main(String[] args) {

     Coppia [] array = creaArrayCoppia();
     stampaArrayCoppia(array);
     //
     trasformaInTripla(array);
     stampaArrayTripla(trasformaInTripla(array));
  }


  /** Metodo che crea e restituisce un array di Coppie. Gli interi che compongono
  le singole Coppie sono richiesti all'utente.
  */
	public static Coppia [] creaArrayCoppia() {
 		out.println("Di che lunghezza vuoi l'array?");
 		while(!input.hasNextInt()) {
		      input.next();
		      out.print("Immetti un intero: ");
    }
 		int n = input.nextInt();
 		Coppia [] array = new Coppia[n];
 		for(int i = 0; i < n; i++){
			 array[i] = new Coppia();
			 out.println("Inserisci il primo elemento della coppia numero " + i);
			 array[i].setI(input.nextInt());
			 out.println("Inserisci il secondo elemento della coppia numero " + i);
			 array[i].setJ(input.nextInt());
    }

    return array;
 }

 /** Metodo che stampa un array di Coppie. */
 public static void stampaArrayCoppia(Coppia [] a){
	 int n = a.length;
	 for (int i = 0; i < n; i++)
	 out.println(a[i]);
 }

 /** Metodo da completare che dato un array di Coppie costruisce e restituisce un array di Triple.*/
 public static Tripla [] trasformaInTripla(Coppia [] a){
	 int dimensione=a.length;
	 Tripla arr [] = new Tripla[dimensione];

	 for(int i=0; i<dimensione; i++){  //i<a.length
		 arr[i].setI(a[i].getI()); //= a[i].getI();
		 arr[i].setJ(a[i].getJ());

		 if(arr[i].getI()<arr[i].getJ()){
			 arr[i].setK(arr[i].getI());
		 }
		 else arr[i].setK(arr[i].getJ());
	 }
return arr;
	 }


 /** Metodo che stampa un array di Triple. */
 public static void stampaArrayTripla(Tripla [] a){
	 int n = a.length;
	 for (int i = 0; i < n; i++)
	 out.println(a[i]);
 }

}
classe che utilizza le classi che qui riporto
Codice:
class Tripla {

  private int i;
  private int j;;
  private int k;


  // NON INTRODURRE NESSUN COSTRUTTORE!
  // Si usa il costuttore di default.


 /** Restituisce il valore del campo i*/
 public int getI() {
		return i;
  }

  /** Restituisce il valore del campo j*/
  public int getJ() {
		return j;
  }

  /** Restituisce il valore del campo k*/
  public int getK() {
		return k;
  }


  /** Modifica il campo i*/
  public void setI(int i) {
		this.i = i;
  }

  /** Modifica il campo j*/
 public void setJ(int j) {
		this.j = j;
  }

	/** Modifica il campo k*/
  public void setK(int k) {
		this.k = k;
  }

 /** Restituisce una stringa che contiene tutti i valori dei campi dell'oggetto*/
  public String toString(){
			return "i: " + i + " j: " + j + " k: " + k;
	}


}
Codice:
class Coppia {

  private int i;
  private int j;



  // NON INTRODURRE NESSUN COSTRUTTORE!
  // Si usa il costuttore di default.


 /** Restituisce il valore del campo i*/
 public int getI() {
    return i;
  }

  /** Restituisce il valore del campo j*/
  public int getJ() {
    return j;
  }


  /**Modifica il campo i*/
  public void setI(int i) {
    this.i = i;
  }

 /** Modifica il campo j*/
 public void setJ(int j) {
		this.j = j;
  }


/** Restituisce una stringa che contiene tutti i valori dei campi dell'oggetto*/
 public String toString(){
		return "i: " + i + " j: " + j;
 }

}
Non riesco a capire come mai non funzioni. Qualcuno mi aiuta? Grazie
gigippa è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 11:04   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da gigippa Guarda i messaggi
Codice:
 public static Tripla [] trasformaInTripla(Coppia [] a){
	 int dimensione=a.length;
	 Tripla arr [] = new Tripla[dimensione];
Il fatto di istanziare un array di N elementi di tipo Tripla non vuol dire che hai già istanziato N oggetti di tipo Tripla!!!

In arr hai inizialmente tutti i reference a null. Pertanto devi anche istanziare gli oggetti Tripla e assegnare i reference agli elementi dell'array.
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 11:07   #3
gigippa
Member
 
Iscritto dal: Apr 2007
Città: Torino
Messaggi: 95
Quote:
Originariamente inviato da andbin Guarda i messaggi
Il fatto di istanziare un array di N elementi di tipo Tripla non vuol dire che hai già istanziato N oggetti di tipo Tripla!!!

In arr hai inizialmente tutti i reference a null. Pertanto devi anche istanziare gli oggetti Tripla e assegnare i reference agli elementi dell'array.
Cioe? Mi puoi scrivere come fare?
gigippa è offline   Rispondi citando il messaggio o parte di esso
Old 19-06-2007, 11:14   #4
gigippa
Member
 
Iscritto dal: Apr 2007
Città: Torino
Messaggi: 95
Grazie. Ho risolto cosi

Codice:
 public static Tripla [] trasformaInTripla(Coppia [] a){
	 int dimensione=a.length;

	 Tripla arr [] = new Tripla[dimensione];


	 for(int i=0; i<dimensione; i++){
		 arr[i]=new Tripla();
		 arr[i].setI(a[i].getI()); //= a[i].getI();
		 arr[i].setJ(a[i].getJ());

		 if(arr[i].getI()<arr[i].getJ()){
			 arr[i].setK(arr[i].getI());
		 }
		 else arr[i].setK(arr[i].getJ());
	 }
return arr;
	 }
gigippa è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


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 "...
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli Due settimane con Dacia Spring 2026: novit&agrav...
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre AORUS GeForce RTX 5080 INFINITY WOOD 16G: una sc...
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
Apple TV punta ai diritti USA dell'Open ...
Download pirata di Odissea: attenzione a...
Condivisione Schermo di macOS sotto atta...
Debutta Freelander, il nuovo marchio di ...
Le migliori offerte Amazon di oggi: Appl...
Ecco l'auto della discordia, Voyah Passi...
Virgin Galactic posticipa la ripresa dei...
Apple AirPods Pro 3 a 199€: ANC evoluto,...
Insta360 Flow Pro a 65€: il gimbal per i...
IONIQ 3, parte da Izmit la produzione de...
Per il cofondatore di Arm l'IA non &egra...
Nove CEO dell'AI, nessuno si salva: il m...
OpenAI ha sciolto il team che valutava i...
Dreame Aqua10 Ultra, super calo di prezz...
Microsoft ritira Mico: dal 18 agosto Cop...
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: 19:04.


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