apuntes cadenas

Anuncio
Programación Java - Ingeniería de Sistemas - UATF
19
Ing. Limber Ruíz Molina
CADENAS
La clase String está orientada a manejar cadenas de caracteres. Pertenece al package (paquete)
java.lang, y por lo tanto no hay que importarlas. Los métodos de String se pueden utilizar directamente
sobre literales (cadenas entre comillas), por ejemplo: “hola”.length().
Métodos de la clase String.
Los objetos de la clase String se pueden crear a partir de cadenas de constantes o literales, definidas
entre dobles comillas, como por ejemplo: “hola”. Java crea siempre un objeto String al encontrar una
cadena entre comillas. Por ejemplo:
String str1=”hola”; //el sistema más eficaz de crear Strings
Métodos más importantes de la clase String.
INSERTAR CADENAS DESDE TECLADO
Insertar palabras
Scanner en=new Scanner(System.in);
String cad=en.next();
Insertar frases
String cad=en.nextLine();
Operaciones entre cadenas
Las operaciones básicas entre cadenas son: asignación, comparación y concatenación. Es posible
asignar una cadena a otra cadena. Las comparaciones de las cadenas de caracteres se hacen según el
orden de los caracteres en el código ASCII y con los operadores de relación.
Programación Java - Ingeniería de Sistemas - UATF
‘0’ < ‘1’
‘A’ < ‘B’
‘1’ < ‘2’
‘8’ < ‘9’
‘C’ < ’D’
20
Ing. Limber Ruíz Molina
‘N’ < ‘M’
Otra operación básica que se puede realizar con cadenas es la concatenación. La operación es el
proceso de combinar dos o más cadenas en una sola cadena. El operador es (+)
Ejemplos
1. Concatenar tres cadenas de caracteres.
class cadenas1
{
public static void main(String args[])
{
String cadenaTotal,cadena1,cadena2,cadena3;
cadena1="ingenieria";
cadena2="de";
cadena3="sistemas";
cadenaTotal=cadena1+cadena2+cadena3;
System.out.println(cadenaTotal);
}
}
2. Determinar la longitud de una cadena (String)
class cadenas2
{
public static void main(String args[])
{
String cadena1="Hola, como estas?";
int longitud=cadena1.length();
System.out.println(longitud);
}
}
3. Determinar cuantos caracteres ‘a’, existen en una cadena.
class cadenas4
{
public static void main(String args[])
{
String cadena;
cadena="alpaca";
int con=0;
int c=cadena.length();
for(int i=0;i<c;i++)
if ('a'==cadena.charAt(i))
con++;
System.out.println("existen "+con);
}
}
Programación Java - Ingeniería de Sistemas - UATF
21
Ing. Limber Ruíz Molina
4. Determinar si una palabra es capícua (es capícua cuando una palabra invertida es la misma palabra)
class capicua
{
public static void main(String args[])
{
String cad1="oruro";
String cad2=""; //se podría decir que empieza sin ningun caracter
int n=cad1.length();
for(int i=(n-1);i>=0;i--)
cad2=cad2+cad1.charAt(i);
if(cad1.equals(cad2))
System.out.println("es capicua");
else
System.out.println("no es capicua");
}
}
5. Mostrar el mayor de dos cadenas
class cadenamayor
{
public static void main(String args[])
{
String cadena1="juan";
String cadena2="pedro";
if(cadena1.compareTo(cadena2)>0)
System.out.println("el mayor es="+cadena1);
else
System.out.println("el mayor es="+cadena2);
}
}
6. Mostrar su correspondiente número ascii asociado a un carácter
class numeroascci
{
public static void main(String args[])
{
char c='0';
int num=(int)(c);
System.out.println(num);
}
}
7. Mostrar su correspondiente carácter asociado a un número
class caracter
{
public static void main(String args[])
{
int n=64;
char c=(char)(n);
System.out.println(c);
}
Programación Java - Ingeniería de Sistemas - UATF
22
Ing. Limber Ruíz Molina
}
8. Programa que permite insertar una frase por teclado, y posteriormente visualiza cada palabra en una
línea diferente
Ejemplo Entrada
Salida
Potosi es una ciudad colonial
Potosi
Potosies
Potosi euna
Potosi es u ciudad
Potosi es una ciudcolonial
import java.util.*;
public class Ejemplo {
public static void main(String args[])
{
Scanner en=new Scanner(System.in);
//obtener la cadena por teclado
String cad=en.nextLine();
//tam almacena la longitud de la cadena
int tam=cad.length();
//esp será para saber hasta donde imprimir espacios
int esp=0;
for(int i=0;i<tam;i++)
{
//si el caracter es diferente de espacio imprime el caracter
if(cad.charAt(i)!=' ')
{
esp++;
System.out.print(cad.charAt(i));
}
//si el caracter es espacio debemos hacer un salto de línea
//e imprimir espacios hasta la siguiente palabra a imprimir
else
{
System.out.println();
for(int j=0;j<esp;j++)
System.out.print(" ");
}
}
}
}
Descargar