Ecco un esempio di classe fx:
public class Address {
public var street: String;
public var city: String;
public var state: String;
public var zip: String;
}
Il punto e virgola a fine riga é opzionale, ma per chi abbia java nel suo background viene più naturale mettercelo.
Per definire un oggetto di tipo Address farò così:
def myAddress = Address {
street: "1 Main Street";
city: "Santa Clara";
state: "CA";
zip: "95050";
}
Ma lasciamo un attimo in sospeso classi e oggetti e passiamo a vedere i tipi di dato, ovvero la quarta lezione.
String
Una stringa può essere delimitata indifferentemente da singoli o doppi apici, e all'interno di una stringa é possibile quotare espressioni mettendole tra parentesi graffe:
var hi = 'Hello';
def name = "Joe";
var s1 = "{hi} {name}"; // s1 = 'Hello Joe'
A sua volta un espressione contenuta in una stringa può contenere stringhe, e così via:
def answer = true;
var s2 = "The answer is {if (answer) "Yes" else "No"}"; // s = 'The answer is Yes'
Un semplice modo per unire due stringhe é questo:
def one = "This example ";
def two = "joins two strings.";
def three = "{one}{two}";
println(three); // 'This example joins two strings.'
Number e Integer
Ci pensa il compilatore a scegliere il tipo appropriato delle nostre variabili e costanti, e questo vale anche nella scelta tra interi e reali, in ogni caso possiamo esplicitare la scelta dichiarando il tipo di variabile (nell'esempio a seguire, le righe commentate avrebbero lo stesso effetto delle righe precedenti):
def numOne = 1.0; // Number
// def numOne : Number = 1.0;
def numTwo = 1; // Integer
// def numTwo : Integer = 1;
Nota che con javaFX sono diventati disponibili tutti i tipi numerici di java (Byte, Short, Number, Integer, Long, Float, Double, Character), anche se si consiglia di non abusare della nuova libertà.
Boolean
Il tipo Boolean rappresenta due valori: true e false.
var isAsleep = true;
Duration
Usato per specificare una durata in unità temporali. Se ne parlerà meglio più avanti.
5ms; // 5 millisecondi
10s; // 10 secondi
30m; // 30 minuti
1h; // 1 ora
Void
Usato per indicare che una funzione é in realtà una procedura, e quindi non ritorna nulla. Dato che una funzione per default non ritorna nulla, si può fare a meno di indicare che sia di tipo Void (e nota che il tipo é Void con la V maiuscola)
function printMe() : Void {
println("I don't return anything!");
}
null
Invece null si scrive con la n minuscola. Indica la mancanza di un valore normale per una determinata variabile.
Nessun commento:
Posta un commento