Chapter 7 String

17

Click here to load reader

description

Chapter 7 StringTaught by Oum Saokosal, Head of Information Technology, National Polytechnic Institute of Cambodia

Transcript of Chapter 7 String

Page 1: Chapter 7 String

1

Chapter 7 Strings

Oum Saokosal, Head of IT DepartmentNational Polytechnic Institute of Cambodia

Tel: (855)-12-417214E-mail: [email protected]

Page 2: Chapter 7 String

2

Strings p.257

• Introduction• The String class• The Character class• The StringBuffer class

Page 3: Chapter 7 String

3

Introduction

• A string is sequence (series) of characters.• A string is NOT an array of characters.

E.g. in C/C++: char s[20];• In Java, A String is an object. • Java has 3 String classes:

String StringBuffer StringTokenizer

Page 4: Chapter 7 String

4

The String class

Page 5: Chapter 7 String

5

The String class (1)

• String is in java.lang package.• Since java.lang.* is always imported

automatically, we don’t need to import the String class.

• Declaration:String s1;

• Initialization:s1=“Information Technology”;

• Or, short-cut:String s1=“Information Technology”;

Page 6: Chapter 7 String

6

The String class (2)

• Because String is a class, then s1 is an object.

• So there should be constructors, methods, or properties.

• String constructors: String() String(String value) String(char[] value)Ex: String s1 = new String(“IT”);

• You just say:String s1 = “IT”;

Page 7: Chapter 7 String

7

The String class (3)

Summary of String class• Constructors

String()• Methods

charAt() compareTo() concat() endsWidth() equals() getChars() equalsIgnoreCase() getChars() indexOf()

lastIndexOf() regionMatches() length() replace() startsWith() subString() toCharArray() toLowerCase() toString() toUpperCase() trim() copyValueOf() valueOf()

Page 8: Chapter 7 String

8

The String class (4)

• Q. How do I get those methods to use?• A. You just declare a variable as String.

String s1=“npic”;Then, you call a method, say length(). System.out.println(s1.length());

• Let’s try this out:Public class TestString {public static void main(String[] args){

String s1=“npic”; System.out.println(s1.length());

}}

Page 9: Chapter 7 String

9

The String class (5)

Note:• The String class is immutable (has no setter

method).• The String class is final so we cannot inherit

from it. //Discuss it in chapter 8

• Lab time: Example 7.1 Checking Palindromes p.266

Page 10: Chapter 7 String

10

The Character class

Page 11: Chapter 7 String

11

The Character class

• To declare a variable as a character, use primitive data type: char.Ex: char ch1 = ‘a’;

• But Java provides also Character class. It is useful for Data Structure. Ex: Character ch2 = new Character(‘b’);

Character ch3 = ‘c’;• After define ch2,ch3 as Character, then

these can use methods from Character class. Please see methods on page 268.

• Lab Time: Example 7.2 on page 268

Page 12: Chapter 7 String

12

The StringBuffer class

Page 13: Chapter 7 String

13

The StringBuffer class (1)

• StringBuffer class is more flexible than String class. Why?

• Because after creating a variable from StringBuffer class, we can use append, delete, insert etc. very easily.

• Example:StringBuffer sb = new StringBuffer(“NPI”);

sb.append(“C”);

Page 14: Chapter 7 String

14

The StringBuffer class (2)

• StringBuffer()• append():StringBuffer• capacity():int• charAt():char• delete():StringBuffer• deleteCharAt():StringBuffer• insert():StringBuffer• length():int• replace():StringBuffer• reverse():StringBuffer• setCharAt():void• setLength():void• subString():String

Homework

Page 15: Chapter 7 String

15

The StringBuffer class (2)

• AppendStringBuffer st = new StringBuffer("H");

st.append('i');

st.append(5);

st.append(".");

st.append("com");

//output: Hi5.com

Please make some note on the code.• StringBuffer provided overloaded methods to

append boolean, char, char[], double, float, int, long, String.

Page 16: Chapter 7 String

16

Lab: Exercise 1

• Count the number of words in a given StringExample: Input: National Polytechnic Institute of CambodiaOutput: Word Count: 5 words

Page 17: Chapter 7 String

17

Lab: Exercise 2

• On page 285, Section 7.4 The StringBuffer Class

7.11 (Sorting character in a String) Write a method that returns a sorted string using the following header:

public static String sort(String s)

For example, sort(“bac”) return abc.