1 / 17

Strings

Learn about strings in Java, including their basics, manipulation methods, and immutability. Understand how to concatenate strings, access individual elements, compare strings, and use the StringBuffer class for manipulation.

phoward
Download Presentation

Strings

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. System.out.println("Hello, how are you?"); Strings • A string is a sequence of characters that is treated as a single value. Strings are objects. • We have been using strings all along. For example, to display text • Every time you use a “” string, a string object is created automatically. • String is a class in the java.lang package.

  2. String name1; name1 = new String("Frooot"); String name1; name1 = "Frooot"; These two statements are equivalent. Explicit String Objects • A declaration and object creation are needed for instances of the String class. For example, We normally use shorthand notation (only for Strings):

  3. Explicit String Objects Blitititi … out to reality … StringVar.java Blitititi … out to reality … StringVar2.java Blitititi … out to reality … StringVar2.java

  4. A String word1, word2; word1 = new String("Java"); word2 = word1; After is executed A String variables are References - 1 Code Both word1 and word2 are allocated memory (to store references), but the objects themselves are not yet created, so they both contain null. L word1 word2 L State of Memory

  5. B String word1, word2; word1 = new String("Java"); word2 = word1; After is executed B word1 word2 String Java String variables are References - 2 Code One String object is created and assigned to word1, so word1 contains the address of this object. word1 L word2 State of Memory

  6. C String word1, word2; word1 = new String("Java"); word2 = word1; After is executed C word1 word1 word2 word2 String String Java Java String variables are References - 3 Code Content of word1, which is an address, is assigned to word2, making word2 refer to the same object. State of Memory Gadzook … out to reality … StringAlias.java

  7. Concatenating Strings • The + operator can also concatenate strings. • A new string object is created - the operands are not affected • Gadzook … out to reality … StringCat.java

  8. Command line Strings • The formal arguments to the main method receive strings from the command line arguments. • When running a program, supply command line arguments after the program name, e.g., java MyJavaProgram cat 27 'Java is great!' has three command line arguments. • Gadzook … out to reality … StringCat.java

  9. 0 1 2 3 4 5 6 S u m a t r a String name = “Sumatra”; name.charAt( 3 ) name The method returns the character at position # 3. This variable refers to the whole string. Accessing Individual Elements • Individual characters in a String accessed with the charAt method.

  10. 7 0 Error! name.length(); str2.length(); str3.length(); String name = "Sumatra"; String str2 = ""; String str3; Determining the Size • We determine the number of characters in a String with the length method. Error because no object is created for str3, so it is a null. Olipidoo … out to reality … StringVowels.java Olipidoo … out to reality … StringWords.java

  11. word1 word2 String true Java true Equality (==) vs. equals—Case 1 word1 and word2 point to the same object. word1 == word2 word1.equals( word2 )

  12. String String false Java Java true Equality (==) vs. equals—Case 2 word1 word2 word1 and word2 point to different objects having the same string. word1 == word2 word1.equals( word2 )

  13. String String false Java Bali false Equality (==) vs. equals—Case 3 word1 word2 word1 and word2 point to different objects with different strings. word1 == word2 word1.equals( word2 ) Quixote … out to reality … StringJavas.java

  14. Other Useful String Operators

  15. Strings and Methods Strings are reference variables, so (like arrays) formal parameters point to the actual parameter data Strings returned from methods point to the data created in the method Likidylik … out to reality … StringMethod.java

  16. Strings are Immutable • A String object is immutable, which means that once a String object is created, is cannot be changed. • It is not possible to add, delete, or modify characters of a String object. • The methods of the String class, such as toUpperCase and substring, do not modify the original string; they return a new string. • Java adopts this immutability restriction to implement an efficient memory allocation scheme for managing String objects. • Oieeeeiooo … out to reality … StringImmut.java

  17. StringBuffer • Creating a new string from the old one will work for most cases, but sometimes manipulating the content of a string directly is more convenient. • Manipulation means operations such as replacing a character, appending a string with another string, deleting a portion of a string, and so forth. • Java has a StringBuffer class for this. • StringBuffers are created from strings (no shorthand) • Ay … out to reality … StringBufferX.java • Ay … out to reality … StringBufferMake.java

More Related