Mostrando entradas con la etiqueta .charAt(). Mostrar todas las entradas
Mostrando entradas con la etiqueta .charAt(). Mostrar todas las entradas

Recorrer un String carácter a carácter y contar cuantas veces se repiten.

Programa para recorrer un String carácter a carácter en este caso hemos cogido el primer párrafo del quijote para ver cuantos caracteres se repiten de cada uno, para ello utilizamos el código decimal de ascii desde 0 a 255 utilizando un Array de enteros, cada posición será un carácter. En el primer for rellenamos con un +1 cada vez que salga un carácter en su posición del codigo ascii, el segundo for imprimimos el resultado por pantalla saltándonos los caracteres que tengan 0 apariciones.

public class Array_Ej1 {

 public static void main(String[] args) {
  
  int ascii255[] = new int [255];
  
  //String pequeñito de prueba =)
  String parrafo= "«En un lugar de la Mancha,"
    + " de cuyo nombre no quiero acordarme, "
    + "no ha mucho tiempo que vivía un hidalgo "
    + "de los de lanza en astillero, adarga antigua,"
    + " rocín flaco y galgo corredor. Una olla de algo "
    + "más vaca que carnero, salpicón las más noches, "
    + "duelos y quebrantos los sábados, lentejas los viernes, "
    + "algún palomino de añadidura los domingos, consumían las"
    + " tres partes de su hacienda. El resto della "
    + "concluían sayo de velarte, calzas de velludo"
    + " para las fiestas con sus pantuflos de lo mismo,"
    + " los días de entre semana se honraba con su vellori"
    + " de lo más fino. Tenía en su casa una ama que pasaba"
    + " de los cuarenta, y una sobrina que no llegaba a los "
    + "veinte, y un mozo de campo y plaza, que así ensillaba "
    + "el rocín como tomaba la podadera. Frisaba la edad de nuestro"
    + " hidalgo con los cincuenta años, era de complexión recia, "
    + "seco de carnes, enjuto de rostro; gran madrugador y amigo de "
    + "la caza. Quieren decir que tenía el sobrenombre de Quijada o "
    + "Quesada (que en esto hay alguna diferencia en los autores que "
    + "deste caso escriben), aunque por conjeturas verosímiles se deja "
    + "entender que se llama Quijana; pero esto importa poco a nuestro "
    + "cuento; basta que en la narración dél no se salga un "
    + "punto de la verdad».";
  
  


              for(int i=0; i< parrafo.length();i++){
   
   char car = parrafo.charAt(i);
   int aux = (int)car;
   
   if(ascii255[aux]==0)
   {
    ascii255[aux]=1;
   }
   else
   {
    ascii255[aux]=ascii255[aux]+1;
   }
  }
 
  for(int i=32; i < ascii255.length; i++)
  {
   if(ascii255[i]!=0)
   {
    System.out.println("El caracter "+(char)i+" se repite "+ascii255[i]+" veces.");
   }
   
  }
 

 }

}

Buscar un caracter dentro de una cadena String JAVA

Ejemplo básico de como se podría buscar un carácter dentro de una frase ejemplo.

import java.util.*;
public class EjString {

 public static void main(String[] args) {
  
  //Buscando un caracter dentro de un String
  
  String ejemplo="Método de la clase String";
  
  //int indexOf(char c) devuelve el indice
  
  Scanner caracter = new Scanner(System.in);
  System.out.println("Introduce un caracter");
  char car = caracter.next().charAt(0);
  // en "car" guardamos el caracter a buscar
  int indice = ejemplo.indexOf(car);
  
  
  if(indice<0)
  {
  System.out.println("El caracter no existe en la frase \"Método de la clase String\". ");
  }else
  {
  System.out.println("La primera coincidencia con el caracter aparece en la posición número "
     +(indice-1)
     +" contando los espacios");
  }
  
  
  

 }

}

Ejemplo de metodo String .charAt()

Recorrer un String carácter a carácter mediante un bucle for con el metodo .charAt(index)
public class EjMetodosString {

 public static void main(String[] args) {
  // TODO Auto-generated method stub

  String var1="Frase prueba";
  
  //Devuelve el carácter en la posición indicada por index. 
  //El rango de index va de 0 a length() - 1.
  //Guardamos en la variable salida de tipo caracter la posicion 4
  //como empieza por 0, deberia de ser la letra "e".
  char salida = var1.charAt(4);
  System.out.println(salida);
  
  System.out.println("Bucle que recorre toda la frase");
  //Creamos un buble para recorrer caracter a caracter
  for(int i=0; i< var1.length();i++){
  System.out.println("Indice:" +i+" letra:"+var1.charAt(i));
  }
  //vemos que el espacio en blanco también es un caracter
 }

}