Bir kişi yönetimi uygulaması uygulamak
Bir ArrayList kullanarak kullanıcı kişilerini tutan bir kişi yönetimi uygulaması geliştiriyorsun. Arama fonksiyonunu uygulaman ve ardından performansını analiz ederek kişi sayısı arttıkça iyi ölçeklenip ölçeklenmeyeceğini belirlemen gerekiyor.
Bu egzersiz, kursun bir parçasıdır
Java'da Kod Optimizasyonu
Egzersiz talimatları
numberOfContactsdeğerini1000olarak ayarla.contactslistesinde her bircontactüzerinde gezinmek için for-each döngüsü kullan.findContactmetodu aranan kişiyi bulduğunda, o kişiyi döndür.- Kodu olduğu gibi çalıştır ("Kodu Çalıştır" düğmesini kullanarak), sonra
numberOfContactsdeğerini10000yap ve tekrar çalıştır; çalışma süresindeki değişimi gözlemle. Ardından yanıtını gönder.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
public class Main {
public static void main(String[] args) {
ContactManager manager = new ContactManager();
// Edit numberOfContacts to see how it affects execution time
int numberOfContacts = ____;
for (int i = 0; i < numberOfContacts; i++) {
manager.addContact(new Contact("Contact_" + i));
}
Contact result = manager.findContact("Contact_" + (numberOfContacts - 1));
System.out.println("Found: " + result.getName());
}
}
public class ContactManager {
private ArrayList contacts;
public ContactManager() {
contacts = new ArrayList<>();
}
public void addContact(Contact contact) {
contacts.add(contact);
}
public Contact findContact(String name) {
// Complete loop to search through contacts
for (Contact ____ : ____) {
if (contact.getName().equals(name)) {
// Return the match
return ____;
}
}
return null;
}
}