Entradas

Scala, aplicación swing sencilla

Imagen
Pequeño programa swing donde se hace uso de los componentes visuales más sencillos. La ventana tendrá la siguiente apariencia. package com.me.vr import java.io.File import com.me.vr.classes.RenameFiles import scala.collection.mutable.ArrayBuffer import scala.swing._ import scala.swing.event._ /** * Clase Singleton. */ object GuiProgramOne { /** * Método main de la clase * @param args */ def main(args: Array[ String ]) { val ui = new UI ui.visible = true // Este mensaje aparece y la ventana sigue ejecutandose, ya que la libreria swing se ocupa de ello println ( "Fin Main function" ) } } /** * Clase Main que genera la parte visual. * La clase UI hereda de scala.swing.MainFrame, la cual es una ventana que puede aparecer en pantalla. */ class UI extends MainFrame { // En el constructor de esta clase se establecen 3 de los campos heredados de MainFrame // Título de la ventana title = "UI en

Scala, CookBook Introducción String

val hola = "Hola" println ( "Longitud de " + hola + ": " + hola.length) // Concatenar dos cadenas val concat = hola + " Scala" println ( "Cadena concatenada: " + concat) // recorrer una cadena println ( "Recorrer " + hola) hola.foreach( println ) // otra forma println ( "Otra forma de recorrerla:" ) for (c <- hola) { println (c) } // En secuencia de bytes, getBytes devuelve un Array de Bytes println ( "Recorrer array de bytes:" ) hola.getBytes.foreach( println ) // filter println ( "Filtrar en una cadena" ) val filtro = hola.filter(_ != 'l' ) println (filtro) // metodos val drop = "scala" .drop( 2 ) // elimina dos primeros elementos println ( "drop: " + drop) val take = drop.take( 2 ) // mantiene los dos primeros elementos y descarta los siquientes println ( "take: " + take) val cap = take.capitalize // capitaliza, p

Hola Mundo en Scala

Imagen
Una vez creado un projecto en IntelliJ IDEA creamos un object. File => New => Scala Class Aparece la ventana Create New Scala Class: Name: El nombre del object a crear Kind: Object Pulsar OK /** * object declara un objeto singleton. * El m é todo main es definido en un object no en una clase. * No se marcan como static. */ object Main { /** * Main method. * def indica que es un método. * Por defecto los m é todos son public, as í que si no se indica * ning ú n modificador son public. * El tipo a devolver es Unit que es similar a void en Java. * @param args argumentos. */ def main(args: Array[ String ]): Unit = { println ( "Start app..." ) for (arg <- args) println ( "Argument: " + arg) println ( "End app" ) } }