Class StringContainer


  • public class StringContainer
    extends java.lang.Object
    this class is used to concatenate Strings effectively.It contains a StringBuilder and initialize it until toString is called. Note:it's not thread safety
    • Constructor Summary

      Constructors 
      Constructor Description
      StringContainer()
      defines the constructor function for the class.
      StringContainer​(java.lang.String joinSeparator)
      defines the constructor function for the class.
      StringContainer​(java.lang.String[] strings)  
      StringContainer​(java.lang.String[] strings, java.lang.String joinSeparator)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      StringContainer addHead​(java.lang.String... strings)
      add a Strings array from this container's header.
      strings:"a","b","c",
      StringContainer this:["d","e","f"],
      result:this:["a","b","c","d","e","f"],
      StringContainer addHead​(StringContainer myContainer)
      add a StringContainer from this container's header.
      StringContainer m:["a","b","c"],
      StringContainer this:["d","e","f"],
      result:this:["a","b","c","d","e","f"],
      StringContainer addTail​(java.lang.Object... objs)
      add a objects array at this container's tail.
      StringContainer addTail​(java.lang.String... strings)
      add a Strings array at this container's tail.
      strings:"a","b","c",
      StringContainer this:["d","e","f"],
      result:this:["d","e","f","a","b","c"],
      StringContainer addTail​(StringContainer myContainer)
      add a StringContainer at this container's tail.
      param StringContainer:["a","b","c"],
      this StringContainer :["d","e","f"],
      result:this:["d","e","f","a","b","c"],
      StringContainer clone()  
      boolean equals​(java.lang.Object sc)  
      boolean equals​(StringContainer sc)
      judge whether the param is equal to this container.
      java.util.List<java.lang.String> getReverseList()  
      java.util.List<java.lang.String> getSequenceList()  
      java.lang.String getSubString​(int index)
      return a sub-string in this container.
      e.g.
      StringContainer getSubStringContainer​(int start, int end)
      /** return a sub-container consist of several continuous strings in this container.If start <= end, return a empty container e.g.
      int hashCode()  
      java.lang.String join​(java.lang.String separator)
      for all string in rev and seq, concat them with separator and return String.
      int length()  
      int size()  
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        finalize, getClass, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • StringContainer

        public StringContainer()
        defines the constructor function for the class.
      • StringContainer

        public StringContainer​(java.lang.String joinSeparator)
        defines the constructor function for the class.
      • StringContainer

        public StringContainer​(java.lang.String[] strings)
      • StringContainer

        public StringContainer​(java.lang.String[] strings,
                               java.lang.String joinSeparator)
    • Method Detail

      • size

        public int size()
      • length

        public int length()
      • getSequenceList

        public java.util.List<java.lang.String> getSequenceList()
      • getReverseList

        public java.util.List<java.lang.String> getReverseList()
      • addTail

        public StringContainer addTail​(java.lang.Object... objs)
        add a objects array at this container's tail.
        Parameters:
        objs - -to be added
        Returns:
        another string contains objs as tail
      • addTail

        public StringContainer addTail​(java.lang.String... strings)
        add a Strings array at this container's tail.
        strings:"a","b","c",
        StringContainer this:["d","e","f"],
        result:this:["d","e","f","a","b","c"],
        Parameters:
        strings - - to be added
        Returns:
        - this object
      • addTail

        public StringContainer addTail​(StringContainer myContainer)
        add a StringContainer at this container's tail.
        param StringContainer:["a","b","c"],
        this StringContainer :["d","e","f"],
        result:this:["d","e","f","a","b","c"],
        Parameters:
        myContainer - - to be added
        Returns:
        - this object
      • addHead

        public StringContainer addHead​(java.lang.String... strings)
        add a Strings array from this container's header.
        strings:"a","b","c",
        StringContainer this:["d","e","f"],
        result:this:["a","b","c","d","e","f"],
        Parameters:
        strings - - to be added
        Returns:
        - this object
      • addHead

        public StringContainer addHead​(StringContainer myContainer)
        add a StringContainer from this container's header.
        StringContainer m:["a","b","c"],
        StringContainer this:["d","e","f"],
        result:this:["a","b","c","d","e","f"],
        Parameters:
        myContainer - - given StringContainer to be add in head
        Returns:
        - this object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • join

        public java.lang.String join​(java.lang.String separator)
        for all string in rev and seq, concat them with separator and return String.
        Parameters:
        separator - separator of string
        Returns:
        - result joined in type of String with parameter
      • getSubString

        public java.lang.String getSubString​(int index)
        return a sub-string in this container.
        e.g. this container is ["aa","bbb","cc","d","ee"]; this.getSubString(0) = "a"; this.getSubString(2) ="c";this.getSubString(-1) = "ee";
        Parameters:
        index - - the index of wanted sub-string
        Returns:
        - substring result
      • getSubStringContainer

        public StringContainer getSubStringContainer​(int start,
                                                     int end)
        /** return a sub-container consist of several continuous strings in this container.If start <= end, return a empty container e.g. this container is ["aa","bbb","cc","d","ee"]; this.getSubString(0,0) = ["aa"]
        this.getSubString(1,3) = ["bbb","cc","d"]
        this.getSubString(1,-1) = ["bbb","cc","d", "ee"]
        Parameters:
        start - - the start index of wanted sub-string
        end - - the end index of wanted sub-string
        Returns:
        - substring result
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object sc)
        Overrides:
        equals in class java.lang.Object
      • equals

        public boolean equals​(StringContainer sc)
        judge whether the param is equal to this container.
        Parameters:
        sc - -StringContainer Object to judge whether the object is equal to this container
        Returns:
        boolean value to judge whether is equal
      • clone

        public StringContainer clone()
        Overrides:
        clone in class java.lang.Object