如何对 CopyOnWriteArrayList 进行排序

2024-01-19

我想排序CopyOnWriteArrayList。但是当我尝试运行以下代码时

它正在投掷unsorted operation exception.

public class CopyOnWriteArrayListExample {

  public static void main(final String[] args) {
     List<String> list = new CopyOnWriteArrayList<>();
    list.add("3");
    list.add("2");
    list.add("1");

    Collections.sort(list);
   }
}

Exception in thread "main" java.lang.UnsupportedOperationException
at java.util.concurrent.CopyOnWriteArrayList$COWIterator.set(CopyOnWriteArrayList.java:1049)
at java.util.Collections.sort(Collections.java:159)
at com.sac.list.CopyOnWriteArrayListExample.main(CopyOnWriteArrayListExample.java:15)  

提前致谢。


Collections.sort 使用 ListIterator.set

    ...
    for (int j=0; j<a.length; j++) {
        i.next();
        i.set((T)a[j]);
    }

但CopyOnWriteArrayList的ListIterator不支持remove、set或add方法。

解决方法:

    Object[] a = list.toArray();
    Arrays.sort(a);
    for (int i = 0; i < a.length; i++) {
        list.set(i, (String) a[i]);
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何对 CopyOnWriteArrayList 进行排序 的相关文章

  • Java 正则表达式 String.matches 工作不一致

    我有一个正则表达式来检查字符串是否是数字 该格式的千位分隔符是空格 小数分隔符是点 小数点后部分是可选的 问题是 在某些时候 String matches 函数会停止按预期工作 以前有效的方法现在不再有效了 例如 JUnit 代码 impo
  • 如何更改 apache poi 生成的图表,使其不使用平滑线并将空单元格显示为间隙?

    我正在使用 POI 3 12 beta1 并拥有可创建包含多个数据集和图例中命名系列的折线图的代码 但是 poi 中折线图的默认设置会生成一条已在数据点上平滑的线 空值也被绘制为 0 但我们希望线条停在有空单元格的第一列 在 xlsx 文件
  • 将 BeanFactory 注入 Bean

    我想注入一个SpringBeanFactory到由同一个创建的 BeanBeanFactory有什么办法可以这样做吗 顺便说一句 我正在开发一个网络应用程序 如果没有 我知道我可以通过以下方式获得 BeanFactoryRequestCon
  • 如何使 JTextArea 可滚动但仍设置高度?

    我有一个 Java 应用程序 它连接到设备并在JTextArea 我想要JTextArea可滚动 我通过将其放入JScrollPane The JScrollPane含有JTextArea在里面CENTER的一部分BorderLayout
  • Dom解析器和Xerces解析器之间的区别

    嘿 谁能告诉我 Dom 解析器 和 Xerces 解析器 之间有什么区别 两者各有什么优点和缺点 Xerces isDOM 解析器 它是 Java 或 C 中的 Apache 实现 您需要考虑的两个是 SAX 和 DOM DOM 在内存中创
  • 我什么时候应该在 RMI 中实现 java.io.Serializable?

    我刚刚开始 Java RMI 对于何时使用 java io Serialized 存在一些问题 所以任何人都可以给我一个必须实现 java io Serializing 的 RMI 示例 谢谢 UPDATE i had made a sim
  • VideoView SeekTo 在不同设备上工作异常 - Android

    我在视频视图上使用此代码来寻求自定义位置 但它在三星设备上工作正常 但在索尼设备上 视频寻求开始位置 开始 我想让视频回到上次暂停的位置 创建视频视图 VideoView mVideoPlayer setVideoPath ViDpath
  • playframework 全局设置 @Required 字段的自定义消息

    我正在寻求有关翻译 Play 框架 2 2 中的验证消息的帮助 我有必填字段 FE Required message To pole jest wymagane public String miesiac Required public S
  • 使用 pdfbox 1.8.8 进行视觉签名

    我正在尝试生成带有视觉签名和 pdfbox 的 PDF 我有两个流 似乎 pdfbox 只能处理文件 如果没有三个临时文件 我就无法使其工作 我可以看到从here https github com apache pdfbox blob b7
  • HashSet 中的并行流不并行运行

    我有想要并行处理的元素集合 当我使用List 并行性有效 但是 当我使用Set 它不并行运行 我编写了一个代码示例来显示该问题 public static void main String args ParallelTest test ne
  • 当点击 JButton 连接到服务器时,程序冻结

    我正在使用 Java 中的 TCP 进行简单的 1v1 私人聊天 目前 每当我使用 JButtons 时都会遇到问题 这是我第一次尝试使用 JButtons 和 ActionListeners 所以我不能 100 确定这里发生了什么 我有两
  • 运行时签名是什么?

    当涉及到有界类型时 我对 Java 的类型擦除有一些理解上的问题 考虑一下 class Event From the API class FooEvent extends Event abstract class Foo
  • 序列化的 lambda 且没有serialVersionUID?

    我正在尝试了解 Java 及其最新版本的序列化如何工作 我正在尝试像这样序列化 lambda Runnable r Runnable Serializable gt System out println This is a test 但我注
  • 与 Java 7 相比,Java 8 ScriptEngine 的主要性能问题

    我有一个 Java 程序 使用 JDK 7u80 编译 它广泛使用了 JavaScript ScriptEngine JSR 223 我注意到 与 Java 7 运行时环境 JRE 7u80 相比 我的程序在 Java 8 运行时环境 JR
  • Java如何使用私钥文件而不是PEM来解密?

    使用 Java 和 Bouncy Castle 1 52 我可以使用以下代码通过 PEM 证书加载私钥 我还有一个相同的 PKCS8 格式的 private key 文件 直接使用private key文件而不是PEM的代码是什么 Stri
  • 编写大 JSON 文件避免内存不足问题的最佳方法

    首先 请注意今天是我第一天GSON 我正在尝试使用编写 Json 文件GSON图书馆 我有几千个JsonObjects里面一个ArrayList 当写入 Json 文件时 它应该看起来与此类似 hash index 00102x05h06l
  • 如何更改操作栏上标题文本的大小?

    有一个ActionBar在每个 Android 4 0 应用程序上 它都有一个标题 我需要缩小这个尺寸 但我不明白我该怎么做 因为ActionBar不为其提供公共方法 Remark 我不想使用自定义视图 实际上 您可以对ActionBar
  • ZonedDateTime 的 Jackson 反序列化问题

    我在反序列化我正在使用的服务期间使用的类中有以下字段 private ZonedDateTime transactionDateTime 我正在使用的服务可能会使用以下模式返回日期或日期时间 yyyy MM dd T HH mm ss SS
  • 如何用 Java 为 2D 游戏构建 Tiled 地图?

    不知道如何解决这个问题 基本上 我想要 400x400 窗口的 Pixel gt Tile 表示 屏幕上的每个坐标 例如120x300应该是图块的一部分 我最小的精灵是 4 个像素 所以我们可以说 1 个图块 4 个像素 玩家和敌人精灵都是
  • Spring Security 实体字段级安全

    我有一个 Spring MVC 应用程序 它提供了一个视图 其中显示了来自Customer实体 例如姓名 地址 电话号码等 该应用程序具有各种角色 例如ROLE USER and ROLE ADMIN 用户具有ROLE USER只能看到客户

随机推荐

  • Java Swing JToolBar

    我创造了JToolBar Java 摇摆 我在框架上设置了一个背景图像 其中包含JToolBar 我想要我的JToolBar是透明的 以便保持在框架上的图像应该是可见的 我在用setOpaque false 但它对我的工具栏没有任何影响 以
  • 重置子元素的不透明度 - Maple 浏览器(三星电视应用程序)

    我在创建具有子元素的透明元素时遇到问题 使用此代码 子元素从父元素获取不透明度值 我需要将子元素的不透明度重置 设置为任意值 参考浏览器是Maple Browser for a Samsung TV Application video ca
  • 如何在material-ui中将焦点设置在MenuItem上

    我正在尝试以编程方式将焦点设置在 激活 material ui 中菜单组件内的菜单项之一上 我可以通过按 Tab 键手动执行此操作 但我需要以编程方式执行此操作以响应按键事件 menu menu
  • 如何在 Telerik ASP .NET MVC 网格上将布尔值从 true/false 转换为 yes/no

    我希望能够更改 ASP NET MVC 中不可编辑的 Telerik AJAX 网格上不可编辑列的显示值 有问题的列是一个布尔值 因此显示转换将为 Yes true 和 No False 我做了一些实验 发现这有效 不确定它是否会保留在可编
  • 从 Schittkowski DAE 测试套件中求解 PENDULUM2?

    我只是试图解决 Schittkowski DAE 测试套件中的 DAE 问题之一 http klaus schittkowski de mc dae htm http klaus schittkowski de mc dae htm 但没有
  • 如何以相同的方式修改或替换字典中的每个值?

    给定一个像这样的字典myDict ten 10 fourteen 14 six 6 如何修改每个值 例如 我想将每个值除以二 这样myDict变成 ten 5 fourteen 7 six 3 就位 而不是创建新字典 迭代键和值 for k
  • 检查 URL 的内容:是文件还是网页?

    我有一个应用程序 需要根据内容采取不同的操作URL 如果内容是文件 我需要下载它 但是 如果内容是网页 我需要打开它 据我所知 有两种 URL 类型 直接链接 例如 https dl ssl google com android repos
  • WPF 应用程序的多线程策略需要建议

    我正在构建一个单窗口 WPF 应用程序 窗口中是一个列表项 当然 它们保存在数据库中 我需要定期启动一个后台任务 从 Atom feed 更新数据库 当每个新项目添加到数据库中时 UI 中的列表也必须更新以反映这一点 我不希望这个后台任务减
  • 滑块输入延迟

    有没有办法使sliderInput http shiny rstudio com reference shiny latest sliderInput html等待几秒钟 然后它会更改其对应的input 多变的 我有一个栏正在控制需要根据值
  • 使用 Mac 应用程序部署 Qt 框架以及 otool 的使用

    我在使用我的 Mac 应用程序部署 Qt 框架时遇到问题 我希望有人能知道为什么当我在干净的 Mac 即不是开发人员 Mac 上运行该应用程序时会出现此错误 操作系统 10 7 2 并使用 XCode 错误消息 Library not lo
  • 如何使用列表(或元组)作为字符串格式化值

    假设这个变量 s Python rocks x s s s 0 s 1 现在我想替换更长的列表 并分别添加所有列表值 例如 s 0 s 1 s n 似乎不正确 引用自文档 给定格式 值 如果格式 需要一个参数 值可以 是单个非元组对象 4
  • 如何在 F# 中的集群配置中创建参与者

    我正在创建一个示例Akka Cluster具有三个节点 A B 和 C 其中 A 是灯塔 到目前为止 从日志来看 当没有参与者或参与者是本地的 使用创建的 时 集群工作正常spawn and spawnOpt 我想从 B 创建一个 acto
  • TextMate:注释行快捷方式不再起作用(我的瑞士布局上的 Cmd-/ 或 Cmd-Shift-7)

    一段时间以来 我在 TextMate 中遇到了一种非常奇怪的行为 I had troubles to use the keyboard shortcut for commenting a line which is Cmd or on my
  • 如何在 Swift 中为 IOS 生成 RSA 非对称密钥对?

    我需要一种在 Swift 中生成 RSA 非对称密钥对的方法 我不需要将它存储在钥匙串或任何东西中 我只需要生成一个密钥对并将两个密钥放入字符串变量中 这些密钥确实需要与另一端的 PHP 兼容 我将使用对称加密来保护私钥并将其存储在手机上
  • isset 具有可变数组键数

    该数组是多维的 并且具有可变数量的子键 例如 arr a b c X 在这种情况下为3 我想创建一个函数 它接受一个像这样的字符串a b c作为参数并检查数组中是否包含该键 然后取消设置它 unset arr a b c 如果我给它a b那
  • PySpark UDF 优化挑战

    我正在尝试优化下面的代码 当运行 1000 行数据时 大约需要 12 分钟才能完成 我们的用例需要数据大小约为 25K 50K 行 这将使此实现完全不可行 import pyspark sql types as Types import n
  • 对话框活动还会在后台恢复其他活动

    这就是场景 我的应用程序中有 2 个活动 以及一个当我单击应用程序创建的通知时启动的对话框活动 问题是 当我单击通知时 如果按主页按钮停止 则仅应显示对话框 而不应显示应用程序的其他活动 当我通过按后退按钮关闭应用程序时 对话框活动会显示对
  • 检查用户是否是 C 中的 root?

    如何验证用户是否是root 通常测试用户是否为 root 是错误的 POSIX 甚至不需要 root 用户 而是将其留给实现来确定权限如何工作 代码如 if i am root do privileged op else print err
  • PHP 字符串转十六进制

    我有一个这样的字符串 0 9A Za z 如何转换为以下形式 133 x30 55 x39 101 x2d 132 x61 55 x7a 134 x2b 57 x3d 135 x2a 有什么功能吗 function strtohex str
  • 如何对 CopyOnWriteArrayList 进行排序

    我想排序CopyOnWriteArrayList 但是当我尝试运行以下代码时 它正在投掷unsorted operation exception public class CopyOnWriteArrayListExample public