Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere?
Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere?
HONOR Magic V6 è arrivato in Italia a 2.299,90 euro con una promessa precisa: unire 4 mm di spessore da aperto (8,75 mm chiuso nel modello White, 9 mm negli altri colori) a una batteria da 6.660 mAh, la più capiente mai vista su un pieghevole. Lo abbiamo usato per oltre una settimana in versione Red 16/512 GB per capire se lo Snapdragon 8 Elite Gen 5 tiene testa alla concorrenza anche fuori dai benchmark ufficiali
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni
Redmi Pad 2 9.7 punta su un display ampio e fluido, una batteria capace di accompagnare l'uso quotidiano senza ansie da ricarica e un prezzo accessibile, a partire da 179,90 euro per la versione con 64 GB di storage. Lo Snapdragon 6s 4G Gen 2 e i 4 GB di RAM della configurazione più diffusa frenano però chi cerca reattività e multitasking spinto: ecco il bilancio dopo due settimane di prova diretta
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Polygon è la concept car di Peugeot che mostra il futuro delle soluzioni del segmento B: tra design compatti e innovativi affiancati da dimensioni compatte uno scherzo dalla manovrabilità incredibile per le manovre a bassa velocità
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 25-11-2012, 14:16   #1
ozzy19
Member
 
Iscritto dal: May 2009
Messaggi: 147
[Java] NullPointerException

Salve ho queste due classi, riguardano un esercizio:
MatriceSparsa.java
Codice:
import java.util.ArrayList;
import java.util.Iterator;



public class MatriceSparsa<T> implements Iterable<T> {

	protected ArrayList<Record<T>>[] valori;
	private int DEFAULT;
	
	
	static int[][] matriceBinaria;
	
	
	@Override
	public Iterator<T> iterator() {
		return null;
	}
	

	public void creaMatrice(int righe, int colonne,int def){
		matriceBinaria=new int[righe][colonne]; 
		DEFAULT=def;

		for(int i=0;i<matriceBinaria.length;i++){
			for(int j=0;j<matriceBinaria[i].length;j++){
				matriceBinaria[i][j]=DEFAULT;
			}
		}
	}
	
	
	public void cambiaValore(int riga,int colonna, int valore){

		matriceBinaria[riga][colonna]=valore;
	}
	
	public int valore(int righe, int colonne){
		
		return matriceBinaria[righe][colonne];
	}
	
	public int numRighe(){
		return matriceBinaria.length;
	}
	
	public int numColonne(){
		int u=0;
		for(int i=0;i<matriceBinaria.length;i++){
				u= matriceBinaria[i].length;
		}
		return u;
		
	}
	
	public int numValoriSignificativi(){
        int val=0;
        
		for (int i=0;i<matriceBinaria.length;i++){
			for(int j=0;j<matriceBinaria[i].length;j++){
				if(matriceBinaria[i][j]!=DEFAULT) {
					val++;
				}
			}
		}
		return val;
	}
	
	public void inizializza(){
		valori=new ArrayList[numValoriSignificativi()];
	    int y=0;
		
		for(int i=0;i<matriceBinaria.length;i++){
			for(int j=0;j<matriceBinaria[i].length;j++){
			 if(matriceBinaria[i][j]!=DEFAULT) {
				valori[y].add(new Record(matriceBinaria[i][j], j)); 
				y++;
			 }
			}
		}
		
	}
	
	
	public static void main(String[] args){
		MatriceSparsa<Integer> m=new MatriceSparsa<Integer>();
		
		m.creaMatrice(3, 7, 0);
		
		System.out.println("Valore in posizione (1, 6): "+m.valore(1, 6));
		System.out.println("Valore in posizione (2, 3): "+m.valore(2, 3));
		
		System.out.println("Numero righe: "+m.numRighe()+" Numero colonne: "+m.numColonne());

		
		m.cambiaValore(1, 6, 1);
		m.cambiaValore(1, 5, 1);
		m.cambiaValore(2, 2, 1);
		m.cambiaValore(0, 4, 1);
		
		System.out.println("Valore in posizione (1, 6): "+m.valore(1, 6));

		
		
		
		
		System.out.println("Valori significativi: "+m.numValoriSignificativi());

		
		m.inizializza();

	}

}
L'errore viene segnalato al metodo inizializza() precisamente a "valori[y].add(new Record(matriceBinaria[i][j], j));"

Questa è la classe Record:
Codice:
public class Record<E> {
   E valore;
   int colonna;
   
     public Record(E valore,int colonna){
    	 this.valore=valore;
    	 this.colonna=colonna;
     }
}
Come posso far ad aggiungere i valori alla variabile protetta "valori"? Grazie!
ozzy19 è offline   Rispondi citando il messaggio o parte di esso
Old 25-11-2012, 16:18   #2
ozzy19
Member
 
Iscritto dal: May 2009
Messaggi: 147
Ho risolto da solo!
ozzy19 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione HONOR Magic V6: spessore record e super batteria. È lui il fold da battere? Recensione HONOR Magic V6: spessore record e sup...
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni Redmi Pad 2 9.7: ampio display, economico e peso...
Peugeot Polygon Concept: ecco il futuro delle utilitarie Peugeot Polygon Concept: ecco il futuro delle ut...
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione Reno16 Pro: il compatto di OPPO punta su fotocam...
 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco Hisense 55U7SE: tuttofare e accessibile, il Min...
Apple riduce la produzione di iPhone 17:...
Lancio del razzo spaziale cinese Lunga M...
SpaceX Starship: Super Heavy Booster 20 ...
Questa RTX 3070 è tornata in vita...
Un ricercatore scopre uno script bash na...
Robot umanoidi teleoperati eseguono le p...
QuadRF, il gadget da 499 dollari che leg...
ChatGPT, Claude e Gemini nel mirino: cos...
Pneumatici dalla Cina, l'UE introduce da...
SpaceX vuole 100.000 satelliti in orbita...
Disney+ gratis, ma con pubblicità: l'ult...
Microsoft ammette: emissioni di CO2 su d...
Apple denuncia OpenAI e due ex dirigenti...
Asha Sharma licenzia migliaia di dipende...
25 articolazioni, pelle tattile e forza ...
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: 22:25.


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