为了账号安全,请及时绑定邮箱和手机立即绑定

为什么 ListIterator 与 Stream 有何不同

为什么 ListIterator 与 Stream 有何不同

慕码人8056858 2023-12-13 15:07:42
我们有一个字典 txt 文件,我们转换为 String[ ] simpleArray我们很少使用数组,所以这个超出了我们的舒适区它有 466552 个这种格式的项目 40 个细菌当我们检查拼写错误的单词时,它的速度非常快当我们去返回列表并检查我们使用 ListIterator 的单词拼写是否正确我们发现基于搜索词的结果很奇怪所以我们尝试使用带有过滤器和 lambda 的 Java 8 Streams以下是使用 ListIterator 和搜索词“some”的结果有人有一天,有人,有人,有人的萨默代尔,翻筋斗,萨默塞特郡,萨默斯维尔,某事,某时,某时,某时,某时,某时,索米克以下是使用 ListIterator 搜索词“someo”和“someon”的结果有人会分开以下是使用带有过滤器和 lambda 的 Steam 的结果,搜索词是“someon”某人 某人 某人 某人 某人 某人问题是我们是否正确构建了 ListIterator 代码?当代码运行时,它不会产生可靠的结果我们很高兴知道 Stream 代码是否可以以不同的方式构建 我们的目标是将项目添加到列表视图中,目前结果位于文本区域中我们之前没有使用过列表视图
查看完整描述

1 回答

?
翻翻过去那场雪

TA贡献2065条经验 获得超13个赞

我们很高兴知道 Stream 代码是否可以以不同的方式构建


我们向您的项目添加了一些项目,即 ComboBox 和 ListView

为什么?如果您计划选择 Stream 生成的信息,那么在选择项目(文本)时,TextArea 是一个真正的负担。

我们注意到您有一个 ArrayList 列表,Stream 将数据添加到其中,

因此不需要所有替换代码。我们向 ListView 添加了一个 SelectionModel 监听器


这是带有旧剩余代码的代码

这就是组合框所需的全部内容


 public void CboSelect(){

 months = FXCollections.observableArrayList();

}


@FXML

public void getSP(){

    String selected = cboSP.getValue().toString();

    System.out.println("S S S selected "+selected); 

}

这是新艺术作品哈哈


        }if(found != true){


        lvListView.setStyle("-fx-font-size:18.0;-fx-background-color: white;");

        for(indexSC = 0; indexSC < simpleArray.length;indexSC++){

        if(simpleArray[indexSC].toLowerCase().contains(txtTest.getText().trim().toLowerCase())){

        // array stream foreach filter results to textarea javafx

        List<String> cs = Arrays.asList(simpleArray);


        ArrayList list = new ArrayList<>();

        cs.stream().filter(s -> s.startsWith("someon"))

          //.forEach(System.out::println); 

        .forEach(list :: add);   

        //String aL = list.toString();

        //System.out.println("!!!! aL "+aL);

        //La = list.toString().replace("[", "").replace("]","").replace(",", "").replace(" ", "\n");

        int L = list.size();

        for(int X = 0; X < L;X++){

        String A = (String) list.get(X);

        cboSP.getItems().add(A);

        txaML.appendText(A);

        txaML.appendText("\n");

        lvListView.getItems().add(A);

        System.out.println(" = = L "+L+" Num "+A);

        }


        lvListView.getSelectionModel().selectedItemProperty()

        .addListener((observable, oldValue, newValue) -> {

        System.out.println(newValue);});

我们找不到太多关于 ListIterators 在性能方面的行为

我们查看了一些关于 Streams 的帖子似乎是 Java 8 的新事物


查看完整回答
反对 回复 2023-12-13
  • 1 回答
  • 0 关注
  • 52 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信