Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    [C#]Problema con ArrayList

    Ho sto cod:
    codice:
    public int rimuovi(int num)
    		{
    			object tmp;
    			object numero = num as object;
    			bool trova = false;
    			for(int i=0;i<this.nome.Count;i++)
    			{
    				if(nome[i] == numero)
    				{
    					trova = true;
    					tmp = int.Parse(tmp);
    					return tmp;
    				}
    				else
    				{
    					trova = false;
                        System.Console.WriteLine("Cognome non Presente\n\t\tRiprovare...................");
    				}
    			}
    
    			this.cognome[tmp] = null;
    			this.nome[tmp] = null;
    			return 0;
    		}
    Che dovrebbe rimuovermi, in base al numero che io gli do come argomento, 2 oggetti denominati nome e cognome di tipo System.Collection.ArrayList.
    Slo che mi da:
    c:\documents and settings\admin\documenti\visual studio projects\agenda appuntamenti\agenda.cs(49,12): error CS1502: The best overloaded method match for 'int.Parse(string)' has some invalid arguments
    c:\documents and settings\admin\documenti\visual studio projects\agenda appuntamenti\agenda.cs(49,22): error CS1503: Argument '1': cannot convert from 'object' to 'string'
    c:\documents and settings\admin\documenti\visual studio projects\agenda appuntamenti\agenda.cs(50,13): error CS0029: Cannot implicitly convert type 'object' to 'int'
    c:\documents and settings\admin\documenti\visual studio projects\agenda appuntamenti\agenda.cs(59,4): error CS1502: The best overloaded method match for 'System.Collections.ArrayList.this[int]' has some invalid arguments
    c:\documents and settings\admin\documenti\visual studio projects\agenda appuntamenti\agenda.cs(59,17): error CS1503: Argument '1': cannot convert from 'object' to 'int'
    c:\documents and settings\admin\documenti\visual studio projects\agenda appuntamenti\agenda.cs(60,4): error CS1502: The best overloaded method match for 'System.Collections.ArrayList.this[int]' has some invalid arguments
    c:\documents and settings\admin\documenti\visual studio projects\agenda appuntamenti\agenda.cs(60,14): error CS1503: Argument '1': cannot convert from 'object' to 'int'

    Why?
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  2. #2
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    se noti ti da problemi di casting...

    prova ad usare identificatori di tipo uguale a quello della funzione chiamata (il Parse vuole un argomento stringa, mentre tu gli passi un oggetto Object)

    o usi una variabile stringa oppure fai una CType dell'Object nel tipo che vuole la funzione

    lo stesso vale per i tipi int

  3. #3

    errata corrige

    ora mi da:
    c:\documents and settings\admin\documenti\visual studio projects\agenda appuntamenti\agenda.cs(46,8): error CS0019: Operator '==' cannot be applied to operands of type 'object' and 'int'
    c:\documents and settings\admin\documenti\visual studio projects\agenda appuntamenti\agenda.cs(50,13): error CS0029: Cannot implicitly convert type 'int' to 'string'
    con:
    codice:
    		public string rimuovi(string num)
    		{
    			int tmp;
    			int numero = int.Parse(num);
    			bool trova = false;
    			for(int i=0;i<this.nome.Count;i++)
    			{
    				if(nome[i] == numero)
    				{
    					trova = true;
    					tmp = numero;
    					return tmp;
    				}
    				else
    				{
    					trova = false;
                        System.Console.WriteLine("Cognome non Presente\n\t\tRiprovare...................");
    				}
    			}
    			int trov = (int)tmp;
    			this.cognome[trov] = null;
    			this.nome[trov] = null;
    			return "";
    		}
    Ma sto prog come logica regge?
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  4. #4
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212

    Re: errata corrige

    il problema è sempre lo stesso: i tipi di dati

    come logica? ma tu che vuoi fare? Non riesco a capire chiaramente essendo C#

  5. #5

    Re: Re: errata corrige

    Originariamente inviato da darkblOOd
    il problema è sempre lo stesso: i tipi di dati

    come logica? ma tu che vuoi fare? Non riesco a capire chiaramente essendo C#
    devo ciclare in tutta la grandezza dell'array con il for e se il numero (argom della funz) è un array allora cancello nome e cognome legati ad esso seno do errore
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    173
    Per la conversione da string a int prova a fare:


    codice:
    int numero = Convert.ToInt32(num);
    In questo modo il parametro passato al metodo dovrebbe andare!

    Il problema dell' == dovrebbe essere legato a questo!!!

    Fa sapere se è giusto ciò che ho detto!!!

    GRAZIE
    CIAO

  7. #7
    Ho provato come dici ma ora........
    Operator '==' cannot be applied to operands of type 'object' and 'int'
    Cannot implicitly convert type 'int' to 'string'
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  8. #8
    al momento per gli errori ho corretto.................mo vediamo se fa quello che devo fare:
    codice:
    public string rimuovi(string num)
    		{
    			int numero = Convert.ToInt32(num);
    			for(int i=0;i<this.nome.Count;i++)
    			{
    				if(id[i].Equals(numero))
    				{
    					tmp = numero.ToString();
    					return tmp;
    				}
    				else
    				{
                        System.Console.WriteLine("Cognome non Presente\n\t\tRiprovare..");
    				}
    			}
    			int trov = Convert.ToInt32(tmp);
    			this.id[trov] = null;
    			this.cognome[trov] = null;
    			this.nome[trov] = null;
    			return "";
    		}
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    173
    Complimenti!!!

    SPERO CHE ORA FACCIA APPUNTO QUELLO CHE DEVE!!!!

    CIAO

  10. #10
    E' scandaloso come questo C# sia una fotocopia di Java. Copia anche i nomi delle classi!! Ma vi rendete conto? Fossi della Sun denuncerei la Microsoft!

    CHE SCHIFO!

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.