import static org.junit.jupiter.api.Assertions.assertEquals; import java.util.Set; import static java.util.stream.Collectors.toSet;   /**  * In this assignment, you will implement a simple class called CustomString.  This class represents a more customizable version  * of a String, with additional attributes and methods.    * For example, the CustomString class has a “reverse” method which returns a new string version of the current string where the  * capitalization is reversed (i.e., lowercase to uppercase and uppercase to lowercase) for the alphabetical characters specified  * in the given arg.  For CustomString “abc, XYZ; 123.”, calling reverse("bcdxyz@3210.") will return "aBC, xyz; 123.".    *  * The CustomString class also has a “remove” method which returns a new string version of the current string where the alphabetical  * characters specified in the given arg, are removed.  For CustomString "my lucky numbers are 6, 8, and 19.", calling remove("ra6")  * will return "my lucky numbes e 6, 8, nd 19.".  *  */ public class CustomString {         //instance variables     /**      * Current string.      */     private String myString = null;         /**      * Indicates if the current string myString has been set (not null).      */     //boolean isSet;         //constructor         /**      * Initializes current string myString to null.      * Initializes isSet to false.      */     public CustomString() {         //this.isSet = false;         this.myString = null;     }     // methods         /**      * Returns the current string.      * If the current string is null, or has not been set to a value with setString, it should return null.      * @return current string      */     public String getString() {         return this.myString;     }     /**      * Sets the value of the current string and sets this.isSet to true.      * If the given string is null, sets this.isSet to false.      * @param string value to be set      */         public void setString(String string) {           this.myString = string;     }             /**      * Returns a new string version of the current string where the alphabetical characters specified in the given arg, are removed.      *        * The alphabetical characters to be removed are case insensitive.        * All non-alphabetical characters are unaffected.      * If the current string is null, empty, or has not been set to a value, this method should return an empty string.      *      * Example(s):      * - For a current string "my lucky numbers are 6, 8, and 19.", calling remove("ra6") would return "my lucky numbes e 6, 8, nd 19."      * - For a current string "my lucky numbers are 6, 8, and 19.", calling remove("6,.") would return "my lucky numbers are 6, 8, and 19."      * - For a current string "my lucky numbers are 6, 8, and 19.", calling remove("") would return "my lucky numbers are 6, 8, and 19."      *      * Remember: This method builds and returns a new string, and does not directly modify the myString field.      *      * @param arg the string containing the alphabetical characters to be removed from the current string      * @return new string in which the alphabetical characters specified in the arg are removed      */         public String remove(String arg) {

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
import static org.junit.jupiter.api.Assertions.assertEquals;

import java.util.Set;

import static java.util.stream.Collectors.toSet;  

/**
 * In this assignment, you will implement a simple class called CustomString.  This class represents a more customizable version
 * of a String, with additional attributes and methods.  
 * For example, the CustomString class has a “reverse” method which returns a new string version of the current string where the
 * capitalization is reversed (i.e., lowercase to uppercase and uppercase to lowercase) for the alphabetical characters specified
 * in the given arg.  For CustomString “abc, XYZ; 123.”, calling reverse("bcdxyz@3210.") will return "aBC, xyz; 123.".  
 *
 * The CustomString class also has a “remove” method which returns a new string version of the current string where the alphabetical
 * characters specified in the given arg, are removed.  For CustomString "my lucky numbers are 6, 8, and 19.", calling remove("ra6")
 * will return "my lucky numbes e 6, 8, nd 19.".
 *
 */
public class CustomString {
   
    //instance variables

    /**
     * Current string.
     */
    private String myString = null;
   
    /**
     * Indicates if the current string myString has been set (not null).
     */
    //boolean isSet;
   
    //constructor
   
    /**
     * Initializes current string myString to null.
     * Initializes isSet to false.
     */
    public CustomString() {
        //this.isSet = false;
        this.myString = null;
    }

    // methods
   
    /**
     * Returns the current string.
     * If the current string is null, or has not been set to a value with setString, it should return null.
     * @return current string
     */

    public String getString() {
        return this.myString;
    }

    /**
     * Sets the value of the current string and sets this.isSet to true.
     * If the given string is null, sets this.isSet to false.
     * @param string value to be set
     */
   
    public void setString(String string) {
          this.myString = string;
    }

       

    /**
     * Returns a new string version of the current string where the alphabetical characters specified in the given arg, are removed.
     *  
     * The alphabetical characters to be removed are case insensitive.  
     * All non-alphabetical characters are unaffected.
     * If the current string is null, empty, or has not been set to a value, this method should return an empty string.
     *
     * Example(s):
     * - For a current string "my lucky numbers are 6, 8, and 19.", calling remove("ra6") would return "my lucky numbes e 6, 8, nd 19."
     * - For a current string "my lucky numbers are 6, 8, and 19.", calling remove("6,.") would return "my lucky numbers are 6, 8, and 19."
     * - For a current string "my lucky numbers are 6, 8, and 19.", calling remove("") would return "my lucky numbers are 6, 8, and 19."
     *
     * Remember: This method builds and returns a new string, and does not directly modify the myString field.
     *
     * @param arg the string containing the alphabetical characters to be removed from the current string
     * @return new string in which the alphabetical characters specified in the arg are removed
     */
   
    public String remove(String arg) {
 
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Knowledge Booster
Adjacency Matrix
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-engineering and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY