找到343篇关于Java编程的文章
5K+ 次浏览
以下是Java中HashMap和ConcurrentHashMap类的显著区别:HashMapConcurrentHashMap同步HashMap是非同步的。ConcurrentHashMap是同步的。线程安全HashMap不是线程安全的。ConcurrentHashMap是线程安全的。迭代器类型HashMap迭代器是快速失败的,如果在迭代期间发生并发修改,ArrayList会抛出ConcurrentModificationException异常。ConcurrentHashMap是安全失败的,在迭代期间永远不会抛出ConcurrentModificationException异常。空值HashMap允许键和值为null。ConcurrentHashMap不允许null键/值。它会抛出NullPointerException异常。性能HashMap更快。ConcurrentHashMap比HashMap慢。自Java版本1.21.5起示例import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.concurrent.CopyOnWriteArrayList; public class Tester { public static void main(String[] args) { List arrayList = new ArrayList(); ... 阅读更多
3K+ 次浏览
以下是Java中ArrayList和CopyOnWriteArrayList类的显著区别:ArrayListCopyOnWriteArrayList同步ArrayList是非同步的。CopyOnWriteArrayList是同步的。线程安全ArrayList不是线程安全的。CopyOnWriteArrayList是线程安全的。迭代器类型ArrayList迭代器是快速失败的,如果在迭代期间发生并发修改,ArrayList会抛出ConcurrentModificationException异常。CopyOnWriteArrayList是安全失败的,在迭代期间永远不会抛出ConcurrentModificationException异常。其原因是CopyOnWriteArrayList每次修改时都会创建一个新的ArrayList。删除操作ArrayList迭代器支持在迭代期间删除元素。如果尝试在迭代期间删除元素,CopyOnWriteArrayList.remove()方法会抛出异常。性能ArrayList更快。CopyOnWriteArrayList比ArrayList慢。自Java版本1.21.5起示例import java.util.Iterator; import java.util.concurrent.CopyOnWriteArrayList; public class Tester { ... 阅读更多
377 次浏览
java.util.Deque接口是java.util.Queue接口的子类型,支持在两端插入和删除元素。接口声明public interface Deque extends QueueArrayDeque类java.util.ArrayDeque类提供可调整大小的数组并实现Deque接口。以下是关于Array Deques的重要几点:Array deques没有容量限制,因此它们会根据需要增长以支持使用。它们不是线程安全的;在没有外部同步的情况下。它们不支持多个线程的并发访问。Array deques中不允许使用空元素。它们比Stack和LinkedList更快。这个类及其迭代器实现了Collection和Iterator的所有可选方法…… 阅读更多
4K+ 次浏览
类声明public class CopyOnWriteArrayList extends Object implements List, RandomAccess, Cloneable, SerializableCopyOnWriteArrayList是ArrayList的线程安全变体,其中可以更改ArrayList的操作(添加、更新、设置方法)会创建底层数组的克隆。CopyOnWriteArrayList应该用于线程环境中,其中读取操作非常频繁,而更新操作很少。CopyOnWriteArrayList的迭代器永远不会抛出ConcurrentModificationException异常。由于迭代器已创建,对CopyOnWriteArrayList的任何类型的修改都不会在迭代期间反映出来。在迭代中不支持List修改方法,如remove、set和add。此方法将抛出UnsupportedOperationException异常。可以添加null到…… 阅读更多
549 次浏览
类声明public class CopyOnWriteArraySet extends AbstractSet implements SerializableCopyOnWriteArraySet类在其所有操作中内部使用CopyOnWriteArrayList,因此具有CopyOnWriteArrayList的基本属性。CopyOnWriteArraySet是线程安全的。CopyOnWriteArraySet应该用于线程环境中,其中读取操作非常频繁,而更新操作很少。CopyOnWriteArraySet的迭代器永远不会抛出ConcurrentModificationException异常。由于迭代器已创建,对CopyOnWriteArraySet的任何类型的修改都不会在迭代期间反映出来。在迭代中不支持Set修改方法,如remove、set和add。此方法将抛出UnsupportedOperationException异常。CopyOnWriteArraySet方法以下是CopyOnWriteArraySet类中可用的一些重要方法。序号方法和…… 阅读更多
5K+ 次浏览
我们可以使用Java的BufferedReader类读取文件中的字符。请参见下面的示例:示例考虑类路径中的以下文本文件。test.txt这是第1行 这是第2行 这是第3行 这是第4行 这是第5行 这是第6行 这是第7行 这是第8行 这是第9行 这是第10行Tester.javaimport java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; public class Tester { private static final String FILE_PATH = "data.txt"; public static void main(String args[]) throws IOException { ... 阅读更多
547 次浏览
我们可以通过将文件读入字符串,然后根据“\r”模式进行分割来读取文件中的段落。请参见下面的示例:示例考虑类路径中的以下文本文件。test.txt这是第1行 这是第2行 这是第3行 这是第4行 这是第5行 这是第6行 这是第7行 这是第8行 这是第9行 这是第10行Tester.javaimport java.io.File; import java.io.FileInputStream; import java.io.IOException; public class Tester { public static void main(String args[]) throws IOException { FileUtil fileUtil = ... 阅读更多
1K+ 次浏览
本文提供了一个创建简单 JDBC 应用程序的示例。这将向您展示如何打开数据库连接、执行 SQL 查询以及显示结果。创建 JDBC 应用程序构建 JDBC 应用程序包含以下六个步骤:导入包:需要包含数据库编程所需的 JDBC 类所在的包。大多数情况下,使用 import java.sql.* 就足够了。注册 JDBC 驱动程序:需要初始化驱动程序,以便您可以打开与数据库的通信通道。打开连接:需要使用 DriverManager.getConnection() 方法创建一个 Connection 对象,它代表……阅读更多
浏览量:905
SimpleDateFormat 是一个具体的类,用于以区域敏感的方式格式化和解析日期。SimpleDateFormat 允许您首先选择任何用户定义的日期时间格式模式。示例在线演示import java.util.*; import java.text.*; public class DateDemo { public static void main(String args[]) { Date dNow = new Date( ); SimpleDateFormat ft = new SimpleDateFormat ("E yyyy.MM.dd 'at' hh:mm:ss a zzz"); System.out.println("Current Date: " + ft.format(dNow)); } }这将产生以下结果:输出当前日期:Sun 2004.07.18 at 04:14:09 PM PDT SimpleDateFormat……阅读更多