Java Strings Slides provided by the University of Washington - - PowerPoint PPT Presentation

java strings
SMART_READER_LITE
LIVE PREVIEW

Java Strings Slides provided by the University of Washington - - PowerPoint PPT Presentation

Java Strings Slides provided by the University of Washington Computer Science & Engineering department. Strings - string : an object storing a sequence of text characters. - Creating a string: String name = "text"; String name =


slide-1
SLIDE 1

Java Strings

Slides provided by the University of Washington Computer Science & Engineering department.

slide-2
SLIDE 2

Strings

  • string: an object storing a sequence of text characters.
  • Creating a string:

String name = "text"; String name = expression;

  • Examples:

String name = "Marty Stepp"; int x = 3; int y = 5; String point = "(" + x + ", " + y + ")";

slide-3
SLIDE 3

String indexes

  • Characters of a string are numbered with 0-based indexes:

String fruit = "Apple";

  • First character’s index: 0
  • Last character’s index: 1 less than the string’s length

index

1 2 3 4

character

A p p l e

slide-4
SLIDE 4

String methods

Method name Description int length() number of characters in this string String substring(int from, int to) returns the substring beginning at from and ending at to-1 String substring(int from) returns substring(from, length()) int indexOf(String str) returns the index of the first occurrence of str; returns -1 if not found int compareTo(String other) returns a value < 0 if this is less than other returns a value = 0 if this is equal to other returns a value > 0 if this is greater than other

slide-5
SLIDE 5

String methods

  • These methods are called using the dot notation:

String veggie = "carrot"; System.out.println(veggie.length()); // 6

  • More examples:

// index 012345678901 String s1 = "Stuart Reges"; System.out.println(s1.length()); // 12 System.out.println(s1.indexOf("e")); // 8 System.out.println(s1.substring(7, 10)); // "Reg"

slide-6
SLIDE 6

String methods

  • Given the following string:

String message = "Hello, world!";

  • How would you extract the word “world”?
slide-7
SLIDE 7

The equals method

  • Objects are compared using a method named equals.

if (string1.equals(string2)) { System.out.println("The strings are equal!"); }

  • Technically this is a method that returns a value of type boolean, the type

used in logical tests.

slide-8
SLIDE 8

String question

Write a static method numWords that takes a String as a parameter and that returns the number of words in the

  • String. By definition, words are separated by one or

more spaces.

numWords("how many?")

Returns 2

numWords(" how about a-b-c and !&%-$!*() ")

Returns 5 PROBLEM: EXAMPLES:

slide-9
SLIDE 9

numWords solution 1

public static int numWords(String s) { int count = 0; boolean insideWord = false; for (int i = 0; i < s.length(); i++) { String current = s.substring(i, i + 1); if (current.equals(" ")) { insideWord = false; } else if (!insideWord) { count++; insideWord = true; } } return count; }

  • Here’s one way to solve the problem:
slide-10
SLIDE 10

numWords solution 2

public static int numWords(String s) { int count = 0; String prev = " "; for (int i = 0; i < s.length(); i++) { String current = s.substring(i, i + 1); if (prev.equals(" ") && !current.equals(" ")) { count++; } prev = current; } return count; }

  • Here’s another way to solve the problem: