public class CustomString { String myString; boolean isSet; public CustomString() { // TODO Implement constructor this.myString = null; this.isSet = false; } public String getString() { // TODO Implement method if (this.myString != null) { return this.myString; } return null; } public void setString(String string) { // TODO Implement method if (myString != null) { this.myString = string; this.isSet = true; } else { this.isSet = false; } } /** * 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. * * @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) { // TODO Implement method if (myString==null || myString == "") { return this.myString; } if (myString != null) { this.myString = myString.replaceAll(arg,""); System.out.println(myString); } return null; } /** * 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. * * 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. * * @param arg the string containing the alphabetical characters to have their capitalization reversed in the current string * @return new string in which the alphabetical characters specified in the arg are reversed */ public String reverse(String arg) { // TODO Implement method char[] charArray = myString.toCharArray(); for(int i=0; i < charArray.length; i++){ if( Character.isUpperCase(charArray[i]) ){ charArray[i] = Character.toLowerCase( charArray[i] ); }else if(Character.isLowerCase(charArray[i]) ){ charArray[i] = Character.toUpperCase( charArray[i] ); } } myString = new String(charArray); return null; } /** * Returns a new string version of the current string where all the letters either >= or <= the given char n, are removed. * * The given letter may be a-z or A-Z, inclusive. * The letters to be removed are case insensitive. * * If 'more' is false, all letters less than or equal to n will be removed in the returned string. * If 'more' is true, all letters greater than or equal to n will be removed in the returned string. * * If the current string is null, the method should return an empty string. * If n is not a letter (and the current string is not null), the method should return an empty string. * * @param n char to compare to * @param more indicates whether letters <= or >= n will be removed * @return new string with letters removed */ public String filterLetters(char n, boolean more) { String newStr = ""; for (int i = 0; i < this.myString.length(); i++) { if (myString.charAt(i) >= n && more) { newStr = newStr + myString.charAt(i); } else if (myString.charAt(i) <= n && !more) { newStr = newStr + myString.charAt(i); } if(!Character.isLetter(myString.charAt(i))) { newStr = newStr + myString.charAt(i); } } return newStr; } }

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

My code for this work is not working but I couldn't figure out. Please help! Thank you.

public class CustomString {

      String myString;

      boolean isSet;

      public CustomString() {
        // TODO Implement constructor
        this.myString = null;
        this.isSet = false;
     }

     public String getString() {
        // TODO Implement method
        if (this.myString != null) {
            return this.myString;
        }
        return null;
    }

    public void setString(String string) {
        // TODO Implement method
        if (myString != null) {
            this.myString = string;
            this.isSet = true;
        } else {
            this.isSet = false;
        }
    }

    
    /**
     * 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.
     *

     * @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) {
        // TODO Implement method
        
        if (myString==null || myString == "") {
            return this.myString;
        }
        if (myString != null) {
            this.myString = myString.replaceAll(arg,"");
            System.out.println(myString);
        }

         return null;

        }

       /**
     * 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.
     *   
     * 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.
     *

     

* @param arg the string containing the alphabetical characters to have their capitalization reversed in the current string
     * @return new string in which the alphabetical characters specified in the arg are reversed
     */
    public String reverse(String arg) {
        // TODO Implement method 

        char[] charArray = myString.toCharArray();
        
    
        for(int i=0; i < charArray.length; i++){
            
           
            if( Character.isUpperCase(charArray[i]) ){
                
                charArray[i] = Character.toLowerCase( charArray[i] );
                
            }else if(Character.isLowerCase(charArray[i]) ){
                
                charArray[i] = Character.toUpperCase( charArray[i] );
            }    
            
        }
        
       
        myString = new String(charArray);

       return null;

        }

        /**
     * Returns a new string version of the current string where all the letters either >= or <= the given char n, are removed.  
     * 
     * The given letter may be a-z or A-Z, inclusive.
     * The letters to be removed are case insensitive.
     *
     * If 'more' is false, all letters less than or equal to n will be removed in the returned string.
     * If 'more' is true, all letters greater than or equal to n will be removed in the returned string.
     *
     * If the current string is null, the method should return an empty string.
     * If n is not a letter (and the current string is not null), the method should return an empty string.
     *

     * @param n char to compare to
     * @param more indicates whether letters <= or >= n will be removed
     * @return new string with letters removed 
     */
    public String filterLetters(char n, boolean more) {

          

String newStr = "";
        for (int i = 0; i < this.myString.length(); i++) {
            if (myString.charAt(i) >= n && more) {
                newStr = newStr + myString.charAt(i);
            } else if (myString.charAt(i) <= n && !more) {
                newStr = newStr + myString.charAt(i);
            }

            if(!Character.isLetter(myString.charAt(i))) {
                newStr = newStr + myString.charAt(i);
            }
        }
        return newStr;
    }

}

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Unreferenced Objects
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