第 4 课:数据类型

本文介绍了几种常见的内置数据类型,包括String、Number、Integer、Boolean、Duration、Void和null,并详细解释了每种类型的特性和用途。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
第 4 课:数据类型
我们以前见过对象类型的一些示例:AddressCustomer。内置类型 StringNumberIntegerBooleanDuration 也是对象类型。本课将讨论这些内置类型,还将讨论 Void 类型和 null
 
目录
 
String
Number 和 Integer
Boolean
Duration
Void
null
 

您已经见过许多 String 示例,但现在让我们更全面详尽地研究一下该类型!可以使用单引号或双引号来声明 String

var s1 = 'Hello';
var s2 = "Hello";
 

单引号和双引号是对称的:您可以在双引号中嵌入单引号,也可以在单引号中嵌入双引号。使用单引号括起来的字符串和使用双引号括起来的字符串没有任何区别。

您还可以使用花括号 "{}" 在字符串中嵌入表达式

def name = 'Joe';
var s = "Hello {name}"; // s = 'Hello Joe'
 

嵌入的表达式本身可以包含用引号括住的字符串,这些字符串中又可以进一步嵌入表达式:

def answer = true;
var s = "The answer is {if (answer) "Yes" else "No"}"; // s = 'The answer is Yes'
 

在运行时,如果 answer 的值为 true,则编译器会将上面的粗体表达式替换为字符串 "Yes",否则会将其替换为 "No"。

要联接(串联)多个字符串,请在引号中使用花括号:

def one = "This example ";
def two = "joins two strings.";
def three = "{one}{two}"; // join string one and string two
println(three); // 'This example joins two strings.'
 

NumberInteger 类型表示数值型数据,尽管对于大多数脚本任务来说,您通常只需让编译器推断正确的类型:

def numOne = 1.0; // compiler will infer Number 
def numTwo = 1; // compiler will infer Integer
 

但是,您可以显式声明变量的类型:

def numOne : Number = 1.0;
def numTwo : Integer = 1;
 

这两种类型之间的区别是,Number 表示浮点数字,而 Integer 仅表示整数。只有当您确实需要浮点精度时才应使用 Number,否则应首选 Integer

Boolean 类型表示两个值:true 或 false。在以下两种情况下使用此类型:设置某个特定于应用程序的内部状态时:

var isAsleep = true;
 

或者计算条件表达式时:

if (isAsleep) {
wakeUp();
}
 

如果小括号 "()" 中的表达式为 true,将执行花括号 "{}" 中的代码。有关条件表达式的更多信息,请参见表达式一课。

Duration 类型表示固定的时间单元(毫秒、秒、分钟或小时)。

5ms; // 5 milliseconds
10s; // 10 seconds
30m; // 30 minutes
1h; // 1 hour
 

持续时间用时间字面值来标记,例如,5m 是一个表示五分钟的时间字面值。时间字面值最常用在动画(您将在使用 JavaFX 构建 GUI 应用程序中的创建动画对象一课中学习动画)中。

Void 用来指示函数不返回任何值:

function printMe() : Void {
println("I don't return anything!");
}
 

这与下面的代码等效,这些代码中省略了函数的返回类型:

function printMe() {
println("I don't return anything!");
}
 

JavaFX 关键字 Void 以大写字母 V 开头。如果您熟悉 Java 编程语言中的 void,则应当注意这一点。


注:在 JavaFX 中,一切都是表达式。第二个 printMe 函数的返回类型也是 Void,因为编译器能够推断其类型。 表达式一课将对此进行深入介绍。

null 是一个特殊的值,用来指示缺少正常值。null 与零或空字符串不同,因此 null 比较与零或空字符串比较不同。

允许使用 null 关键字进行比较。您通常会看到以下使用 null 的情形:

function checkArg(arg1: Address) {
if(arg1 == null) {
println("I received a null argument.");
} else {
println("The argument has a value.");
}
}
 

此函数接受一个参数,然后执行简单的测试来检查其值是否为 null

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值