Sei sulla pagina 1di 12
UNITS [51 Datasets 5.5 String Manipulations Objectives 1, Deseribe the string abject. 2. Sort sexing object by compareto) and coupareTorgnorecese() methods. 3. Compare sting objects by equats () and equalstanorecase () methods. Introduction “The class jave.1ang.string (or simply class string) is important in the Java standard software library. You have used it since the first Java program that we encountered in the course. A String object encapsulates a sequence of chatacters of type char for a particular textual representation. From time to time, whenever i is necessary to prepare a message to be shown on the screen, you have to prepare a String object with the desired contents, especially with the use of String Besides sting concatenation, the String class defines many utility methods for ‘String manipulations. Please use che following reading to learn some of these utility methods. 8 Reading Malik, D S, Java Programming: From Problem Analysis to Program Design, ‘class sting’, p. 118-125. The reading reminds you that a sequence of characters in a program that are enclosed with a pair of double quotation marks is considered a String literal, and ic is automatically converted toa Stxing object by the compiler. Therefore, the following two expressions, "A" and ‘A’ are significantly different, even though both denote a single character a. The former one enclosed with double quotation marks will be converted to a String object with che content of a single character A only, whereas the latter one that uses a pair of single quotation marks denotes single primitive value & (or the equivalent numeric value 65) of type cha. ‘Therefore, a pair of double quotation marks and a pair of single quotations declare a String object and a primitive value of type char respectively. Furthermore, itis possible to have a pair of double quotation marks that encloses nothing for a String “object with empty content; that is, *. However, a pair of single quotation marks that encloses nothing will cause a compile time error, 52) WAWASAN OPEN UNIVERSITY | 1ec102 Computing From the reading, you learnt that the String class defines many utility methods. Basically, there are three types of tility method: informative, string manipulation and data conversions, as shown in Table 5.5. Category ‘Method declaration Informative | Public char chazAt (int index) public int conpareto (String anotherString) public int conpareTotgnoreCase (String ste) public boolean equals (Object anobject) public boolean equalstgnoreCase (String ste} public int indexof (string str) public int indexOF (String str, int fromindex) public int LastIndexof (String str) public int lastindexof (String str, int fromindex) public int Lengtn() public boolean startsWith (String prefix) public boolean endsWith (String suétin) string public String replace (char oldChar, char newChar) manipulation | pubise String substring(int bogiatndex) public String substring(int beginindox, int. endindex) public String toLoworcase () public String toUppexCase() public String trim() Data conversion | Public char{] vochararray () public static String valueof (boolean b) public static String veluef (char c) public etatic String valueOf(chaz[] data) public static String value0f (double d) public etatic String valueOf(float £) public static String valueof(int 1) public static String valueof (long 1) public static Steing valueOf (Object obj) Table 5.5 Frequently used methods defined by the string class From Table 5.5, you should notice that the methods that are commonly used include class and non-class (that is, 2tatic and non-static) methods. For non- class methods (or instance methods), a string object performs the method and the results are determined based on the object itself Class methods are mainly conversion ity methods that convert primitive values to equivalent String objects What is the common use of strings? Give two examples of its usage in our daily life. UNITS [53 Darastctres Immutable String object Before the discussion on some of the string manipulation, it is necessary to highlight the immutable feature of the String class. Similar to wrapper classes. ‘a String class defines no methods for updating the sequence of characters chat a string abject encapsulates, In Table 5.5, you can see that the methods for string manipulation provide a String object to be returned. For example, consider the following two statements: String stri = “abedef”; String str2 = stri.tolppercase (I+ ‘The first statement assigns the reference of the String object with contents sancdet” to the variable ste1. Then, the second statement calls he toUoperCase () method of the sting object referred by the variable str. Instead of updating the contents of the sexing object referred by variable stri, a new String object is created and returned and is assigned to the variable st «2. The scenario is visualised in Figure 5.30. Seeing etet [—}- >| -vaiue = “abeaer” Ytovppercasa() + String isering The String object stez [-—}->[-vaiue - “ascozr” created by caling the couppercase() method Figure 5.30 The scenario after the touppercase () method of a sering object is called You should notice that ifthe above program segment is modified to be, String stel ~ “abedef"; stel.touppercese () anew string objects created by the second statement and is returned. The original Sting object referred by the variable ote) is kept unchanged. As the reference of the newly created String object is not maintained by any reference variable, the newly created String object cannot be located and used. Then, the JVM determines such a string object that is not referred by any reference variable, which means that such an abject cannot be accessed; the JVM therefore automatically removes ic from the memory.

Potrebbero piacerti anche

  • WUC103 Unit2-4
    WUC103 Unit2-4
    Documento10 pagine
    WUC103 Unit2-4
    api-26781128
    Nessuna valutazione finora
  • WUC103 Unit2-3
    WUC103 Unit2-3
    Documento16 pagine
    WUC103 Unit2-3
    api-26781128
    Nessuna valutazione finora
  • WLA105 Unit4-3
    WLA105 Unit4-3
    Documento18 pagine
    WLA105 Unit4-3
    api-26781128
    Nessuna valutazione finora
  • WLA105 Unit2-1
    WLA105 Unit2-1
    Documento20 pagine
    WLA105 Unit2-1
    api-26781128
    Nessuna valutazione finora
  • WUC103 Unit2-1
    WUC103 Unit2-1
    Documento24 pagine
    WUC103 Unit2-1
    api-26781128
    Nessuna valutazione finora
  • WLA105 Unit2-4
    WLA105 Unit2-4
    Documento24 pagine
    WLA105 Unit2-4
    api-26781128
    Nessuna valutazione finora
  • WLA105 Unit5-3
    WLA105 Unit5-3
    Documento18 pagine
    WLA105 Unit5-3
    api-26781128
    Nessuna valutazione finora
  • WUC103 Unit2-2
    WUC103 Unit2-2
    Documento10 pagine
    WUC103 Unit2-2
    api-26781128
    Nessuna valutazione finora
  • WLA105 Unit5-1-2
    WLA105 Unit5-1-2
    Documento22 pagine
    WLA105 Unit5-1-2
    api-26781128
    Nessuna valutazione finora
  • WLA105 Unit4-1-2
    WLA105 Unit4-1-2
    Documento24 pagine
    WLA105 Unit4-1-2
    api-26781128
    Nessuna valutazione finora
  • WLA105 Unit2-2
    WLA105 Unit2-2
    Documento6 pagine
    WLA105 Unit2-2
    api-26781128
    Nessuna valutazione finora
  • WLA105 Unit2-3
    WLA105 Unit2-3
    Documento10 pagine
    WLA105 Unit2-3
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit5-2
    TCC102 Unit5-2
    Documento20 pagine
    TCC102 Unit5-2
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit5-3n4
    TCC102 Unit5-3n4
    Documento14 pagine
    TCC102 Unit5-3n4
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit4-4
    TCC102 Unit4-4
    Documento14 pagine
    TCC102 Unit4-4
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit4-5
    TCC102 Unit4-5
    Documento22 pagine
    TCC102 Unit4-5
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit4-3
    TCC102 Unit4-3
    Documento12 pagine
    TCC102 Unit4-3
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit5-1
    TCC102 Unit5-1
    Documento22 pagine
    TCC102 Unit5-1
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit4-2
    TCC102 Unit4-2
    Documento26 pagine
    TCC102 Unit4-2
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit4-1
    TCC102 Unit4-1
    Documento14 pagine
    TCC102 Unit4-1
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit3 2
    TCC102 Unit3 2
    Documento20 pagine
    TCC102 Unit3 2
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit3 Summary
    TCC102 Unit3 Summary
    Documento16 pagine
    TCC102 Unit3 Summary
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit2 Summary
    TCC102 Unit2 Summary
    Documento25 pagine
    TCC102 Unit2 Summary
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit3 4
    TCC102 Unit3 4
    Documento14 pagine
    TCC102 Unit3 4
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit3 1
    TCC102 Unit3 1
    Documento14 pagine
    TCC102 Unit3 1
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit2 3
    TCC102 Unit2 3
    Documento12 pagine
    TCC102 Unit2 3
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit3 3
    TCC102 Unit3 3
    Documento14 pagine
    TCC102 Unit3 3
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit2 5
    TCC102 Unit2 5
    Documento13 pagine
    TCC102 Unit2 5
    api-26781128
    Nessuna valutazione finora
  • TCC102 Unit2 4
    TCC102 Unit2 4
    Documento24 pagine
    TCC102 Unit2 4
    api-26781128
    Nessuna valutazione finora