Consider the following definition of class Person: 1 public class Person 2 { 3 public final String name; 4 5 public Person(String name) 6 { 7 if (name == null) this.name = ""; //No null names... 8 else this.name = name; 9 } 10 } and the definition of class PersonListUtils implemented by a student... 1 public class PersonListUtils 2 { 3 //Replaces the first occurrence of a Person in the list with the given oldPersonName with a new Person having the newPersonName. 4 //Returns true if the substitution is successful, false otherwise 5 public static boolean substitute(ArrayList list, String oldPersonName, String newPersonName) 6 { 7 for (Person person: list) { 8 if (person.name == oldPersonName) { 9 person = new Person(newPersonName); 10 return true; 11 } 12 } 13 return false; 14 } 15 16 //Removes from the list the first occurrence of a Person with the given nameToRemove. 17 //Returns true if the deletion is successful, false otherwise 18 public static boolean remove(ArrayList list, String nameToRemove) 19 { 20 for (Person element: list) { 21 if (element.name == nameToRemove) { 22 return list.remove(element); 23 } 24 } 25 return false; 26 } 27 } Identify, characterize (i.e, determine if it is functional, compile-time, or run-time) and explain any errors you find in the definition of the class PersonListUtils (ignore the static keyword).

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Consider the following definition of class Person:

1 public class Person

2 {

3 public final String name;

4

5 public Person(String name)

6 {

7 if (name == null) this.name = "<NoName>"; //No null names...

8 else this.name = name;

9 }

10 }

and the definition of class PersonListUtils implemented by a student...

1 public class PersonListUtils

2 {

3 //Replaces the first occurrence of a Person in the list with the given

oldPersonName with a new Person having the newPersonName.

4 //Returns true if the substitution is successful, false otherwise

5 public static boolean substitute(ArrayList<Person> list, String

oldPersonName, String newPersonName)

6 {

7 for (Person person: list) {

8 if (person.name == oldPersonName) {

9 person = new Person(newPersonName);

10 return true;

11 }

12 }

13 return false;

14 }

15

16 //Removes from the list the first occurrence of a Person with the given

nameToRemove.

17 //Returns true if the deletion is successful, false otherwise

18 public static boolean remove(ArrayList<Person> list, String nameToRemove)

19 {

20 for (Person element: list) {

21 if (element.name == nameToRemove) {

22 return list.remove(element);

23 }

24 }

25 return false;

26 }

27 }

Identify, characterize (i.e, determine if it is functional, compile-time, or run-time) and explain any errors you find

in the definition of the class PersonListUtils (ignore the static keyword).

 

Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Reference Types in Function
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education