`
suifongqi
  • 浏览: 55596 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

JFX学习笔记 三 重修语法之数组(2)

    博客分类:
  • JAVA
阅读更多
网速质素不高.....
继续数组吧,之前我在使用时出现了一些错误,但语法又没问题,最后发现是在代码中使用了中文的字符,相当无语。NetBeans的功能有待加强,反正我是觉得没有myeclipse舒服,懒啦。
修改数组:
除了赋值操作(=)之外,JavaFX 还提供数据修改操作符(insert 和delete)
insert语句
可以用下面方式中的任意一种进行声明:
insert Expression1 [as first | as last] into Expression2
insert Expression1 before Expression2
insert Expression1 after Expression2

注意:Expression2必须指向一个属性或者变量。如果Expression2指向一个单值属性,那么插入的效果等同于赋值操作。as first指明在Expression2第一个元素前,as last相反。缺省设置为as last
var x = [1,2,3];
insert 12 into x; // yields [1,2,3,12]
insert 10 as first into x; // yields [10,1,2,3,12]
insert [99,100] as last into x; // yields [10,1,2,3,12,99,100]
另外还有更精确的插入方式before,after
Expression2必须是在属性或者变量之上的选择表达式。如果指定了before,那么插入位置就是在被选择的元素之前。如果指定了after,插入位置则在被选择的元素之后。
例如:
var x = [1,2,3];
insert 10 after x[. == 10]; // yields [1,2,3,10]
insert 12 before x[1]; // yields [1,12,2,3,10]
insert 13 after x[. == 2]; // yields [1, 12, 2, 13, 3, 10];

有了插入当然就有删除,关键字delete
delete variable
delete Expression.attribute
delete variable[predicate]
delete Expression.attribute[predicate]

前两种用法是赶尽杀绝全部赋值为null,后两种是指定元素或属性删除
var x = [1,2,3];
insert 10 into x; // yields [1,2,3,10]
insert 12 before x[1]; // yields [1,12,2,3,10]
delete x[. == 12]; // yields [1,2,3,10]
delete x[. >= 3]; // yields [1,2]
insert 5 after x[. == 1]; // yields [1,5,2];
insert 13 as first into x; // yields [13, 1, 5, 2];
delete x; // yields []
增删改查,现在JFX都提供了,别的不说JFX在重视数组操作上确实有优势..
select .... where用法

class Album {
attribute title: String;
attribute artist: String;
attribute tracks: String*;
}

var albums =
[Album {
title: "A Hard Day's Night"
artist: "The Beatles"
tracks:
["A Hard Day's Night",
"I Should Have Known Better",
"If I Fell",
"I'm Happy Just To Dance With You",
"And I Love Her",
"Tell Me Why",
"Can't Buy Me Love",
"Any Time At All",
"I'll Cry Instead",
"Things We Said Today",
"When I Get Home",
"You Can't Do That"]
},
Album {
title: "Circle Of Love"
artist: "Steve Miller Band"
tracks:
["Heart Like A Wheel",
"Get On Home",
"Baby Wanna Dance",
"Circle Of Love",
"Macho City"]
}];
// Get the track numbers of the albums' title tracks
// using the select operator:
var titleTracks =
select indexof track + 1 from album in albums,
track in album.tracks
where track == album.title; // yields [1,4]
// the same expressed using the foreach operator:
titleTracks =
foreach (album in albums,
track in album.tracks
where track == album.title)
indexof track + 1; // also yields [1,4]

开发指南上有这段代码例子,不知道为什么netbeans下无法识别in,郁闷...期待答案





分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    java1.8版本,jre,jfx

    值得注意的是,从Java 9开始,JavaFX被移出JDK的核心部分,成为一个独立的模块,但在Java 8中,它还是内置的,这正是"jfx"标签所指的内容。 在压缩包中,"java"文件可能包含了Java 1.8的完整安装程序或者特定组件,...

    emed6004jfx工具`

    标题中的"emed6004jfx工具"很可能是指一个特定的软件或应用程序,而`.rar`文件格式表明这是一个压缩包,通常用于存储和传输多个文件。从描述中我们可以看到,这个压缩包的名字是`emed6004jfx.rar`,并且要求字符数...

    俄罗斯方块jfx源代码

    2. 游戏板类(GameBoard):这是游戏的核心部分,通常会维护一个二维数组来表示游戏板的状态,记录每个位置是否有方块。方块的下落、消除行以及分数计算都会在这个类中实现。 3. 控制器类(Controller):处理用户...

    JFX例子

    JFX的例子是学习JavaFX的基础,通过这些示例,初学者可以快速了解并掌握JavaFX的基本概念和技术。 在提供的文件列表中,我们可以看到两个部分的教程:“JavaFX发现之旅:JavaFX Script With Eclipse 入门”。这部分...

    JFX3DModelImporters_EA_2014-02-09_jfx3d_JFX3DModelImporters_ea_源

    这个压缩包"JFX3DModelImporters_EA_2014-02-09_jfx3d_JFX3DModelImporters_ea_源"包含了一系列的jar包,它们专门设计用于帮助开发者将不同格式的3D模型导入到JavaFX应用中。这些导入器的早期访问版本(EA)发布于...

    欧码简音5JFX输入法

    简音输入法是专为希望学好中文发音,又希望超快 地输入汉字的人设计的,单字平均出字仅1.26码,远比 同类音码快;输入编码后视屏可同显简体和繁体,极有 利于学记各简体繁体字的对应模样,同屏对比了解简体 ...

    nj4x-mt4开发中间件jfx 2.7.7版本

    MT4客户端不支持二次开发,但是服务器接口对外开发,jfx封装了Java接口,使得Java开发程序员可以轻易上手

    jfx1.2.6示例 实现了java连接MT4

    一个简单的实现了java连接MT4服务的例子

    Mimaki JFX plus Series UJF-3042 透明液体打印指南

    ### Mimaki JFX plus Series UJF-3042 透明液体打印指南 #### 一、概述 Mimaki JFX plus Series UJF-3042是一款专为工业级UV喷墨打印设计的产品,它支持特殊效果打印,如透明液体打印等功能。该设备结合了先进的...

    javafx经典教材,机不可失。。。

    一些关于javafx的教程,能很好的了解javafx!

    GameOfLife-JFX:初始项目

    总结,"GameOfLife-JFX:初始项目"是一个很好的学习和实践JavaFX以及理解生命游戏原理的平台。通过这个项目,开发者不仅可以提升JavaFX编程技巧,还能深入理解细胞自动机和复杂系统行为的模拟。

    j8draw:JDK8中的JFX 2D和3D绘图

    JDK8中的JFX 2D和3D工程图。 由于它使用的是JFX,因此需要确保您使用的是Oracle的JDK 1.8或更高版本。 如果在Eclipse中运行,由于即使在使用Oracle JDK时默认情况下也无法访问JFX,因此您将需要执行以下步骤,...

    NativeJFX:一个使用maven jfx插件和其他工具生成本机可执行文件和安装程序的演示应用程序

    本机JFX 一个使用maven jfx插件和其他工具生成本机可执行文件和安装程序的演示应用程序 构建本机捆绑包(Windows) 安装 5.5.6+ 安装 3.1.0+ 将两个程序都添加到PATH 运行mvn package 注意:制作启动器并与JRE...

    java8看不到源码-JME3-JFX:用于JME的JFXGui桥接器,具有用于常见用例的有用实用程序

    笔记 对于 jme 3.1: 版本:2.+ 分支:主 对于 jme 3.0(与 jme-3.0.10 兼容): 版本:1.+ 分支:jme_3.0 JME3-JFX 需要 java 8,但是可以使用 java 7 在纹理上绘制视频。对于 jME SDK,您应该创建一个 java 8 平台...

    FreshInvoice_jfx82w_FreshInvoice_

    标题中的"FreshInvoice_jfx82w_FreshInvoice_"似乎是指一个特定的版本或构建号,这通常是软件更新或发布时使用的标识符。FreshInvoice是一个知名的开源PHP发票管理软件,它允许用户创建、管理和发送专业发票。这个...

    jfx_game_project:game_prject_table_Type

    【标题】"jfx_game_project:game_prject_table_Type"是一个基于JavaFX开发的游戏项目,其核心特性在于利用表格(Table)元素来呈现游戏数据或交互。JavaFX是Oracle公司提供的一个用于创建桌面应用程序的开源Java库,...

    jfx-launcher:openjfx启动器工具

    JFX-Launcher 一个openJfx的自动更新器,采用模块化API加载模块。 原理 在Launcher启动的时候,会对比本地配置与服务端配置是否一致,如果服务端配置与本地不一致,则进行拉取同步。 对比条件: 版本号是否一致 各个...

    MessagingApp-JFX:具有多选项卡用户界面的聊天应用程序

    MessagingApp-JFX 具有多选项卡UI(使用JavaFX构建)的聊天应用程序。 通过TCP / IP进行通信的服务器-客户端模型。 为JVM和Arduino微控制器编写的服务器/后端代码库(测试平台为ESP32s开发板)。 文件传输功能。

    demux-jfx-core-0.8.2.zip

    标题中的"demux-jfx-core-0.8.2.zip"是一个开源项目的版本压缩包,主要涉及的是JavaFX相关的库或框架。JavaFX是Oracle公司提供的一个用于开发桌面、移动和嵌入式设备的富客户端应用程序的平台。它提供了一组图形和...

    JFX的简单回顾以及了解

    Button button3 = new Button("按钮三"); Button button4 = new Button("按钮四"); Button button5 = new Button("按钮五"); flowPane.getChildren().addAll(button1, button2, button3, button4, button5); ...

Global site tag (gtag.js) - Google Analytics