Torna indietro   Hardware Upgrade Forum > Software > Programmazione

BOOX Picco: l'ebook reader minuscolo è una genialata, e si può attaccare allo smartphone
BOOX Picco: l'ebook reader minuscolo è una genialata, e si può attaccare allo smartphone
BOOX ha portato sul mercato Picco, un e-reader da 3,97 pollici che pesa 58 grammi e si aggancia al retro dello smartphone con un anello magnetico. Lo abbiamo usato con Pixel 11 Pro XL e iPhone 18 Pro per capire se un formato così ridotto regga la prova della lettura quotidiana
AMD EPYC Venice: dentro Zen 6, i SoC a 256 core e la sfida al costo della memoria
AMD EPYC Venice: dentro Zen 6, i SoC a 256 core e la sfida al costo della memoria
A Las Vegas AMD ha svelato i dettagli architetturali delle CPU EPYC di sesta generazione, note con il nome in codice Venice. Nuovi core Zen 6 e Zen 6c costruiti a 2 nanometri, fino a 256 core per socket, 16 canali di memoria, interfaccia PCI Express 6.0 e un'intera famiglia di proposte che va da Venice SP7 a Verano. Senza dimenticare la memoria, oggi la voce di costo più pesante in un server: AMD risponde con CXL 3.1 e con la tecnologia software MEXT, che porta la memoria flash dentro la gerarchia della DRAM.
HONOR Pad X9 Max recensione, schermo ultra large a meno di 400 euro
HONOR Pad X9 Max recensione, schermo ultra large a meno di 400 euro
HONOR Pad X9 Max mette un pannello IPS da 13 pollici con risoluzione 2,5K e refresh a 120 Hz davanti a una batteria da 10.100 mAh e a quattro altoparlanti. Il listino parte da 399,90 euro, per un progetto molto chiaro e ambizioso: schermo ampio, buon audio e giornate lontano dalla presa, a un prezzo che non pesa sul portafoglio
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 17-10-2014, 17:52   #1
G.TheHamleter
Junior Member
 
Iscritto dal: Oct 2014
Messaggi: 29
Java : errore java.lang.NullPointerException

Salve a tutti,

Vorrei postare parte di codice di un'applicazione in java perchè, facendo funzionare JUnit mi dà errore java.lang.NullPointerException :

public class AppointmentCollection
{
private Appointment[] lista; //array di Appointment

//Costruttore per dimensione array

public AppointmentCollection(int dim)
{
this.lista = new Appointment[dim]; //ho definito l'array ma ancora vuoto
}





public Appointment[] getLista()
{
return this.lista;
}

//metodo di aggiunta elemento in array

public int add(Appointment app)
{

int position = -1;
int i = 0;
do
{

if(this.lista[i].equals(null))java.lang.nullpointerexception
{
this.lista[i] = app;
position = i;
}
else
{
i++;
}

}
while(i < this.lista.length && position == -1);

return position;


}
....//

Vi posto anche la classe Appointment di cui è composizione

import java.text.DateFormat;
public class Appointment
{
/**
Campi esemplare : stato appuntamento rappresentato da descrizione a parole e da orario
*/

private String Description;
private Date From;
private Date To;

// da uml noto che unico campo esemplare è description??
public Appointment()
{

}


/**
Inizializzo il mio oggetto Appointment
@param1 stringa descrittiva appuntamento
@param2 millisec per inizializzare Date
@param3 millisec per inizializzare Date
*/

public Appointment(String kind,long start, long finish)
{
this.Description = kind;
this.From = new Date(start);
this.To = new Date(finish);
}



/**
metodi accessor e modificatori
metodi accessor
* @return descrizione o Date; */
public String getDescription() {
return this.Description;
}

public void setDescription(String description) {
this.Description = description;
}

public Date getFrom() {
return this.From;
}

public void setFrom(Date from) {
this.From = from;
}

public Date getTo() {
return this.To;
}

public void setTo(Date to) {
this.To = to;
}

public int getDuration()
{
long duration = this.getTo().getTime() - this.getFrom().getTime();
return (int) (duration*10^-3/60);
}

public void setDuration(int time)
{
long tiiime = time;
long duration = this.getFrom().getTime() + tiiime ;
this.getTo().setTime(duration);
}

public String toString()
{
DateFormat dateFormatter = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
//ho ottenuto formattatore data ed ora

return this.getDescription() + dateFormatter.format(this.getFrom()) + dateFormatter.format(this.getTo());
}

public boolean equals(Appointment a)
{
DateFormat dateFormatter = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
return(this.getDescription().equals(a.getDescription()) && dateFormatter.format(this.getFrom()).equals(dateFormatter.format(a.getFrom()))
&& dateFormatter.format(this.getTo()).equals(dateFormatter.format(a.getTo())));
}


Vi ringrazio



}
G.TheHamleter è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2014, 19:08   #2
ndakota
Senior Member
 
L'Avatar di ndakota
 
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
Mi spieghi cosa cerchi di fare nel metodo add della classe AppointmentCollection? Sarebbe anche utile che indentassi il codice
ndakota è offline   Rispondi citando il messaggio o parte di esso
Old 18-10-2014, 14:42   #3
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2795
A parte che come ha detto ndakota non è chiaro cosa vuoi fare, la prima volta che chiamerai add lista[0] sarà null e su un valore null non puoi invocare metodi (nello specifico equals). Se vuoi controllare se è null usa ==.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 25-10-2014, 17:03   #4
G.TheHamleter
Junior Member
 
Iscritto dal: Oct 2014
Messaggi: 29
Avete ragione,manca il testo
(qua il pdf completo)

http://enricodenti.disi.unibo.it/Fon...MyCalendar.pdf
G.TheHamleter è offline   Rispondi citando il messaggio o parte di esso
Old 26-10-2014, 20:56   #5
ndakota
Senior Member
 
L'Avatar di ndakota
 
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
Ho guardato velocemente la dispensa e, correggimi se sbaglio, penso che tu debba usare una Collection o una classe che deriva da Collection, non un Array. Se quello che dico è corretto quel metodo verrebbe semplicemente così, seguendo le specifiche.

Codice:
public int addAppointment(Appointment a) {
   appointments.add(a);
   return appointments.indexOf(a);
}
ndakota è offline   Rispondi citando il messaggio o parte di esso
Old 26-10-2014, 20:56   #6
ndakota
Senior Member
 
L'Avatar di ndakota
 
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
Ho guardato velocemente la dispensa e, correggimi se sbaglio, penso che tu debba usare una Collection o una classe che deriva da Collection, non un Array. Se quello che dico è corretto quel metodo verrebbe semplicemente così, seguendo le specifiche.

Codice:
public int addAppointment(Appointment a) {
   appointments.add(a);
   return appointments.indexOf(a);
}
ndakota è offline   Rispondi citando il messaggio o parte di esso
Old 26-10-2014, 20:56   #7
ndakota
Senior Member
 
L'Avatar di ndakota
 
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
Ho guardato velocemente la dispensa e, correggimi se sbaglio, penso che tu debba usare una Collection o una classe che deriva da Collection, non un Array. Se quello che dico è corretto quel metodo verrebbe semplicemente così, seguendo le specifiche.

Codice:
public int addAppointment(Appointment a) {
   appointments.add(a);
   return appointments.indexOf(a);
}
ndakota è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2014, 16:38   #8
G.TheHamleter
Junior Member
 
Iscritto dal: Oct 2014
Messaggi: 29
Purtroppo in questo esercizio come collezione intende proprio che tale classe incapsula o è composizione di un array di Appointment
G.TheHamleter è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


BOOX Picco: l'ebook reader minuscolo è una genialata, e si può attaccare allo smartphone BOOX Picco: l'ebook reader minuscolo è un...
AMD EPYC Venice: dentro Zen 6, i SoC a 256 core e la sfida al costo della memoria AMD EPYC Venice: dentro Zen 6, i SoC a 256 core ...
HONOR Pad X9 Max recensione, schermo ultra large a meno di 400 euro HONOR Pad X9 Max recensione, schermo ultra large...
Lenovo ThinkPad X1 Carbon Gen 14: il business ultraleggero si rinnova dall’interno Lenovo ThinkPad X1 Carbon Gen 14: il business ul...
Jabra Evolve3 85: le cuffie sia per l'intrattenimento che per il lavoro Jabra Evolve3 85: le cuffie sia per l'intratteni...
Chi può sostituire Jensen Huang a...
Rilasciati i primi dati raccolti dal tel...
Leica M-A Hammertone e Leica M11-P Hamme...
L'IA non sostituisce la creatività...
Anche Formula E cambia il calendario per...
Defender contro BYD Ti 7: il giudice d&a...
32GB di RAM DDR4 a un prezzo sorprendent...
La nuova lavagna interattiva di LG arriv...
Lo smartphone Samsung passa da 16:9 a 21...
OPPO Pad 5 Pro arriva in Italia: display...
80 TOPS in un palmo di mano: il nuovo Mi...
Motorola Razr Flex: il pieghevole che sf...
NVIDIA, Jensen Huang lascia dopo lo scan...
Honor 700 Pro con Snapdragon 8 Gen 5 e 1...
Dentro una macchina del caffè c'&...
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:59.


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