Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de...

56
Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I

Transcript of Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de...

Page 1: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones

Algoritmos y Desarrollo de Programas I

Page 2: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

2

Objetivos

Cuando finalice esta lección, el estudiante: Sabrá cómo declarar variables y

constantes simbólicas usando el tipo de datos adecuado.

Sabrá como convertir valores de un tipo de datos a otro.

Podrá construir correctamente expresiones y enunciados de asignación.

Page 3: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

3

La declaración y uso de variables

Los programas trabajan con valores de dos clases: Las variables, que representan valores

que pueden cambiar a medida que el programa ejecuta.

Las constantes, que representan valores que NO pueden cambiar a medida que el programa ejecuta.

Page 4: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

4

La declaración y uso de variables (cont.)

Para poder usar una variable es necesario escribir un enunciado de declaración, como se ve en el siguiente ejemplo:

int value;

En este enunciado se indica el nombre de la variable (value) y su tipo de datos (int).

Page 5: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

5

La declaración y uso de variables (cont.)

El nombre de la variable es un identificador que corresponde a una dirección de memoria principal (RAM) que contiene un valor.

Siempre que declaremos variables debemos usar nombres significativos, que permitan deducir para qué la estamos usando.

Page 6: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

6

La declaración y uso de variables (cont.)

Los identificadores deben cumplir con estas reglas: Se pueden usar letras, dígitos,

subrayado (_) o el signo de dólar ($). NO pueden comenzar con un dígito ni

contener espacios. Por costumbre, los nombres de

variables y métodos comienzan con una letra minúscula pero los nombres de las clases comienzan con una letra mayúscula.

Page 7: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

7

La declaración y uso de variables (cont.)

Los siguientes son nombres válidos para variables: payRate pay_rate payrate test1 test_1

Los siguientes nombres son inválidos: pay rate … por el espacio test#1 … por el caracter ‘#’ 1stTest … porque comienza con dígito

Page 8: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

8

La declaración y uso de variables (cont.)

Recuerde que Java es sensitivo a las mayúsculas y minúsculas.

Por lo tanto, las siguientes serían variables distintas: payRate payrate pay_rate

Page 9: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

9

La declaración y uso de variables (cont.)

El tipo de datos indica qué tipo de valores puede contener la variable.

Los principales tipos de datos en los lenguajes de programación son: Numérico: un número que se puede usar en

cómputos matemáticos. Ejemplos: -5.1, 0, 2.67, 9

Alfanumérico: uno o más símbolos, incluyendo letras y números que NO se usan en cómputos matemáticos.

Ejemplos: ‘A’, ‘@’, ‘a’, “house” Lógico o Booleano: los valores true y false.

Page 10: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

10

La declaración y uso de variables (cont.)

Los datos numéricos se pueden clasificar como: Enteros – números que no tienen

punto decimal, tales como -41, 0 y 52 Por ejemplo, una variable llamada age

debe representar un número entero. Reales – números que tienen punto

decimal o están en notación científica, tales como -9.16, 0.7, 2.387 y 52.0

Por ejemplo, una variable llamada salary debe representar un número real.

Page 11: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

11

La declaración y uso de variables (cont.)

En Java se utilizan los siguientes tipos de datos para representar números enteros: byte, short, int y long. En nuestro curso utilizaremos int para

representar números enteros. En Java se utilizan los siguientes tipos de

datos para representar números reales: float y double. En nuestro curso utilizaremos double para

representar números reales. Todos estos nombres para los tipos de

datos son palabras reservadas.

Page 12: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

12

La declaración y uso de variables (cont.)

¿Por qué existen tantos tipos de datos distintos?

El tipo de datos que usamos en la declaración de la variable determina la cantidad de espacio que se reserva en memoria y cómo el dato que contiene la variable se representará como número binario.

Page 13: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

13

La declaración y uso de variables (cont.)

Tipobyte

short

int

long

float

double

Tamaño1 byte2 bytes4 bytes8 bytes4 bytes8 bytes

Page 14: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

14

La declaración y uso de variables (cont.)

Los siguientes son ejemplos de declaraciones de variables numéricas: int age, yearsInSchool; int numberOfBooks = 0; double salary = 1500.75; double sumOfPrices = 0.0, itemPrice;

Note que se pueden declarar varias variables usando un mismo enunciado y que se pueden indicar valores iniciales para las variables.

Page 15: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

15

La declaración y uso de variables (cont.)

El siguiente programa muestra cómo declarar y usar una variable:

public class VariableExample {

public static void main(String[] args) { int value = 5;

System.out.println(“Value is " + value); value = 10; System.out.println("Now, value is " + value); }} El programa mostrará en pantalla lo

siguiente:Value is 5Now, value is 10

Page 16: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

16

Las constantes

Además de variables, un programa puede contener constantes, que representan valores que no cambian.

Por ejemplo, en Matemáticas el valor de π es una constante (aproximadamente 3.14159265).

Otra constante es la cantidad de horas en un día (siempre es 24) o la cantidad de días en un año (aproximadamente 365.25).

Page 17: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

17

Las constantes (cont.)

Consideremos el siguiente programa para determinar la cantidad de días vividos por una persona de 18 años:

public class DaysLivedApp {

public static void main(String[] args) { final double DAYS_PER_YEAR = 365.25; int age; double daysLived;

age = 18; daysLived = age * DAYS_PER_YEAR; System.out.println("You have lived " + daysLived + " days."); }}

Multiplicación

Page 18: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

18

Las constantes (cont.)

En el programa anterior, se declaron las siguientes variables: age – la edad de la persona daysLived – la cantidad de días vividos

Además se declaró una constante simbólica: DAYS_PER_YEAR – la cantidad de días

en un año (= 365.25)

Page 19: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

19

Las constantes (cont.)

El siguiente enunciado declara una constante simbólica en el programa:final double DAYS_PER_YEAR = 365.25;

Una constante simbólica es un identificador que representa un valor que NO puede cambiar a medida que se ejecuta el programa.

Page 20: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

20

Las constantes (cont.)

En enunciado que declara la constante simbólica se pueden observar dos cosas importantes: La palabra reservada final indica que

se declara una constante simbólica. Por costumbre el nombre de una

constante simbólica se escribe usando solamente letras mayúsculas y el subrayado.

Page 21: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

21

Las constantes (cont.)

Además de constantes simbólicas, los programas también contienen literales.

Un literal es un valor que aparece directamente en el código del programa. Por ejemplo: los valores 18, 365.26, “You

have lived ” y “ days.” son literales en el programa discutido.

Page 22: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

22

Las constantes (cont.)

Los literales también se identifican por su tipo de datos: -452 es un literal que representa un

número entero. 64.97 es un literal que representa un

número real. ‘s’ es un literal que representa un

caracter. “The final value is ” es un literal que

representa una cadena de caracteres. true y false son literales que

representan valores lógicos o booleanos.

Page 23: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

23

Las constantes (cont.)

Cuando se escriben literales que representan números se deben seguir las siguientes reglas: Se pueden usar dígitos y los símbolos +

(positivo) o – (negativo). No se pueden usar comas No se pueden incluir unidades

monetarias, de medida o de cualquier otro tipo

Page 24: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

24

Las constantes (cont.)

Los siguientes son literales válidos usados para inicializar variables: int number = 1235; int age = 6; double commissionPercent = 0.10; double payRate = 50.00; double weight = 100.5;

Estos enunciados son inválidos: int number = 1,235; int age = 6 years; double commissionPercent = 10%; double payRate = $50.00; double weight = 100.5 lbs;

Page 25: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

25

Las constantes (cont.)

En el caso de lo números reales, los literales pueden representarse en notación científica, utilizando la “notación E”.

La siguiente tabla muestra algunos ejemplos:Notación Decimal Notación Científica Notación E4728.19 4.72819 × 103 4.72819E30.00072 7.2 × 10-4 7.2E-42900000 2.9 × 106 2.9E6

Page 26: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

26

Las expresiones numéricas

En el programa de nuestro ejemplo (DaysLivedApp) se calcula la cantidad de días vividos por la persona evaluando la siguiente expresión:

age * DAYS_PER_YEAR Una expresión consiste de conjunto

de valores (operandos) a los que se le aplica un proceso (operador) para obtener un resultado.

Page 27: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

27

Las expresiones numéricas (cont.)

Las expresiones numéricas son las que, al ser evaluadas, resultan en un valor numérico.

Los siguientes son expresiones numéricas:

5 + 3 5 + 2 * 48 * 5 – 2 8 * (5 – 2)12 + 6 / 3 (4 + 17) % 2 - 1

Page 28: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

28

Las expresiones numéricas (cont.)

Los operadores aritméticos de Java son:

+ Suma

- Resta* Multiplicación/ División% Módulo o Residuo

Page 29: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

29

Las expresiones numéricas (cont.)

Los operadores de suma (+), resta (-), multiplicación (*) y división (/) producen un resultado entero si ambos operandos son enteros:Expresión Resultado76 + 55 131112 – 34 7812 * 8 9617 / 3 5 (¡Cuidado!)

Page 30: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

30

Las expresiones numéricas (cont.)

Los operadores de suma (+), resta (-), multiplicación (*) y división (/) producen un resultado real si por lo menos uno de sus operandos es un número real:Expresión Resultado76.3 + 55.24 131.54112.9 – 34 78.912 * 8.3 99.617.0 / 3

5.666666666667

Page 31: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

31

Las expresiones numéricas (cont.)

El operador % devuelve el residuo al dividir el primer operando por el segundo. Por ejemplo, 17 % 3 devuelve 2

Cuando se usa el operador % ambos operandos tienen que ser enteros.

El operador % se utiliza mucho en problemas en los cuales se necesita obtener el sobrante de una división: Detección de números impares o pares Determinar cantidad de horas y minutos

sobrantes dado la cantidad total de minutos

Page 32: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

32

Las expresiones numéricas (cont.)

En Java los operadores se ejecutan en el siguiente orden (reglas de precedencia) *, / y % de izquierda a derecha + y – de izquierda a derecha

Se pueden utilizar paréntesis, pero no corchetes, para lograr que ciertas operaciones se ejecuten antes de lo establecido.

Page 33: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

33

Las expresiones numéricas (cont.)

Los siguientes son ejemplos de expresiones que utilizan operadores aritméticos:Expresión Resultado Expresión

Resultado5 + 2 * 4 13 (5 + 2) * 4 2820 / 5 – 3 1 20 / (5 – 3) 108 + 12 * 2 – 4 28 (8 + 12) * 2 – 4 364 + 17 % 2 – 1 4 (4 + 17) % 2 – 1 06 – 3 * 2 + 7 – 1 6 (6 – 3) * (2 + 7) – 1 26

Page 34: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

34

Los enunciados de asignación y las expresiones numéricas

Lo siguiente es un enunciado de asignación:daysLived = age * DAYS_PER_YEAR;

En un enunciado de asignación se evalúa la expresión a la derecha del signo de = y se asigna el resultado a la variable de la izquierda.

Page 35: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

35

Los enunciados de asignación y las expresiones numéricas (cont.)

Los siguientes son ejemplos de enunciados de asignación que evalúan expresiones numéricas:cost = 5.99 + 17.50 + 2.35;

tax = cost * .07;

total = cost + tax - discount;

average = (nota1 + nota2 + nota3)/ 3.0; Note en el último enunciado que, si no se

colocan los paréntesis, el promedio se calcularía incorrectamente.

Page 36: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

36

Los enunciados de asignación y las expresiones numéricas (cont.)

Al símbolo = se le conoce como el operador de asignación.

Al lado izquierdo del operador de asignación solamente puede aparecer una variable (la que almacenará el resultado).

Al lado derecho del operador de asignación puede aparecer: Un literal Una constante simbólica Una variable Una expresión que combine los anteriores

Page 37: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

37

Los enunciados de asignación y las expresiones numéricas (cont.)

Los siguientes son algunos ejemplos de enunciados de asignación: value1 = 15; value2 = HOURS_PER_DAY; value3 = value1; value4 = value2 * 5; value3 = value3 + 1;

Note en el último ejemplo que matemáticamente esto no tiene sentido pero en programación esto equivale a aumentar por uno el valor de la variable. Este enunciado lo podemos usar para simular el

proceso humano de contar.

Page 38: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

38

Los enunciados de asignación y las expresiones numéricas (cont.)

Un enunciado de asignación comovalue3 = value3 + 1;

es tan común en programación que Java incluye una serie de operadores diseñados específicamente para abreviar estos enunciados.

Los operadores compuestos combinan la operación de asignación con una operación aritmética.

Page 39: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

39

La conversión entre tipos de datos numéricos

Para que se almacene un valor en una variable es necesario que el tipo del valor sea compatible con el declarado para la variable.

Java hace algunas conversiones automáticamente de forma que el valor y la variable donde se almacena sean compatibles excepto si esto puede ocasionar perdida de datos.

Page 40: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

40

La conversión entre tipos de datos numéricos (cont.)

Por ejemplo, los siguientes enunciados no causarán ningún problema:int number = 60;

double value = number;

El segundo enunciado declara la variable value como de tipo double y le asigna 60.0

Note que el 60 de la variable number se convirtió de forma automática a 60.0 ya que no se pierde información en la conversión.

Page 41: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

41

La conversión entre tipos de datos numéricos (cont.)

Los siguientes enunciados sí causarán problemas:double number = 6.579;int value = number;

En este caso, no se puede asignar el valor de number a value a menos que se haga una de dos cosas con el 6.579: Se redondea el valor, convirtiéndolo en 7 Se trunca el valor (se descarta la parte

fraccionaria), convirtiéndolo en 6 En ambos casos, la conversión causa

pérdida de información y no se realiza automáticamente, causando un error de sintaxis.

Page 42: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

42

La conversión entre tipos de datos numéricos (cont.)

¿Cómo Java sabe si puede hacer la conversión automática?

En Java los tipos de datos guardan una jerarquía u orden de precedencia.

La conversión de un valor de menor jerarquía a uno de mayor jerarquía (widening) se realiza automáticamente.double Mayor Jerarquíafloatlongintshortbyte Menor Jerarquía

Page 43: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

43

La conversión entre tipos de datos numéricos (cont.)

La conversión de un valor de mayor jerarquía a uno de menor jerarquía (narrowing) causa un error de sintaxis a menos que el programador fuerce esta conversión haciendo type casting.

En los siguientes enunciados se utilizó el type casting para convertir el 6.579 a entero truncando y almacenar el nuevo valor (ahora 6) en value.double number = 6.579;int value = (int)number;

Page 44: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

44

La conversión entre tipos de datos numéricos (cont.)

Otro ejemplo:int exam1 = 97, exam2 = 88, exam3 = 93;

double average = (exam1 + exam2 + exam3) / 3;

¿Qué se almacena en average? Aunque el promedio es 92.66667, se almacena

92.0 debido a que la división de enteros descartó la parte fraccionaria del resultado.

Para resolver este problema se puede usar type casting:int exam1 = 97, exam2 = 88, exam3 = 93;

double average = (double)(exam1 + exam2 + exam3) / 3;

Page 45: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

45

La conversión entre tipos de datos numéricos (cont.)

public class StudentAverageApp {

public static void main(String[] args) { int exam1 = 97, exam2 = 88, exam3 = 93; double average;

average = (double)(exam1 + exam2 + exam3) / 3; System.out.println("The average is " + average); }}

Page 46: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

46

Los caracteres y el tipo de datos char

Como se indicó al inicio de esta lección, Java provee el tipo de datos char para variables en las que se almacena un solo caracter.

Esto quiere decir que dentro de la variable se puede guardar una letra, dígito, espacio o cualquier otro símbolo que aparezca en el teclado.

Page 47: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

47

Los caracteres y el tipo de datos char (cont.)

El siguiente programa muestra el uso de char:

public class CharExample {

public static void main(String[ ] args) {

char currentChar = 'A';

System.out.println("The current character is " +

currentChar);

currentChar = 'B';

System.out.println("The new character is " +

currentChar);

}

}

Page 48: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

48

Las cadenas de caracteres y la clase String

Una variable que almacenará una cadena de caracteres debe ser declarada de tipo String.

Una cadena de caracteres (String) puede ser un nombre, varias letras, una frase, una oración o cualquier combinación de caracteres entre comillas dobles.

Page 49: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

49

Las cadenas de caracteres y la clase String (cont.)

La letra S mayúscula de la palabra String indica que éste es el nombre de una clase.

En Java, las clases pueden ser usadas para: Representar programas como los que hemos

escrito en el curso. Representar bibliotecas de rutinas (por

ejemplo: System, JOptionPane, Math). Representar tipos de datos adicionales a los

tipos de datos primitivos (por ejemplo: String).

Page 50: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

50

Las cadenas de caracteres y la clase String (cont.)

Los tipos de datos primitivos representan valores atómicos, ésto es, que no se subdividen.

En Java los tipos de datos primitivos son: Enteros: short, byte, int, long Reales: float, double Caracteres: char Lógicos o Booleanos: boolean

Page 51: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

51

Las cadenas de caracteres y la clase String (cont.)

El tipo String se considera un tipos de datos compuesto ya que se construyen a base de datos primitivos (los caracteres).

Otro nombre para los tipos de datos compuestos en Java es tipos de referencia.

Page 52: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

52

Las cadenas de caracteres y la clase String (cont.)

Las variables cuyo tipo de datos es de referencia (como String) son particulares ya que no almacenan directamente el valor que se les asigna.

Por razones técnicas que veremos en el próximo curso, el valor se almacena en un lugar distinto a donde se almacena la variable.

Page 53: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

53

Las cadenas de caracteres y la clase String (cont.)

A este tipo de valor se le conoce como un objeto.

La variable de tipo String almacena la dirección donde se encuentra el objeto.

Se dice, por lo tanto, que una variable de tipo String contiene una referencia al valor asignado (el objeto).

Page 54: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

54

Las cadenas de caracteres y la clase String (cont.)

Por ejemplo:int number = 5;

char grade = ‘B’;

String cityName = “Bayamón”;

Esto es lo que se almacena en RAM:number 5

grade ‘B’

cityName address “Bayamón”

Page 55: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

55

Las cadenas de caracteres y la clase String (cont.)

El operador más importante para manejar strings es la concatenación (+).

Este operador simplemente une dos valores alfanuméricos.

Ejemplos: “Ja” + “va” “Java” “Puerto ” + “Rico” “Puerto Rico”

Page 56: Conceptos de Manejo de la Memoria Principal, Tipos de Datos y Expresiones Algoritmos y Desarrollo de Programas I.

56

Las cadenas de caracteres y la clase String (cont.)

En Java si se utiliza + y uno de los operandos es del tipo String, se convierten los demás operandos al string correspondiente y se concatenan.

Por ejemplo: ‘P’ + “uerto Rico” “Puerto Rico” “Your age is ” + 18 “Your age is 18” “The result is ” + (5 + 3) “The result is 8”

Este comportamiento es usado para mostrar valores de distintos tipos en la pantalla.