Está en la página 1de 10

Strings

En Java, un string ó cadena es cualquier secuencia de caracteres: letras,


dígitos, espacios, signos de puntuación y otros "caracteres especiales".
Estos son algunos ejemplos de cadenas de nidas en Java:

String Explicación

"Hello, ¡Usamos esta cadena en el módulo anterior! Tiene 12


world" caracteres. El espacio entre la coma y "w" también se
cuenta como un carácter. Las comillas dobles no son
parte de la Cadena, de nen dónde comienza y dónde
termina la Cadena.

"12234" Esta es una cadena, no un número entero porque está


entre comillas dobles.

"!" Esta cadena es solo un carácter: un signo de


exclamación.

"><} Esta es una cadena con 10 caracteres especiales.


{_^$#@^"

"" Esta es una cadena especial: una "cadena vacía" que


NO contiene caracteres en absoluto. Las dos comillas
dobles están una al lado de la otra, sin siquiera un
espacio entre ellas.

Secuencias de escape
¿Qué sucede si deseo crear una cadena que contenga un caracter de
comillas dobles? ¡Difícil! Si escribiera "" ", Java estaría confundido. La
computadora no puede saber si" "" es una cadena vacía seguida de una
comilla doble, o una cadena que consiste en un caracter de comilla doble.
Java incluye una manera de aclarar esta ambigüedad con lo que se llama
fi
fi
una "secuencia de escape". Cuando Java ve una barra diagonal inversa
en una Cadena, esto le dice a Java que "escape" u omita la función del
siguiente carácter y simplemente la agregue a la Cadena. Estas son las
secuencias de escape que usaremos en este curso:

secuencia de escape Nombre Ejemplo Cadena impresa


" Double quote "John \"JJ\" Doe" John "JJ" Doe
\ Backslash "Use \\, not /" Use \, not /
\t Tab "1\titem" 1    item
line 1

\n New line "line 1\nline 2"


line 2

Println
Las computadoras no serían muy útiles si no pudieran comunicarse con
las personas y una de las formas más sencillas de hacerlo es "imprimir" el
texto para que lo leamos. Para producir una salida basada en cadenas,
utilizamos la instrucción println. Ya hemos usado esto cuando escribimos
nuestro programa "¡Hola, mundo!". Este es un tipo de "salida" de
computadora. El lugar en el que Java muestra en la pantalla la salida de
texto de un programa se llama "consola", una referencia histórica a las
grandes cosas de escritorio que utilizaba la primera generación de
computadoras.

Java imprime texto en la consola utilizando una instrucción


System.out.println. Aquí está el que usó en su programa HelloWorld:

System.out.println ("¡Hola, mundo!");

 

Estas palabras tienen sentido de alguna manera:

• System esencialmente se re ere a la computadora como un todo

• out se re ere al dispositivo de salida estándar: la consola

fi
fi
• println indica que desea "imprimir" como una línea completa (ln) de
texto

Nuestra declaración anterior imprimirá ¡Hola, mundo! al área de la consola


en su pantalla. También avanza a la siguiente línea en la pantalla, como si
lo hubiera escrito y luego presione la tecla Intro.

También puede usar la instrucción println para producir una línea vacía.

System.out.println ();

Print
A veces es posible que desee utilizar varias instrucciones de impresión y
que todos los resultados se produzcan en la misma línea. Para esto,
puede escribir print en lugar de println. Por ejemplo, estas instrucciones:

System.out.print ("Hola");

System.out.print ("Joe");

System.out.print ("! Hola");

System.out.print ("Jane");

System.out.println ("!");

 

... imprimiría:

Hola Joe! Hola Jane!

 

... y avance a una nueva línea solo después del último signo de
exclamación. Esto se debe a que puede ver que las primeras 4 llamadas
dejan el "ln" al nal de la impresión. Estas son simplemente "impresiones"
en lugar de "líneas de impresión" y no agregan el retorno de carro o
"Enter" al nal de una línea de salida.

Finalmente, también puede imprimir varias líneas con una sola declaración
println utilizando la nueva secuencia de escape de línea desde arriba:

System.out.println ("línea 1 \ nline 2 \ nline3");

 

... imprime estas tres líneas:

fi
fi
línea 1

línea 2

línea 3

Tipos de Datos
Hasta ahora, los únicos datos que han utilizado nuestros programas son
cadenas de caracteres contenidos entre comillas dobles, como "¡Hola,
mundo!". Las computadoras procesan muchos tipos diferentes de datos:
números, imágenes, sonido, etc. Java es muy estricto al de nir
exactamente qué tipo de datos está usando en todo momento.

Java de ne algunos tipos de datos primitivos muy simples y e cientes.


Hay ocho de estos en total, pero nos centraremos en solo cuatro de ellos:

Entero:

 

Los enteros representan números enteros. Puede estar familiarizado con
los enteros de la clase de álgebra. Los enteros son números que no son
fracciones ni tienen decimales, por ejemplo, 422, -13 y 0. Java se re ere a
estos como tipo int. Como la memoria de la computadora no es
in nitamente grande, existe un  ímite en cuanto al tamaño de un número
entero que puede almacenar. El int más grande que Java puede
representar es en realidad 2,147,483,647, y el más pequeño es
-2,147,483,648. Esto es lo su cientemente grande para la mayoría de los
propósitos, pero tenga en cuenta que solo se trata de ¼ de la población
de la Tierra, por lo que habrá situaciones en las que usar un int no
funcionará.

Doble:

 

Los dobles son números reales como 3.14159, -2.718 y 2145.2731.
También puede escribirlos en forma de notación cientí ca; por ejemplo,
1.23e2 es lo mismo que 123, y 921e-1 es 92.1. Por razones históricas,
Java llama a este tipo doble. Estos pueden representar números mucho
más grandes y más pequeños, pero en general son solo aproximaciones,
fi
fi
fi
fi
fi
fi
fi
no valores exactos, ya que solo pueden contener algunos lugares
decimales. ¡Esto puede conducir a errores de redondeo cuando no los
espere!

Caracter:

 

Los caracteres son caracteres individuales como letras, símbolos y
espacios. Estos no solo se limitan al inglés ó español, sino a todos los
idiomas. Por ejemplo, A, X, 0, z,? Y =, pero también Ω, ä, Я, ¡y muchos
más! Cada uno de estos es un char en Java. Cuando de na un caracter,
escríbalo entre comillas simples, como 'a'. Los Strings están formados por
caracteres char. NOTA: 'a' NO es lo mismo que "a": el primero es un
caracter, el segundo es una cadena que contiene un carácter único.

Booleano:

 

Los booleanos son un tipo de dato que solo pueden tener dos valores:
verdadero o falso. Los booleanos son el bloque de construcción para las
decisiones basadas en la lógica, puede pensar que representan sí o no,
encendido o apagado, positivo o negativo, etc. Java llama a estos valores
booleanos, en honor a George Boole, quien creó una teoría del álgebra.
para números con solo dos valores.

Aquí hay un resumen de estos tipos de datos primitivos de Java:

¿Qué son las variables?

fi
 

Todos los datos que hemos visto hasta ahora han sido literales de varios
tipos: valores jos especí cos, como 13 o 1.3 o "abc". La mayoría de los
programas útiles también necesitan usar datos cuyos valores cambien,
por ejemplo, como un recuento de puntos anotados en un juego o la
cantidad de tiempo restante. En Java existe una construcción para
contener los datos cuyo valor cambia, estos se denominan variables.
Puede pensar en una variable como una celda con nombre en la memoria,
que contiene un valor que el programa puede usar o cambiar y al que se
hace referencia por su nombre.

Esto es similar a usar variables en lugar de números en álgebra: una


ecuación de álgebra usa una variable para de nir qué hacer con cualquier
valor que pueda contener la variable. Por ejemplo, la ecuación de la línea y
= x + 2 dice que cualquiera que sea el valor de x, y es 2 más que x. Por lo
tanto, x es un sustituto para un rango de números posibles.

Declarando y usando variables:

 

Antes de que podamos usar una variable en Java, debemos "declararla".
Para hacer esto, debe decirle a Java qué tipo de datos desea que
almacene su variable y darle a la variable un nombre único dentro del
alcance dado.

dataType variableName;

 

Por ejemplo, para declarar una variable de tipo String con el nombre
"myString", escribimos:

String myString;

fi
fi
fi
Al declarar la variable se crea el espacio en la memoria para un valor, para
almacenar realmente una variable en ese espacio se usa una "declaración
de asignación". Una declaración de asignación asocia el valor dado a la
variable nombrada. La declaración de asignación comienza con el nombre
de la variable cuyo valor estamos con gurando, luego un signo igual,
luego el valor que queremos establecer y, nalmente, un punto y coma
para marcar el nal de la declaración:

variableName = valor;

 

Si quisiéramos almacenar la Cadena "¡Hola, mundo!" en nuestra variable
de antes

myString = "¡Hola, mundo!";

Ahora podemos usar la variable en cualquier lugar donde podríamos haber


usado la cadena literal. Esta declaración ahora imprimiría "¡Hola, mundo!"
a la consola:

System.out.println (myString);

 

Si establecemos un nuevo valor a la variable y luego repetimos la misma
instrucción println, imprimirá el nuevo valor "¡Hola a ti mismo!" en lugar de
"¡Hola, mundo!":

myString = "¡Hola a ti mismo!";



System.out.println (myString);

 

Java le permite asignar un valor inicial a una variable cuando se la declara.
Este código combina las dos primeras declaraciones anteriores:

fi
fi
fi
String myString = "¡Hola, mundo!";

System.out.println (myString);

myString = "¡Hola a ti mismo!";

System.out.println (myString);

 

Output:

¡Hola Mundo!

¡Hola a ti mismo!

Solo se puede declarar la variable una vez. Si intenta declararlo por


segunda vez, Java lo informará como un error. Esto también signi ca que
solo puede usar el nombre de una variable una vez dentro de un solo
alcance.

Alcance:

Cualquier variable que se declare entre las llaves de un método se llama


variable local porque solo puedes usarla localmente dentro del método. Si
intenta usarla fuera del método, Java informará un error. En general,
decimos que el alcance de una variable son las líneas de código donde se
puede usar, los lugares en su código donde es "visible" dicha variable.

¡Sin embargo, puede declarar dos variables diferentes que usan el mismo
nombre en dos métodos diferentes! Por ejemplo este código:

public class Song


public static void main (String[] args)
String line = "This is the chorus"
System.out.println(line)
verse()
System.out.println(line)
}

fi
public static void verse()
String line = "This is my verse"
System.out.println(line)

}
 

Este programa tiene dos variables llamadas "líne", pero una es local para
el método "verse" y solo puede usarse allí, y la otra es local para el
método principal, y solo puede usarse allí. Entonces, el programa
imprimiría:

This is the chorus

This is my verse

This is the chorus

Constantes de clase:

Además de declarar variables locales dentro de un método, también


puede declarar variables que NO son parte de ningún método, pero cuyo
alcance es toda la clase. Por ahora, usaremos estas, solo para declarar
variables cuyo valor nunca cambia, llamadas "constantes de clase".

Para declarar una de estas variables, debe agregar los términos "public
static nal" antes del tipo, y establecer el valor como lo haría en una
declaración de asignación. Lo mejor es colocarlo justo debajo de la
declaración de clase de esta manera:

public class myClass


public static final double PI = 3.14
public static final int MAX_SPEED = 80
public static final int DAYS_IN_WEEK = 7

public static void main(String[] args)


}

fi
{

...
 

Tenga en cuenta que la convención de nomenclatura de Java es utilizar


todas las letras mayúsculas para las constantes de clase, separando las
palabras por guiones bajos para que sean legibles, ¡porque recuerde que
ningún nombre de variable puede tener espacios en ellas!

¿Por qué declarar una variable con un valor jo? ¿No es todo el punto de
una variable que su valor puede variar? Bueno, sí, pero hay dos formas
comunes y útiles de usar una constante de clase:

(1) Desea que todos los métodos de la clase utilicen exactamente el


mismo valor para algo; por ejemplo, use 3.14 para PI, o MAX_SPEED para
80. Si luego desea cambiar este valor, solo tiene que cambiarlo en un
lugar. Esto no solo evita tener que buscar en todos los lugares donde se
usa y cambiarlo varias veces, sino que, lo que es más importante,
garantiza que no pase por alto un lugar o cambie accidentalmente un 80
en algún lugar del programa que representa una edad máxima en lugar de
una velocidad.

(2) Desea utilizar nombres en lugar de valores para que el signi cado de
una expresión sea claro; por ejemplo, usando DAYS_IN_WEEK en lugar de
7 como en:

calendarRows = DAYS_IN_WEEK;

Se considera un buen estilo reemplazar los números repetidos con una


constante de clase siempre que sea posible para que su código sea más
legible.
fi
fi

También podría gustarte