Pagina 1 di 2

[java]richiamare una classe in un'altra classe

MessaggioInviato: 24 mag 2015, 13:34
da el92
Ciao ho un problemino...non riesco a richiamare una classe in un'altra classe avente diversi parametri:
Codice: Seleziona tutto
class Successivo{
String nome;
Successivo(String j){
this.nome=j;
}
}

fin qui tutto ok;poi:
Codice: Seleziona tutto
import java.util.*;
class Prova{
   int i;

Prova(int i){
   this.i=i;
   
}
public boolean a(Successivo v){
   Successivo p=new Successivo(p.nome);      //l'oggetto Successivo nel metodo main
   boolean o=false;
   if(p.nome==v.nome){
      o=true;
   }
   return o;
}
public static void main(String[] args) {
   Successivo g=new Successivo("ok");
   Successivo i=new Successivo("bravo");
   Prova k=new Prova(3);
   System.out.println(k.a(g));
}
}

Ecco e qui il problema...io devo confrontare i nomi di oggetti diversi di Successivo da main...nel metodo: public boolean a(Successivo v) come faccio a creare un oggetto Successivo,che richiede come parametro una stinga,se nella mia classe Prova,su cui l'ho invocato,ha solo parametri di tipo int? #-o

Re: [java]richiamare una classe in un'altra classe

MessaggioInviato: 24 mag 2015, 14:36
da eAlucarD
#-o

fai un respiro profondo poi...

probabilmente nel programma che ti è stato assegnato era specificato anche di usare array o liste che si sono perse per strada

sarebbe opportuno imparare ad usare nomi significativi per variabili e metodi e non lesinare con i commenti :mrgreen:

la migliore approssimazione alla roba confusa che hai scritto potrebbe essere

per confrontare le stringhe dovresti usare un metodo di confronto... (compare o equals/equalsIgnoreCase
per l'accesso ai membri dovresti avvalerti di metodo getter/setter non lasciare tutto con visibilità package :mrgreen:
riguardo a Successivo studierei comparator & comparable :mrgreen:

Successivo[] successivi = new Successivo[3];
successivi[0] = new Successivo("primo");
successivi[2] = new Successivo("secondo");
successivi[3] = new Successivo("terzo");

// prosegui...

Re: [java]richiamare una classe in un'altra classe

MessaggioInviato: 24 mag 2015, 15:34
da TardoFreak
Oltre quello che è stato scritto da Foto UtenteeAlucarD mi spieghi cosa dovrebbe significare
Codice: Seleziona tutto
k.a(g)

:?:

Re: [java]richiamare una classe in un'altra classe

MessaggioInviato: 24 mag 2015, 22:11
da bobina
E' codice offuscato per impedire che gli altri capiscano!!! :mrgreen:

Re: [java]richiamare una classe in un'altra classe

MessaggioInviato: 24 mag 2015, 23:56
da TardoFreak
Non trovo il metodo "a".

Mah!

Re: [java]richiamare una classe in un'altra classe

MessaggioInviato: 25 mag 2015, 13:45
da bobina
Il metodo a si trova dentro la classe Prova infatti k è un istanza di ella.
Eccolo riportato qui:
Codice: Seleziona tutto
public boolean a(Successivo v){
   Successivo p=new Successivo(p.nome);      //l'oggetto Successivo nel metodo main
   boolean o=false;
   if(p.nome==v.nome){
      o=true;
   }
   return o;
}

Re: [java]richiamare una classe in un'altra classe

MessaggioInviato: 25 mag 2015, 15:12
da TardoFreak
Alla faccia della buona indentazione!
Un codice così mi rifiuto di guardarlo (gratis).

O_/

Re: [java]richiamare una classe in un'altra classe

MessaggioInviato: 25 mag 2015, 15:15
da fairyvilje
bobina ha scritto:
Codice: Seleziona tutto
  Successivo p=new Successivo(p.nome);      //l'oggetto Successivo nel metodo main


Ti rendi conto di costa stai facendo? Risposta sincera mi raccomando. :mrgreen:

Re: [java]richiamare una classe in un'altra classe

MessaggioInviato: 25 mag 2015, 15:16
da TardoFreak
Azz! :shock:
bravo Foto Utentefairyvilje :ok:

Re: [java]richiamare una classe in un'altra classe

MessaggioInviato: 26 mag 2015, 18:43
da el92
Ciao diciamo che ho inventato nuove regole di java :mrgreen: forse...anzi non forse...mi sono spiegato male e in più ho postato pure il problema sbagliato #-o il problema è che avendo un ArrayList:

Codice: Seleziona tutto
import java.util.*;
class Agenda{
ArrayList<Appuntamento>a;
Persona p;
Agenda(Persona titolare){
this.p=titolare;
a=new ArrayList<Appuntamento>();
}
/**Se l'appuntamento a non si sovrappone con gli appuntamenti gia nell'agenda, a viene aggiungo
all'agenda.*/
public void aggiungiAppuntamento(Appuntamento altro){
int count=0;
   if(a.isEmpty() ){
   a.add(r);
}else if(!(a.get(count).inConflitto(y))){   
   a.add(a.get(count));
   count++;
   }
}
}
public static void main(String[] args){

Agenda a=new Agenda(new Persona("elena","rossi"));

a.aggiungiAppuntamento(new AppuntamentoLavoro("lavoro"));
System.out.println(a);
}
}



come faccio ad usare il metodo inConflitto(Appuntamento) che utilizza due oggetti Appuntamento se il mio arrayList non contiene nessun oggetto?:cry:
Il programma deve usare per aggiungere oggetti Appuntamento all'arrayList solo con il metodo aggiungiAppuntamento.