Strings Etc Part I Strings Jan 14 2019 About Strings There is a special syntax for constructing strings Hello Strings unlike most other objects have a defined operation as opposed to a method This is String concatenation 2 Useful String methods I char charAt int index boolean startsWith String prefix Returns the character at the given index position 0 based Tests if this String starts with the prefix String boolean endsWith String suffix Tests if this String ends with the suffix String 3 Useful String methods II boolean equals Object obj boolean equalsIgnoreCase String other Tests if this String is the same as the obj which may be any type false if it s not a String Tests if this String is equal to the other String where case does not matter int length Returns the length of this string note that this is a method not an instance variable 4 Useful String methods III int indexOf char ch int indexOf char ch int fromIndex Returns the position of the first occurrence of ch in this String or 1 if it does not occur Returns the position of the first occurrence of ch starting at not after the position fromIndex There are two similar methods that take a String instead of a char as their first argument 5 Useful String methods IV int lastIndexOf char ch int lastIndexOf char ch int fromIndex Returns the position of the last occurrence of ch in this String or 1 if it does not occur Returns the position of the last occurrence of ch searching backward starting at position fromIndex There are two similar methods that take a String instead of a char as their first argument 6 Useful String methods V String substring int beginIndex Returns a new string that is a substring of this string beginning with the character at the specified index and extending to the end of this string String substring int beginIndex int endIndex Returns a new string that is a substring of this string beginning at the specified beginIndex and extending to the character at index endIndex 1 Thus the length of the substring is endIndex beginIndex 7 Understanding index With charAt index indexOf x and lastIndexOf x just count characters starting from zero She said Hi 0 1 2 3 4 5 6 7 8 9 10 11 12 13 With substring from and substring from to it works better to count positions between characters She said Hi 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 So for example substring 4 8 is said and substring 8 12 is H If indexOf is 8 then substring 0 indexOf is She said and substring indexOf 1 is Hi 8 Useful String methods VI String toUpperCase String toLowerCase Returns a new String similar to this String in which all letters are uppercase Returns a new String similar to this String in which all letters are lowercase String trim Returns a new String similar to this String but with whitespace removed from both ends 9 Finally a useless String method String toString Returns this String Why do we have this method Consistency Every Object has a toString method 10 Strings are immutable A String once created cannot be changed None of the preceding methods modify the String although several create a new String Statements like this create new Strings myString myString anotherCharacter Creating a few extra Strings in a program is no big deal Creating a lot of Strings can be very costly 11 Strings Etc Part II StringBuffers Jan 14 2019 About StringBuffers A StringBuffer has a capacity the number of characters it can hold and a length the number of characters it is currently holding If the capacity is exceeded the StringBuffer is copied to a new location with more room StringBuffers are used to implement String concatenation Whenever you say String s ab cd Java creates a StringBuffer containing the characters a and b appends the characters c and d to it and converts the result back to a String As you might guess this isn t terribly efficient but it s fine if you don t overdo it 13 StringBuffer constructors StringBuffer StringBuffer int capacity Constructs a StringBuffer with a capacity of 16 characters Constructs a StringBuffer with the requested capacity StringBuffer String str Constructs a StringBuffer containing the String str 14 Useful StringBuffer methods I StringBuffer append X Appends X to the end of this StringBuffer also as a convenience returns this StringBuffer The append method is so heavily overloaded that it will work with any argument if the argument is an object its toString method is used 15 Useful StringBuffer methods II int length Returns the number of characters in this StringBuffer void setLength int newLength Sets the number of characters in this StringBuffer this may result in truncation of characters at the end or addition of null characters 16 Useful StringBuffer methods III char charAt int index void setCharAt int index char ch Returns the character at the location index Sets the character at location index to ch StringBuffer reverse The sequence of characters in this StringBuffer is replaced by the reverse of this sequence and also returned as the value of the method 17 Useful StringBuffer methods IV StringBuffer insert int offset X StringBuffer deleteCharAt int index Insert X starting at the location offset in this StringBuffer and also return this StringBuffer as the value of the method Like append this method is heavily overloaded Deletes the character at location index StringBuffer delete int start int end Deletes chars at locations start through end 1 18 Useful StringBuffer methods V String substring int start String substring int start int end Returns a new String of characters from this StringBuffer beginning with the character at the specified index and extending to the end of this string Returns a new String of characters from this StringBuffer beginning at location start and extending to the character at index end 1 Thus the length of the substring is end begin String toString Returns the characters of this StringBuffer as a String 19 When to use StringBuffers If you make a lot thousands of changes or additions to a String it is much more efficient to use a StringBuffer If you are simply examining the contents of a String then a String is at least as efficient as a StringBuffer For incidental use such as creating output lines use Strings they are more convenient 20 Strings Etc Part III java util StringTokenizers Jan 14 2019 About StringTokenizers A StringTokenizer is used to break a string into tokens such as words A StringTokenizer uses delimiters to separate tokens A StringTokenizer can be made that will return the
View Full Document
Unlocking...