Foros del Web » Programación para mayores de 30 ;) » .NET »

Problema con equals .net

Estas en el tema de Problema con equals .net en el foro de .NET en Foros del Web. Estoy haciendo una aplicación separada en la clase modelo donde tengo la clase principal, una clase especial para los controles ( metodos que usan la ...
  #1 (permalink)  
Antiguo 10/06/2007, 06:25
 
Fecha de Ingreso: noviembre-2006
Ubicación: Barcelona, España
Mensajes: 30
Antigüedad: 17 años, 5 meses
Puntos: 0
Problema con equals .net

Estoy haciendo una aplicación separada en la clase modelo donde tengo la clase principal, una clase especial para los controles ( metodos que usan la clase principal ) y una modulo programa que contiene el main y es donde pongo a prueva los metodos de la clase controles etc...

Estoy probado de añadir campos del tipo de la clase modelo en un array pero, debo utilizar el metodo equals para que no me entre repetidos, pero no me funciona correctamente. Os dejo el codigo a ver si se os ocurre algo:

'con el metodo iniciar lo que hago es crear los objetos receta del array recetarios.


Const max As Integer = 100
Dim Recetario(0 To max) As Recepta
Dim i As Integer


Sub iniciar()
For i = 0 To max - 1
Recetario(i) = New Recepta("", "", "", "", 0)

Next
End Sub


Public Sub AfegirRecepta(ByVal nova As Recepta)
iniciar()
'mientras no sea igual a alguna que este ahi dentro
Dim j As Integer
Dim i As Integer
' i recorre el array y j las posiciones que se le van sumando al array de recetarios.

i = 0
j = 0
'creamos una variable booleana para saber si ese objeto esta mi recetario
Dim encontrado As Boolean
encontrado = False
While encontrado= False And i < max - 1
If Recetario(i).Equals(nova) Then
encontrado = True
Console.WriteLine("La receta ya existe")
End If
i = i + 1
End While
If encontrado = False Then
Recetario(j) = nova
j = j + 1
End If
End Sub
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:17.