Java/Development Class/CharacterIterator

Материал из Java эксперт
Перейти к: навигация, поиск

Change the characters

   <source lang="java">

import java.text.CharacterIterator; import java.text.StringCharacterIterator; public class Main {

 public static void main(String[] argv) throws Exception {
   CharacterIterator it = new StringCharacterIterator("abcd");
   ((StringCharacterIterator) it).setText("efgh");
   char ch = it.current(); 
 }

}

</source>
   
  
 
  



Create an iterator on a substring (efgh)

   <source lang="java">

import java.text.CharacterIterator; import java.text.StringCharacterIterator; public class Main {

 public static void main(String[] argv) throws Exception {
   CharacterIterator it = new StringCharacterIterator("abcd");
   int begin = 5;
   int end = 9;
   int pos = 6;
   it = new StringCharacterIterator("abcd efgh ijkl", begin, end, pos);
   char ch = it.current();
   System.out.println(ch);
   ch = it.last();
   System.out.println(ch);
 }

}

</source>
   
  
 
  



Iterate a subset of a string

   <source lang="java">

import java.text.CharacterIterator; import java.text.StringCharacterIterator; public class Main {

 public static void main(String[] args) {
   String text = "this is a test";
   CharacterIterator it = new StringCharacterIterator(text, 4, 27, 5);
   for (char ch = it.first(); ch != CharacterIterator.DONE; ch = it.next()) {
     System.out.print(ch);
   }
 }

}

</source>
   
  
 
  



Iterate each characters of a string

   <source lang="java">

import java.text.CharacterIterator; import java.text.StringCharacterIterator; public class Main {

 public static void main(String[] args) {
   String text = "The quick brown fox jumps over the lazy dog";
   CharacterIterator it = new StringCharacterIterator(text);
   int vowels = 0;
   int consonants = 0;
   for (char ch = it.first(); ch != CharacterIterator.DONE; ch = it.next()) {
     if (ch == "a" || ch == "e" || ch == "i" || ch == "o" || ch == "u") {
       vowels = vowels + 1;
     } else if (ch != " ") {
       consonants = consonants + 1;
     }
   }
   System.out.println("Number of vowels: " + vowels);
   System.out.println("Number of consonants: " + consonants);
 }

}

</source>
   
  
 
  



Iterate over the characters in the backward direction

   <source lang="java">

import java.text.CharacterIterator; import java.text.StringCharacterIterator; public class Main {

 public static void main(String[] argv) throws Exception {
   CharacterIterator it = new StringCharacterIterator("abcd");
   for (char ch = it.last(); ch != CharacterIterator.DONE; ch = it.previous()) {
     System.out.println(ch);
   }
 }

}

</source>
   
  
 
  



Iterating the Characters of a String

   <source lang="java">

import java.text.CharacterIterator; import java.text.StringCharacterIterator; public class Main {

 public static void main(String[] argv) throws Exception {
   CharacterIterator it = new StringCharacterIterator("abcd");
   // Iterate over the characters in the forward direction
   for (char ch = it.first(); ch != CharacterIterator.DONE; ch = it.next()) {
     System.out.println(ch);
   }
 }

}

</source>
   
  
 
  



Reverse a string using CharacterIterator

   <source lang="java">

import java.text.CharacterIterator; import java.text.StringCharacterIterator; public class Main {

 private static final String text = "this is a test";
 public static void main(String[] args) {
   CharacterIterator it = new StringCharacterIterator(text);
   for (char ch = it.last(); ch != CharacterIterator.DONE; ch = it.previous()) {
     System.out.print(ch);
   }
 }

}

</source>
   
  
 
  



Use CharacterIterator to loop through a string

   <source lang="java">

import java.text.CharacterIterator; import java.text.StringCharacterIterator; public class Main {

 public static void main(String[] argv) throws Exception {
   CharacterIterator it = new StringCharacterIterator("abcd");
   char ch = it.first(); 
   ch = it.current(); 
   ch = it.next(); 
   ch = it.current(); 
   ch = it.last(); 
   int pos = it.getIndex(); 
   ch = it.next(); 
   pos = it.getIndex(); 
   ch = it.previous(); 
   ch = it.setIndex(1);
 }

}

</source>