Suscribirse al Feed
06Dic

[código] Ejemplos de Cadenas y caracteres en Java (1)

Esta sección trata el procesamiento de palabras, oraciones, caracteres y grupos de caracteres. Se presentan las clases String, StringBuffer, Character y StringTokenizer. También se presentan ejemplos de la API de Java para las expresiones regulares, la cual permite a los programas buscar en las cadenas secuencias de caracteres que concuerden con ciertos patrones especificados.

Constructores de la clase String


// Constructores de la clase String.
import javax.swing.*;

public class ConstructoresString {

   public static void main( String args[] )
   {
      char arregloChar[] = { 'c', 'u', 'm', 'p', 'l', 'e', ' ', 'a', 'ñ', 'o', 's' };
      byte arregloByte[] = { ( byte ) 'a', ( byte ) 'ñ',
         ( byte ) 'o', ( byte ) ' ', ( byte ) 'n',
         ( byte ) 'u', ( byte ) 'e', ( byte ) 'v', (byte) 'o' };

      String s = new String( "hola" );

      // usar constructores de String
      String s1 = new String();
      String s2 = new String( s );
      String s3 = new String( arregloChar );
      String s4 = new String( arregloChar, 7, 4 );
      String s5 = new String( arregloByte, 4, 5 );
      String s6 = new String( arregloByte );

      // anexar objetos String a salida
      String salida = "s1 = " + s1 + "\ns2 = " + s2 + "\ns3 = " + s3 +
         "\ns4 = " + s4 + "\ns5 = " + s5 + "\ns6 = " + s6;

      JOptionPane.showMessageDialog( null, salida,
         "Constructores de la clase String", JOptionPane.INFORMATION_MESSAGE );

      System.exit( 0 );
   }

}

Descargar código fuente

Métodos length, charAt y getChars de String


// Este programa demuestra los métodos length, charAt y getChars
// de la clase String.
import javax.swing.*;

public class VariosString {

   public static void main( String args[] )
   {
      String s1 = "hola a todos";
      char arregloChar[] = new char[ 4 ];

      String salida = "s1: " + s1;

      // probar método length
      salida += "\nLongitud de s1: " + s1.length();

      // iterar a través de los caracteres en s1 y mostrar al revés
      salida += "\nLa cadena invertida es: ";

      for ( int cuenta = s1.length() - 1; cuenta >= 0; cuenta-- )
         salida += s1.charAt( cuenta ) + " ";

      // copiar caracteres de la cadena a arregloChar
      s1.getChars( 0, 4, arregloChar, 0 );
      salida += "\nEl arreglo de caracteres es: ";

      for ( int cuenta = 0; cuenta < arregloChar.length; cuenta++ )
         salida += arregloChar[ cuenta ];

      JOptionPane.showMessageDialog( null, salida,
         "Métodos de  String para manipular caracteres",
         JOptionPane.INFORMATION_MESSAGE );

      System.exit( 0 );
   }

} // fin de la clase VariosString

Descargar código fuente

Métodos equals, equalsIgnoreCase, compareTo y regionMatches de String

// Los métodos equals, equalsIgnoreCase, compareTo y regionMatches de String.
import javax.swing.JOptionPane;

public class CompararString {

   public static void main( String args[] )
   {
      String s1 = new String( "hola" );  // s1 es una copia de "hola"
      String s2 = "adiós";
      String s3 = "Feliz Cumpleaños";
      String s4 = "feliz cumpleaños";

      String salida = "s1 = " + s1 + "\ns2 = " + s2 + "\ns3 = " + s3 +
         "\ns4 = " + s4 + "\n\n";

      // probar igualdad
      if ( s1.equals( "hola" ) )  // true
         salida += "s1 es igual a \"hola\"\n";
      else
         salida += "s1 es distinta de \"hola\"\n"; 

      // probar igualdad con ==
      if ( s1 == "hola" )  // false; no son el mismo objeto
         salida += "s1 es igual a \"hola\"\n";
      else
         salida += "s1 es distinta de \"hola\"\n";

      // probar igualdad (ignorar mayúsculas)
      if ( s3.equalsIgnoreCase( s4 ) )  // true
         salida += "s3 es igual a s4\n";
      else
         salida += "s3 es distinta de s4\n";

      // probar compareTo
      salida += "\ns1.compareTo( s2 ) es " + s1.compareTo( s2 ) +
         "\ns2.compareTo( s1 ) es " + s2.compareTo( s1 ) +
         "\ns1.compareTo( s1 ) es " + s1.compareTo( s1 ) +
         "\ns3.compareTo( s4 ) es " + s3.compareTo( s4 ) +
         "\ns4.compareTo( s3 ) es " + s4.compareTo( s3 ) + "\n\n";

      // probar regionMatches (susceptible a mayúsculas)
      if ( s3.regionMatches( 0, s4, 0, 5 ) )
         salida += "Los primeros 5 caracteres de s3 y s4 concuerdan\n";
      else
         salida += "Los primeros 5 caracteres de s3 y s4 no concuerdan\n";

      // probar regionMatches (ignorar mayúsculas)
      if ( s3.regionMatches( true, 0, s4, 0, 5 ) )
         salida += "Los primeros 5 caracteres de s3 y s4 concuerdan";
      else
         salida += "Los primeros 5 caracteres de s3 y s4 no concuerdan";

      JOptionPane.showMessageDialog( null, salida,
         "Comparaciones entre cadenas", JOptionPane.INFORMATION_MESSAGE );

      System.exit( 0 );
   }

} // fin de la clase CompararString

Descargar código fuente

Métodos startsWith y endsWith de String

// String methods startsWith and endsWith.
import javax.swing.*;

public class InicioFinString {

   public static void main( String args[] )
   {
      String cadenas[] = { "empezó", "empezando", "terminó", "terminando" };
      String salida = "";

      // probar el método startsWith
      for ( int cuenta = 0; cuenta < cadenas.length; cuenta++ )

         if ( cadenas[ cuenta ].startsWith( "em" ) )
            salida += "\"" + cadenas[ cuenta ] + "\" empieza con \"em\"\n";

      salida += "\n";

      // probar método startsWith, empezando desde la posición
      // 2 de la cadena
      for ( int cuenta = 0; cuenta < cadenas.length; cuenta++ )

         if ( cadenas[ cuenta ].startsWith( "pez", 2 ) )
            salida += "\"" + cadenas[ cuenta ] +
               "\" empieza con \"pez\" en la posición 2\n";

      salida += "\n";

      // probar el método endsWith
      for ( int cuenta = 0; cuenta < cadenas.length; cuenta++ )

         if ( cadenas[ cuenta ].endsWith( "do" ) )
            salida += "\"" + cadenas[ cuenta ] + "\" termina con \"do\"\n";

      JOptionPane.showMessageDialog( null, salida,
         "Comparaciones con la clase String", JOptionPane.INFORMATION_MESSAGE );

      System.exit( 0 );
   }

} // fin de la clase InicioFinString

Descargar código fuente

Métodos de búsqueda indexOf y lastIndexOf de String

// String searching methods indexOf and lastIndexOf.
import javax.swing.*;

public class MetodosIndexString {

   public static void main( String args[] )
   {
      String letras = "abcdefghijklmabcdefghijklm";

      // probar indexOf para localizar un caracter en una cadena
      String salida = "'c' se encuentra en el índice " + letras.indexOf( 'c' );

      salida += "\n'a' se encuentra en el índice " + letras.indexOf( 'a', 1 );

      salida += "\n'$' se encuentra en el índice " + letras.indexOf( '$' );

      // probar lastIndexOf para buscar un caracter en una cadena
      salida += "\n\nLa última 'c' se encuentra en el índice " +
         letras.lastIndexOf( 'c' );

      salida += "\nLa última 'a' se encuentra en el índice " +
         letras.lastIndexOf( 'a', 25 );

      salida += "\nEl último '$' se encuentra en el índice " +
         letras.lastIndexOf( '$' );

      // probar indexOf para localizar una subcadena en una cadena
      salida += "\n\n\"def\" se encuentra en el índice " +
         letras.indexOf( "def" );

      salida += "\n\"def\" se encuentra en el índice " +
         letras.indexOf( "def", 7 );

      salida += "\n\"hola\" se encuentra en el índice " +
         letras.indexOf( "hola" );

      // probar lastIndexOf para encontrar una subcadena en una cadena
      salida += "\n\nEl último \"def\" se encuentra en el índice " +
         letras.lastIndexOf( "def" );

      salida += "\nEl último \"def\" se encuentra en el índice " +
         letras.lastIndexOf( "def", 25 );

      salida += "\nEl último \"hola\" se encuentra en el índice " +
         letras.lastIndexOf( "hola" );

      JOptionPane.showMessageDialog( null, salida,
         "Métodos de búsqueda de String", JOptionPane.INFORMATION_MESSAGE );

      System.exit( 0 );
   }

}  // fin de la clase MetodosIndexString

Descargar código fuente

Método substring de la clase String

// Los métodos substring de la clase String.
import javax.swing.*;

public class SubString {

   public static void main( String args[] )
   {
      String letras = "abcdefghijklmabcdefghijklm";

      // probar métodos substring
      String salida = "La subcadena desde el índice 20 hasta el final es " +
         "\"" + letras.substring( 20 ) + "\"\n";

      salida += "La subcadena desde el índice 3 hasta 6 es " +
         "\"" + letras.substring( 3, 6 ) + "\"";

      JOptionPane.showMessageDialog( null, salida,
         "Métodos substring de la clase String", JOptionPane.INFORMATION_MESSAGE );

      System.exit( 0 );
   }

} // fin de la clase SubString

Descargar código fuente

Método concat de la clase String

// El método concat de la clase String.
import javax.swing.*;

public class ConcatenacionString {

   public static void main( String args[] )
   {
      String s1 = new String( "Feliz " );
      String s2 = new String( "Cumpleaños" );

      String salida = "s1 = " + s1 + "\ns2 = " + s2;

      salida += "\n\nResultado de of s1.concat( s2 ) = " + s1.concat( s2 );
      salida += "\ns1 después de la concatenación = " + s1;

      JOptionPane.showMessageDialog( null, salida,
         "El método concat de String", JOptionPane.INFORMATION_MESSAGE );

      System.exit( 0 );
   }

} // fin de la clase ConcatenacionString

Descargar código fuente

Continúa...

Etiquetas: ,
Los ejercicios utilizados en este post están basados en ejemplos del libro Cómo programar en Java de Deitel, y por lo tanto están bajo la licencia que esta editorial disponga.

16 Comentarios para “[código] Ejemplos de Cadenas y caracteres en Java (1)”

« 1 2 Todos

  1. a gravatar

    Angelica dice:  


    como puedo hacer un casting a un vector que obtiene Arreglos.
    Vector atributo
    String [] art;
    es decir algo asi art [i] = (String[])atributos.elementAt(i);
    no se como hacerlo ayuda porfis

  2. a gravatar

    Casidiablo dice:  


    Hola Angélica, sería:

    Vector atributo;
    String [] art;
    art = (String[])atributos.get(i);

    Aunque no se si realmente es lo que quieres. Pero el código de arriba sería correcto siempre y cuando el vector contenga arreglos String.

    Un saludo

  3. a gravatar

    karla dice:  


    hola alguin sabe cual es es caracter con el que termiana una cadena me urge please contesten

  4. a gravatar

    anferruqui dice:  


    ya pe amigo casidiablo ayudita ps

  5. a gravatar

    anferruqui dice:  


    ayudame como le ayudas a angelica ps porfitas.

  6. a gravatar

    wiston altamirano dice:  


    muchas gracias por esta tu ayuda
    gracias

  7. a gravatar

    alan dice:  


    hola de verdad me urge que me ayduden sobre un proyecto final..

    Hacer un programa que simule un car Wash, en donde entrara carros de diferentes tamaño y dependiendo de la cantidad de ejes es el costo:
    2 ejes: 90
    4 ejes: 180
    6 ejes: 240
    El proceso del que esta formado el carwash es el siguiente:
    Existe una sola maquina de lavado y el tiempo de duración depende de la cantidad de los ejes, ya que la duración del 2 ejes es de 12 segundos; y el tiempo es el doble por par de ejes.
    Existen 4 módulos de limpieza y secado, y tiene una duración de 5 segundos por carro sin importar los ejes.
    Al finalizar el día, debe de mostrar la cantidad de carros lavados y la cantidad económica adquirida.

  8. a gravatar

    pelayo dice:  


    Muchas gracias por tus aportes, me vienen muy bien

« 1 2 Todos

 

 

Antes de comentar... recuerda que no hago tareas

Te invito a subscribirte al feed RSS. ¿No sabes que es un lector de Feeds?

© 2007 - 2008 Dezinerfolio. Todos los derechos reservados.
Powered by Wordpress. Entradas RSS