ArrayList in Java: Summer 2024 Lecture Highlights

lec 04 arraylist n.w
1 / 18
Embed
Share

"Explore the key concepts covered in summer 2024 CSE 122 lecture 4 on ArrayList, including properties, methods, and upcoming assessments like Quiz 0. Gain insights into dynamic data structures and array manipulation techniques."

  • Java
  • ArrayList
  • Summer 2024
  • Lecture
  • CSE

Uploaded on | 1 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. LEC 04: ArrayList CSE 122 Summer 2024 BEFORE WE START Talk to your neighbors: Best picnic/BBQ Food? LEC 04 ArrayList ArrayList ArrayList Instructor Ido Avnon TAs Abby Williams Chlo Mi Cartier Connor Sun Cynthia Pan Katharine Zhang Marcus Sanches Rohini Arangam Questions during Class? Raise hand or send here sli.do #cse122

  2. LEC 04: ArrayList CSE 122 Summer 2024 Lecture Outline Announcements ArrayList Recap ArrayList Examples

  3. LEC 04: ArrayList CSE 122 Summer 2024 Announcements Programming Assignment 0 due Friday, June 5th at 11:59 PM Plan to release C0 grades and feedback tomorrow! - One ESNU grade for Culminating Project Checkpoints - General grading turnaround is ~1 week Quiz 0 is next Tuesday, June 9th! - Check the Ed post for instructions and logistics (coming soon)

  4. LEC 04: ArrayList CSE 122 Summer 2024 Quiz 0 (Func. Decomp., File I/O, ArrayList) 50 minute in-person paper quiz Please Bring - Writing Implement - Identification (especially if this is your first time in section) - Notes Sheets (if you want) Resources - Lecture/Section Material - Friday ArrayList Example - Quiz Resources (coming Friday) - Cheat Sheets (provided on quiz)

  5. LEC 04: ArrayList CSE 122 Summer 2024 Lecture Outline Announcements ArrayList Recap ArrayList Examples

  6. LEC 04: ArrayList CSE 122 Summer 2024 ArrayList ArrayLists are very similar to arrays Can hold multiple pieces of data (elements) Zero-based indexing Elements must all have the same type - ArrayLists can only hold Objects, so might need to use wrapper types: Integer, Double, Boolean, Character, etc. ButArrayLists have dynamic length (so they can resize!) list.add(2, 15); 4 8 16 23 42 4 8 15 16 23 42 list.size(): 5 list.size(): 6

  7. LEC 04: ArrayList CSE 122 Summer 2024 ArrayList Methods Method Description Adds elementto the end of the ArrayList add(type element) Adds elementto the specified indexin the ArrayList add(int index, type element) Returns the number of elements in the ArrayList size() Returns true if elementis contained in the ArrayList, false otherwise contains(type element) Returns the element at indexin the ArrayList get(int index) Removes the element at index from the ArrayList and returns the removed element. remove(int index) Returns the index of elementin the ArrayList; returns -1 if the elementdoesn't exist in the ArrayList indexOf(type element) Sets the element at index to the given element and returns the old value set(int index, type element)

  8. LEC 04: ArrayList CSE 122 Summer 2024 ArrayList Methods Whenever referring to the ArrayList , we are referring to the ArrayList we're calling the method on! List<String> list = new ArrayList<String>(); list.add("hello"); list.add(0, "world"); list.indexOf("world"); // what is the output? String[] list = new String[2]; list[0] = "hello"; list[0] = "world"; list[1] = "hello"; //... indexOf?

  9. LEC 04: ArrayList CSE 122 Summer 2024 Lecture Outline Announcements ArrayList Recap ArrayList Examples

  10. LEC 04: ArrayList CSE 122 Summer 2024 moveRight Write a method called moveRight that accepts an ArrayList of integers list and an intn and moves the element at index n one space to the right in list. For example, if list contains [8, 4, 13, -7] and our method is called with moveRight(list, 2), after the method call list would contain [8, 4, -7, 13]. 8 4 13 -7 0 1 2 3 moveRight(list, 2) 8 4 -7 13 0 1 2 3

  11. LEC 04: ArrayList CSE 122 Summer 2024 Practice : Think sli.do #cse122 What ArrayList methods (and in what order) could we use to implement the moveRight method? A) list.remove(n); list.add(n); B) int element = list.remove(n); list.add(n, element); C) list.add(n); list.remove(n-1); D) int element = list.remove(n); list.add(n+1, element);

  12. LEC 04: ArrayList CSE 122 Summer 2024 Practice : Pair sli.do #cse122 What ArrayList methods (and in what order) could we use to implement the moveRight method? A) list.remove(n); list.add(n); B) int element = list.remove(n); list.add(n, element); C) list.add(n); list.remove(n-1); D) int element = list.remove(n); list.add(n+1, element);

  13. LEC 04: ArrayList CSE 122 Summer 2024 moveRight Write a method called moveRight that accepts an ArrayList of integers list and an intn and moves the element at index n one space to the right in list. For example, if list contains [8, 4, 13, -7] and our method is called with moveRight(list, 2), after the method call list would contain [8, 4, -7, 13]. 8 4 13 -7 0 1 2 3 moveRight(list, 2) 8 4 -7 13 13 0 1 2 3

  14. LEC 04: ArrayList CSE 122 Summer 2024 Edge Cases! (And Testing) When writing a method, especially one that takes input of some kind (e.g., parameters, user input, a Scanner with input) it's good to think carefully about what assumptions you can make (or cannot make) about this input. Edge case: A scenario that is uncommon but possible, especially at the edge of a parameter's valid range. What happens if the user passes a negative number to moveRight? What happens if the user passes a number larger than the length of the list to moveRight? More testing tips on the course website's Resources page!

  15. LEC 04: ArrayList CSE 122 Summer 2024 addAll Write a method called addAll that accepts two ArrayLists of Characters, list1 and list2 , and an integer location as parameters and copies all of the elements from list2 into list1 at the specified location. Before: list1 : ['i', 'a', 'm'] list2 : ['m', 's'] addAll(list1, list2, 1) After: list1 : ['i','m', 's', 'a', 'm'] list2 : ['m', 's']

  16. LEC 04: ArrayList CSE 122 Summer 2024 compareToList Write a method called compareToList that accepts two ArrayLists of integers list1 and list2 as parameters and compares the elements of the two lists, printing out the locations of common elements in each of the ArrayLists. For example, if list1 contained [5, 6, 7, 8] and list2 contained [7, 5, 9, 0, 2], a call to compareToList(list1, list2) would produce output such as: - 5 (list1 at 0, list2 at 1) - 7 (list1 at 2, list2 at 0)

  17. LEC 04: ArrayList CSE 122 Summer 2024 Practice : Think sli.do #cse122 Spend 2 min discussing about how you would implement this method with a neighbor! Submit a short pseudocode of your answer Write a method called compareToList that accepts two ArrayLists of integers list1 and list2 as parameters and compares the elements of the two lists, printing out the locations of common elements in each of the ArrayLists. For example, if list1 contained [5, 6, 7, 8] and list2 contained [7, 5, 9, 0, 2], a call to compareToList(list1, list2) would produce output such as: - 5 (list1 at 0, list2 at 1) - 7 (list1 at 2, list2 at 0)

  18. LEC 04: ArrayList CSE 122 Summer 2024 Practice : Pair sli.do #cse122 Spend 2 min discussing about how you would implement this method with a neighbor! Submit a short pseudocode of your answer Write a method called compareToList that accepts two ArrayLists of integers list1 and list2 as parameters and compares the elements of the two lists, printing out the locations of common elements in each of the ArrayLists. For example, if list1 contained [5, 6, 7, 8] and list2 contained [7, 5, 9, 0, 2], a call to compareToList(list1, list2) would produce output such as: - 5 (list1 at 0, list2 at 1) - 7 (list1 at 2, list2 at 0)

Related


More Related Content