Diferencia entre revisiones de «Usuario:ManuelRomero/expresiones»

De WikiEducator
Saltar a: navegación, buscar
Línea 2: Línea 2:
 
{{:Usuario:ManuelRomero/CursoJavaUml/java/sintaxis/nav}}
 
{{:Usuario:ManuelRomero/CursoJavaUml/java/sintaxis/nav}}
  
 +
{{#widget:Slides}}
 +
<div class="slides layout-regular template-default">
 +
=ASIGNACIÓN Y EXPRESIONES EN JAVA=
 +
<div class="slide">
 
===INSTRUCCION DE ASIGNACIÓN===
 
===INSTRUCCION DE ASIGNACIÓN===
 
El operador de asiganción es '''='''
 
El operador de asiganción es '''='''
Línea 7: Línea 11:
 
  variable = expresion
 
  variable = expresion
 
El tipo de la variable y el de la expresión deben coincidir
 
El tipo de la variable y el de la expresión deben coincidir
 +
En algunos casos que veremos java realiza una conversión implícita
 +
int numEntero = 19;
 +
float numFloat;
 +
numFloat=numEntero //Java realiza la conversión
 +
numEntero=numFloat;//Error no deja realizar esta conversion
 +
</div>
 +
====Asignación entre tipos====
 +
<div class="slide">
 +
Examine el siguiente código
 +
<source lang=java>
 +
public class AsignacionEnteros {
 +
public static void main(String lista[]){
 +
int numEntero=10;
 +
float numFloat;
 +
numFloat=numEntero; //Java realiza la conversión
 +
//numEntero=numFloat;//Comentamos esta línea ya que da Error
 +
System.out.print("Valor de entero  "+numEntero+" y de float "+numFloat);
 +
}//End Main
 +
}//End Caracteres
 +
</source>
 +
Genera la siguiente salida
 +
Valor de entero  10 y de float 10.0
 +
====Conversiones entre tipos====
 +
{| class="wikitable"
 +
|+ CONVERSIONES IMPLÍCITAS
 +
! Tipo destino!! Se puede asignar este tipo
 +
|-
 +
|  short, int, long, float, double|| byte
 +
|-
 +
|  int, long, float, double ||short
 +
 +
|-
 +
|  int, long, float, double ||char
 +
|-
 +
| long, float, double ||int
 +
|-
 +
|  double ||long,float
 +
 +
|}
  
 
====Asignacion entre objetos====
 
====Asignacion entre objetos====

Revisión de 07:45 3 abr 2012

Road Works.svg Trabajo en proceso, espera cambios frecuentes. Tu ayuda y retroalimentación son bienvenidos.
Ver página de charlas.
Road Works.svg




ASIGNACIÓN Y EXPRESIONES EN JAVA

INSTRUCCION DE ASIGNACIÓN

El operador de asiganción es = La sintaxis es

variable = expresion

El tipo de la variable y el de la expresión deben coincidir En algunos casos que veremos java realiza una conversión implícita

int numEntero = 19;
float numFloat;
numFloat=numEntero //Java realiza la conversión
numEntero=numFloat;//Error no deja realizar esta conversion

Asignación entre tipos

Examine el siguiente código

public class AsignacionEnteros {
	public static void main(String lista[]){
		int numEntero=10;
		float numFloat;
		numFloat=numEntero; //Java realiza la conversión
		//numEntero=numFloat;//Comentamos esta línea ya que da Error 
		System.out.print("Valor de entero  "+numEntero+" y de float "+numFloat);
	}//End Main
}//End Caracteres

Genera la siguiente salida

Valor de entero  10 y de float 10.0

Conversiones entre tipos

CONVERSIONES IMPLÍCITAS
Tipo destino Se puede asignar este tipo
short, int, long, float, double byte
int, long, float, double short
int, long, float, double char
long, float, double int
double long,float

Asignacion entre objetos

import java.util.Scanner;
public class Definicion {
	public static void main(String []a){
		String nom;
		Scanner l1,l2;
		l1=new Scanner(System.in);
		l2=l1; //En realidad son el mismo elemento ya que son la misma dirección de memoria
		System.out.println("dame tu nombre que leeré con L2");
		nom = l2.next(); //introduzco Manuel Romero Miguel Perez
		System.out.println("Leyendo de L2 " +nom);// Visualiza Manuel
		System.out.println("dame tu nombre L1");
		nom=l1.next();//No espera ya que todavia tiene en el buffer Romero Miguel Perez 
		System.out.println("Leyendo de L1 " +nom); //Visualiza Romero
        nom = l2.next();
        System.out.println("Resto de  L2 " +nom);//Visualiza Miguel
        nom = l1.next();
        System.out.println("Resto de  L1 " +nom);//Visualiza Lopez
	}
}

Salida del código anterior

dame tu nombre que leeré con L2
Manuel Romero Miguel Pérez
Leyendo de L2 Manuel
dame tu nombre L1
Leyendo de L1 Romero
Resto de  L2 Miguel
Resto de  L1 Pérez

Probar a que l1 y l2 sean dos objetos diferentes

l1=new Scanner(System.in);
l2=new Scanner(System.in);

Y no hacemos la asignacion l2=l1



Icon qmark.gif

Pregunta

observamos la diferencia?
  1. ahora l1 y l2 son dos buffers diferente
  2. cada uno guarda historia de lo que almacea



la expresion

Un literal puede ser un valor de los siguientes tipos numérico boolean

false true

caracter

Literal entre comillas simples  'c' 
Secuencia unicode \u064   
Secuencia de escape \t