Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Programmare un insieme vector...vettore parametrico di elementi

    Buongiorno a tutti sono fresco fresco del forum, appena registrato, e la motivazione che mi a spinto a fare questo, e il programma, incompleto che ora vi offro



    codice:
    package appelloDiEsame;//IL MIO PACKAGE E QUESTO, VOI PER PROVARE MODIFICATELO
    import java.util.*;
    public interface Insieme <T> extends Iterable<T> {
    public boolean eVuoto();
    public boolean appartiene(T elem);
    public boolean aggiungi(T elem);
    public boolean rimuovi(T elem);
    public Insieme <T> unione (Insieme <T> altro);
    public Insieme <T> intersezione (Insieme <T> altro);
    public Insieme <T> differenza (Insieme <T> altro);
    public Insieme <T> differenzaSimmmetrica (Insieme <T> altro);
    }//INTERFACCIA




    codice:
    package appelloDiEsame;
    import java.util.*;
    public abstract class InsiemeAstratto<T> implements Insieme <T>{
    	public int size(){
    		int conta=0;
    		for(T e:this) conta++;
    		return conta;
    	}
    	public boolean eVuoto(){
    	return this.size()==0;
    }
    	public boolean appartiene(T elem){
    		for (T e:this)
    			if(elem.equals(e))
    				return true;
    				return false;
    	}
    	public boolean rimuovi(T elem){
    		Iterator <T> it=this.iterator();
    		while(it.hasNext()){
    			T t=it.next();
    			if(t.equals(elem)){
    				it.remove();
    				return true;
    			}
    		}
    	return false;
    	}
    	public abstract Insieme <T> unione (Insieme <T> altro);
    	public abstract Insieme <T> intersezione (Insieme <T> altro);
    	public abstract Insieme <T> differenza (Insieme <T> altro);
    	public abstract Insieme <T> differenzaSimmmetrica (Insieme <T> altro);			
    	//LI O LASCIATI APPOSTA ABSTRACT, IL PROBLEMA E GIU			
    		
    		}
    :quote:


    E ORA ARRIVA IL MIO PROBLEMA......................


    codice:
    package appelloDiEsame;
    import java.util.*;
    public class InsiemeVector<T> extends InsiemeAstratto<T> {
    	private T vettore[];
    	private int capacita=0;
    	private int size=0;
    	
    	private class Iteratore implements Iterator<T>{
    		private int freccia=0;
    		private boolean rimuovibile=false;
    		
    		public boolean hasNext(){
    		 return freccia<size;	
    		}
    		
    		public T next(){
    			if( !hasNext() ) throw new NoSuchElementException();
    			rimuovibile=true;
    			freccia++;
    			return vettore[freccia-1];
    		}//next
    		public void remove(){
    			if(!rimuovibile) throw new IllegalStateException();
    			rimuovibile=false;
    			//elimina l'elemento corrente a[freccia-1]
    			for(int i=freccia; i<size; i++)
    				vettore[i-1]=vettore[i];
    			size--;
    		}//remove
    	}//Iteratore
    	public InsiemeVector(){
    		this(100);
    	}
    	public InsiemeVector(int capacita){
    		if(capacita<0) throw new IllegalArgumentException();
    		this.capacita=capacita;
            this.vettore=(T[])new Object[capacita];
          }
    	public InsiemeVector(InsiemeVector iv){
    		this.vettore=(T[])new Object[iv.capacita];
    		this.size=iv.size;
    		this.capacita=iv.capacita;
    		for(int i=0; i< size; i++)
    			vettore[i]=(T)iv.vettore[i];
    	}
    
    
    
     public boolean appartiene(T elem){
            	 vettore.appartiene();      //QUI MI DA L' ERRORE..............
            }
    MI DICE CHE NON E POSSIBILE RICHIAMARE APPARTIENE SU UN TIPO T[]
    O PURE CAPITO CHE IL METODO LAVORA CON ELEMENTI T!
    MA SE PROVO AFARE UN CASTING MI DA ERRORE...
    MI DITE CM FACCIO A RICHIAMARE QUESTO BENEDETTO METODO SU UN VETTORE?????
    QUELLO DELLA CLASSE ASTRATTA E OK CREDO... MI AIUTATE??????????????????????

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Tu chiami vettore.appartiene() ma la firma del metodo è

    boolean appartiene(T elem)


    Non serve urlare.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    mi dici come dovrei allora scrivere il metodo per applicarlo su vettore?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.