Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Clojure 对于选择返回的元素的顺序是否有任何保证?_Clojure_Seesaw - Fatal编程技术网

Clojure 对于选择返回的元素的顺序是否有任何保证?

Clojure 对于选择返回的元素的顺序是否有任何保证?,clojure,seesaw,Clojure,Seesaw,我有九个文本框嵌套在垂直面板中,我想从中获取文本并使用它们。为了方便起见,我只是使用select按类获取它们,然后将它们应用于记录的构造函数。基本上是这样的: (ns example.core (:require [seesaw.core :as sc])) (apply ->RecordConstructor (sc/select root [:.textbox])) 这似乎和我预期的一样有效,但是我还没有找到任何关于select返回其元素的顺序的正式定义 这似

我有九个文本框嵌套在垂直面板中,我想从中获取文本并使用它们。为了方便起见,我只是使用
select
按类获取它们,然后将它们应用于记录的构造函数。基本上是这样的:

(ns example.core
    (:require [seesaw.core :as sc]))

(apply ->RecordConstructor
       (sc/select root [:.textbox]))
这似乎和我预期的一样有效,但是我还没有找到任何关于
select
返回其元素的顺序的正式定义


这似乎是基于元素被赋予其父元素的顺序。这是正确的吗?

我不是专家,但看起来跷跷板只是对其文档模型进行了深度优先的树遍历。所以没有什么可以保证的,但是可以肯定的是,听起来你会按照这样的顺序得到东西:深度优先,最左边的优先。这里的“左”是指跷跷板存储其内容的顺序,而不一定是显示顺序。我也不知道这是什么顺序,但你对“你在模型中添加内容的顺序”的猜测对我来说似乎和任何猜测一样好。

我不是专家,但看起来跷跷板只是对其文档模型进行了深度优先的树漫游。所以没有什么可以保证的,但是可以肯定的是,听起来你会按照这样的顺序得到东西:深度优先,最左边的优先。这里的“左”是指跷跷板存储其内容的顺序,而不一定是显示顺序。我也不知道那是什么顺序,但你对“你在模型中添加东西的顺序”的猜测对我来说似乎和任何猜测一样好。

什么是
sc
名称空间?@AlanThompson哇。这是我在跷跷板核心的别名。因为问题是用跷跷板标记的,所以我将删除它。就我个人而言,我非常希望您在代码段前面加一个
(ns foo.core(:require[seesaw.core:as sc])
(require'[,,:as sc])
。Clojure core有数百个VAR,很难知道从哪里来的。特别是在这个站点上的一个代码片段中,在您拥有共享上下文的代码库之外。(即使是在代码库内部,我也宁愿(几乎)从不:引用或:使用任何东西,但你在闭门后所做的事情是你和你的同事之间的事。)只需我的2c。@madstap修复了。
sc
名称空间是什么?@AlanThompson哇。这是我在跷跷板核心的别名。因为问题是用跷跷板标记的,所以我将删除它。就我个人而言,我非常希望您在代码段前面加一个
(ns foo.core(:require[seesaw.core:as sc])
(require'[,,:as sc])
。Clojure core有数百个VAR,很难知道从哪里来的。特别是在这个站点上的一个代码片段中,在您拥有共享上下文的代码库之外。(即使是在代码库内部,我也宁愿(几乎)从不:引用或:使用任何东西,但你在闭门后所做的事情是你和你的同事之间的事。)只需要我的2c。@madstap修复。