Mostrando entradas con la etiqueta mapas. Mostrar todas las entradas
Mostrando entradas con la etiqueta mapas. Mostrar todas las entradas

jueves, 31 de diciembre de 2015

Scala ... en ejemplos sencillos no. 7 [Mapas]

Los mapas o "hashmap" en lenguajes como Scala, Java, etc. son colecciones de objetos desordenados. Se compone de una "llave o identificador" y su correspondiente valor.


Mapa mapa = Mapa ()

Objeto obj= Objeto()

Integer valor= Integer()

mapa.put(obj,valor)


Podemos obtener algo como esto:
mapa: {"uno":1,"dos":2,"tres":3}
mapa:{"A":3223,"Z":4329,"W":4322,"ACF":434}

En Scala podemos crear un mapa escribiendo:
var mapa: Map[String,Int] = Map()

Un mapa vacío que puede ser llenado de la siguiente manera:
mapa += (objLlave -> valor)

Tenemos así:  Mapas.scala


object Mapas{

   def main(args: Array[String]): Unit ={

       var mapa: Map[String,Int] = Map()

       mapa += ("uno" -> 1)

       mapa += ("tres" -> 3)

       mapa += ("Clave" -> 456)

   }

}


Para recorrer el mapa creado:

mapa.keys.foreach{ k =>

     Console.println("Llave:"+k)

     Console.println("Valor:"+mapa(k))

} 



lunes, 18 de noviembre de 2013

Scala ... ejemplos sencillos no. 4

Si tuviera que escribir código sería con un lenguaje de programación que tuviera soporte, una comunidad y documentación adecuada.

Ningún lenguaje es perfecto es cierto, Scala puede parecer bastante complejo de aprender en un principio.

Empiezas a conocer Java y la programación orientada a objetos y de repente aparece este lenguaje extraño, que pretende unir dos paradigmas:

  • La programación funcional y
  • La programación orienta a objetos
Al igual que otros lenguajes dependientes de la JVM Scala (Ceylon, Groovy, etc.)tiene el objetivo de tomar lo mejor de Java y olvidarse de lo malo

Lo que llama la atención es que podemos utilizarlo sin necesidad de abandonar Java. Reutilizar código hecho en ese lenguaje en nuevos desarrollos.

1. Crear un menú para realizar operaciones de suma, resta, multiplicación y división:

object Codemonkey extends App{
 
  println("Introduce primer numero: ")
  var num1=readInt
  println("Introduce segundo número:")
  var num2=readInt
 
  while(true){ 
    var opcion=Menu.menu

   opcion match {
   case 1   => println("suma: "+Menu.suma(num1,num2))
   case 2   => println("resta: "+Menu.resta(num1,num2))
   case 3    => println("producto: "+Menu.producto(num1,num2))
   case 4 => println("division: "+Menu.division(num1,num2))
   case 5 => Menu.salida
}
   
   
  }//fin while
 
} //fin CodeMonkey

object Menu{
 
  def menu:Int={
    var opc:Int=0
    println("\tMenu")
    println("1. Suma")
    println("2. Resta")
    println("3. Producto")
    println("4. División")
    println("5. Salir")

   do{
    println("Elije una opción: ")
    opc=readInt()
   }while(opc <0 || opc >5)

    return opc
  }//fin función menu
 
  def suma(n1:Int,n2:Int)={n1+n2}
 
  def resta(n1:Int,n2:Int)={n1-n2}
 
  def producto(n1:Int,n2:Int)={n1*n2}
 
  def division(n1:Int,n2:Int):Double={n1/n2}
 
  def salida={System.exit(0)}
 
}//fin object Menu

Links
http://www.javamexico.org/categorias/lenguajes_jvm/scala
https://github.com/Sergey80/scala-samples
http://scalatutorials.com/

Jai un lenguaje de programación inspirado en C++

Hoy hablaremos de un nuevo lenguaje de programación llamado Jai . Se trata de un lenguaje de programación que está desarrolland...

Etiquetas

Archivo del blog