?
Solved

VB.NET 1.1 - efficient way to search in an array List of objects

Posted on 2009-05-13
1
Medium Priority
?
1,264 Views
Last Modified: 2013-11-07
--------------------------------------------------------------------------------------------------------------------------------
Vb.net 1.1 -Searching an object item inside an array list of objects
--------------------------------------------------------------------------------------------------------------------------------
Is there an efficient and fast way to search an object item inside an array list of objects in .net 1.1? In details&..
I have a class like (See Code Below) -
Public Class MyClass1
    Private MyID As String = ""
    Private MyName As String = ""
    Private MyAddress As String = ""
 
    Public Property ID() As String
        Get
            Return MyID
        End Get
        Set(ByVal Value As String)
            MyID = Value
        End Set
    End Property
 
    Public Property Name() As String
        Get
            Return MyName
        End Get
        Set(ByVal Value As String)
            MyName = Value
        End Set
    End Property
 
    Public Property Address() As String
        Get
            Return MyAddress
        End Get
        Set(ByVal Value As String)
            MyAddress = Value
        End Set
    End Property
End Class
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
And I want to search by Name say 'MyFirstName' from an array list of objects of type MYClass1 as -
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Dim arrlMyClass1 As ArrayList		'a large array list of objects of type MyClass1
 Dim objMyObject As New MyClass1
 Dim MyID As String = ""
 
 For Each objMyObject In arrlMyClass1
     If Trim(LCase("MyFirstName")) = Trim(LCase(objMyObject.Name)) Then
        MyID = objMyObject.ID
        Exit For
     End If
 Next
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
I am looking for an efficient search method to replace the above to search an object by item Name - say 'MyFirstname'. The For each loop is taking a lot of time if the array list is large.

Open in new window

0
Comment
Question by:Gurunathans
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
1 Comment
 
LVL 10

Accepted Solution

by:
MaxOvrdrv2 earned 2000 total points
ID: 24376139
because you declared it as a class, there is no efficient way of doing that...

however, you could always define a function in your class that does it for you.. something like this:
Public Class MyClass1
Public Function Find(ByVal Lst AS ArrayList, ByVal FN AS String) As String
Dim Itm AS ListItem
Dim retval as String
For Each Itm In arrlMyClass1
If Trim(LCase(FN)) = Trim(LCase(Itm.Name)) Then
  retval="Person Found!"
End If
Next
if retval="" then
  return "Not Found!"
else
  return retval
end if
End function

Open in new window

0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

User art_snob (http://www.experts-exchange.com/M_6114203.html) encountered strange behavior of Android Web browser on his Mobile Web site. It took a while to find the true cause. It happens so, that the Android Web browser (at least up to OS ver. 2.…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
Michael from AdRem Software outlines event notifications and Automatic Corrective Actions in network monitoring. Automatic Corrective Actions are scripts, which can automatically run upon discovery of a certain undesirable condition in your network.…
This tutorial will teach you the special effect of super speed similar to the fictional character Wally West aka "The Flash" After Shake : http://www.videocopilot.net/presets/after_shake/ All lightning effects with instructions : http://www.mediaf…
Suggested Courses

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question