Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What does the Add method do in a List?
The Add method adds a new item to the end of the List. Think of it like putting a new book at the end of a shelf.
Click to reveal answer
beginner
How does the Remove method work in a List?
The Remove method deletes the first occurrence of a specific item from the List. Imagine taking out the first matching book from your shelf.
Click to reveal answer
intermediate
What is the purpose of the Find method in a List?
The Find method searches the List and returns the first item that matches a condition you give. It's like looking for the first red apple in a basket.
Click to reveal answer
beginner
What does the Sort method do in a List?
The Sort method arranges the items in the List in order, usually from smallest to largest or alphabetically. Like organizing books by title on a shelf.
Click to reveal answer
intermediate
How can you use a lambda expression with Find in a List?
You can pass a lambda expression to Find to specify the condition for searching. For example, list.Find(x => x > 10) finds the first number greater than 10.
Click to reveal answer
What happens when you call Remove on a List with an item not present?
AThe List is cleared
BNothing happens, List stays the same
CAll items are removed
DAn error is thrown
✗ Incorrect
If the item is not found, Remove does nothing and the List remains unchanged.
Which method adds an item to the end of a List?
AFind
BSort
CAdd
DRemove
✗ Incorrect
Add appends a new item to the end of the List.
What does Sort do to a List?
AArranges items in order
BDeletes all items
CFinds an item
DAdds a new item
✗ Incorrect
Sort arranges the List items in ascending order.
How does Find decide which item to return?
AReturns the last item
BReturns all items
CReturns a random item
DReturns the first item matching a condition
✗ Incorrect
Find returns the first item that matches the condition you provide.
Which of these is a correct way to use Find with a lambda?
Alist.Find(x => x == 5)
Blist.Find(5)
Clist.Find()
Dlist.Find(x)
✗ Incorrect
You must provide a condition as a lambda expression, like x => x == 5.
Explain how you would add, remove, find, and sort items in a List in C#.
Think about how you manage a collection of things on a shelf.
You got /4 concepts.
Describe a real-life example that helps you remember what the List methods Add, Remove, Find, and Sort do.
Imagine managing books or fruits.
You got /4 concepts.
Practice
(1/5)
1. Which List method in C# is used to add a new item to the end of the list?
easy
A. Sort
B. Remove
C. Find
D. Add
Solution
Step 1: Understand the purpose of Add
The Add method appends a new element to the end of a list.
Step 2: Compare with other methods
Remove deletes items, Find searches, and Sort arranges items, so they don't add new items.
Final Answer:
Add -> Option D
Quick Check:
Add method adds items [OK]
Hint: Add puts new items at the list's end [OK]
Common Mistakes:
Confusing Remove with Add
Thinking Find adds items
Assuming Sort adds items
2. Which of the following is the correct syntax to remove the first occurrence of "apple" from a List<string> named fruits?
easy
A. fruits.RemoveAt("apple");
B. fruits.Delete("apple");
C. fruits.Remove("apple");
D. fruits.RemoveItem("apple");
Solution
Step 1: Identify the correct method name
The method to remove an item by value is Remove, so fruits.Remove("apple") is correct.
Step 2: Check method parameters and usage
RemoveAt requires an index, not a string. Delete and RemoveItem are not valid List methods.
Final Answer:
fruits.Remove("apple"); -> Option C
Quick Check:
Remove("apple") removes first matching item [OK]
Hint: Use Remove with the item value to delete it [OK]
Common Mistakes:
Using RemoveAt with a string argument
Using non-existent methods like Delete or RemoveItem
Confusing Remove with Add
3. What will be the output of the following C# code?
var numbers = new List<int> {5, 3, 8, 1};
numbers.Sort();
Console.WriteLine(string.Join(",", numbers));
medium
A. 5,3,8,1
B. 1,3,5,8
C. 8,5,3,1
D. 3,5,1,8
Solution
Step 1: Understand what Sort does
Sort arranges the list items in ascending order.
Step 2: Apply Sort to the list
The list {5, 3, 8, 1} sorted ascending becomes {1, 3, 5, 8}.
Final Answer:
1,3,5,8 -> Option B
Quick Check:
Sort orders numbers ascending [OK]
Hint: Sort arranges numbers from smallest to largest [OK]
Common Mistakes:
Assuming Sort reverses the list
Confusing Sort with Find
Expecting original order after Sort
4. Identify the error in this code snippet:
var fruits = new List<string> {"apple", "banana", "cherry"};
fruits.RemoveAt("banana");
medium
A. RemoveAt expects an index, not a string
B. RemoveAt cannot be used on List<string>
C. RemoveAt removes all matching items
D. RemoveAt adds an item instead of removing
Solution
Step 1: Check RemoveAt parameter type
RemoveAt requires an integer index, but "banana" is a string.
Step 2: Understand method behavior
Using a string causes a compile-time error because the argument type is wrong.
Final Answer:
RemoveAt expects an index, not a string -> Option A
Quick Check:
RemoveAt needs index integer [OK]
Hint: RemoveAt uses index number, not item value [OK]
Common Mistakes:
Passing item value instead of index to RemoveAt
Thinking RemoveAt removes all matches
Confusing RemoveAt with Remove
5. Given a List<int> numbers = new List<int> {4, 7, 2, 9, 3}; which code snippet correctly finds the first number greater than 5 and removes it from the list?
hard
A. var num = numbers.Find(n => n > 5);
numbers.Remove(num);
B. numbers.RemoveAt(numbers.Find(n => n > 5));
C. numbers.Remove(numbers.FindIndex(n => n > 5));
D. numbers.Remove(numbers.Find(n => n < 5));
Solution
Step 1: Use Find to get first number > 5
Find returns the first element matching the condition n > 5, which is 7.
Step 2: Remove that number from the list
Remove(num) deletes the first occurrence of 7 from the list.
Final Answer:
var num = numbers.Find(n => n > 5); numbers.Remove(num); -> Option A
Quick Check:
Find returns item, Remove deletes it [OK]
Hint: Find returns item; Remove deletes that item [OK]
Common Mistakes:
Passing Find result directly to RemoveAt (wrong type)
Using FindIndex result with Remove (expects item, not index)
Searching for wrong condition (n < 5 instead of n > 5)