找到 2637 篇文章 相关 Java

Java 中正则表达式 “$” (美元符号) 元字符

Maruthi Krishna
更新于 2019年11月18日 10:17:40

903 次浏览

子表达式/元字符“$”匹配行尾。示例 1import java.util.regex.Matcher; import java.util.regex.Pattern; public class EndWith {    public static void main( String args[] ) {       String regex = "Tutorialspoint$";       String input = "Hi how are you welcome to Tutorialspoint";       Pattern p = Pattern.compile(regex);       Matcher m = p.matcher(input);       int count = 0;       while(m.find()) {          count++;          System.out.println("匹配次数: "+count);       }    } }输出匹配次数: 1示例 2以下 Java 程序接受 ... 阅读更多

Java 中正则表达式 “^” (插入符) 元字符

Maruthi Krishna
更新于 2019年11月18日 10:12:52

518 次浏览

子表达式/元字符“^”匹配行首。如果在正则表达式中使用它,它将匹配输入字符串中紧随其后的句子。示例 1import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexExample {    public static void main( String args[] ) {       String regex = "^Hi how are you";       String input = "Hi how are you welcome to Tutorialspoint";       Pattern p = Pattern.compile(regex);       Matcher m = p.matcher(input);       int count = 0;       while(m.find()) {          count++;     ... 阅读更多

如何在 Java 中使用 Gson 向 JSON 字符串添加/插入额外的属性?

raja
更新于 2020年2月19日 10:28:54

8K+ 次浏览

com.google.gson.JSonElement 类表示 Json 的一个元素。我们可以使用 Gson 类的 toJsonTree() 方法将对象的表示形式序列化为 JsonElements 的树。我们可以使用 JSonElement 的 getAsJsonObject() 方法向 JSON 字符串添加/插入额外的属性。此方法返回获取元素作为 JsonObject。语法public JsonObject getAsJsonObject()示例import com.google.gson.*; public class AddPropertyGsonTest {    public static void main(String[] args) {       Gson gson = new GsonBuilder().setPrettyPrinting().create();// 美化打印 JSON       Student student = new Student("Adithya");       String jsonStr = gson.toJson(student, Student.class);       System.out.println("JSON 字符串: " + jsonStr);       ... 阅读更多

Java 中快速失败和安全失败的区别

Mahesh Parahar
更新于 2019年11月18日 07:31:59

3K+ 次浏览

序号关键快速失败安全失败1异常在集合中进行任何更改,例如在某个线程迭代集合期间添加、删除和更新集合,则快速失败会抛出并发修改异常。安全失败不会抛出异常。2.集合类型ArrayList 和 hashmap 集合是快速失败迭代器的示例CopyOnWrite 和并发修改是安全失败迭代器的示例3.性能和内存它在实际集合上工作。因此,此迭代器不需要额外的内存和时间它在集合的副本上工作,而不是实际集合。在时间和内存方面是开销4.修改迭代器不允许在迭代集合时修改集合。安全失败迭代器允许 ... 阅读更多

Java 中 volatile 和 transient 的区别

Mahesh Parahar
更新于 2019年11月18日 07:24:40

9K+ 次浏览

volatile 关键字用于多线程环境中,其中两个线程同时读取和写入同一个变量。volatile 关键字将更改直接刷新到主内存,而不是 CPU 缓存。另一方面,transient 关键字用于序列化期间。标记为 transient 的字段不能成为序列化和反序列化的部分。如果我们不想保存任何变量的值,那么我们可以在该变量上使用 transient 关键字。序号关键volatiletransient1基本volatile 关键字用于将更改直接刷新到主内存transient 关键字用于在序列化期间排除变量2.默认值volatile ... 阅读更多

Java 中 List 和 Set 的区别

Mahesh Parahar
更新于 2023年12月05日 09:48:36

2K+ 次浏览

List 和 Set 两个接口都属于集合框架。这两个接口都扩展了 Collection 接口。它们都用于将对象的集合存储为一个单元。在 jdk1.2 之前,我们习惯于使用 Arrays、Vectors 和 Hashtable 将对象作为单个单元进行分组。序号关键ListSet1位置访问List 提供对集合中元素的位置访问。Set 不提供对集合中元素的位置访问。2实现List 的实现有 ArrayList、LinkedList、Vector、Stack。Set 接口的实现有 HashSet 和 LinkedHashSet。3重复我们可以将重复元素存储在列表中。我们不能在 Set 中存储重复元素。4排序List 保持 ... 阅读更多

Java 中 StringBuffer 和 StringBuilder 的区别

Mahesh Parahar
更新于 2023年12月05日 10:02:00

13K+ 次浏览

StringBuffer 和 StringBuilder 都是可变类,可用于对字符串对象进行操作,例如反转字符串、连接字符串等。我们可以修改字符串而无需创建字符串的新对象。StringBuffer 是线程安全的,而 StringBuilder 不是线程安全的。因此,它比 StringBuffer 快。此外,字符串连接 + 运算符在内部使用 StringBuffer 或 StringBuilder 类。以下是差异。序号关键StringBufferStringBuilder1基本StringBuffer 是在 Java 的初始版本中引入的它是在 Java 5 中引入的2同步它是同步的它不是同步的3性能它是线程安全的。因此,多个线程不能 ... 阅读更多

Java 中继承和组合的区别

Kiran Kumar Panigrahi
更新于 2022年7月28日 11:37:32

3K+ 次浏览

在计算机编程中,可重用代码的概念是指在构建新软件时利用先前开发的软件。代码的可重用性被认为是提高生产力的重要组成部分。在类之间建立关联是面向对象编程用来鼓励这种做法的一种方法。在面向对象编程中,构建这些关系的两种主要方法是:继承和组合。在面向对象编程 (OOP) 中,继承是指一个对象可以获取一个或多个其他对象属性的过程。在 OOP 中,它是建立代码可重用性的最强大的概念之一。当 ... 阅读更多

Java 中栈内存和堆内存的区别

Mahesh Parahar
更新于 2019年11月18日 07:10:08

6K+ 次浏览

JVM 将内存空间划分为两个部分,一个是栈(Stack),另一个是堆(Heap)空间。栈空间主要用于存储方法执行顺序和局部变量。栈始终以 LIFO(后进先出)顺序存储块,而堆内存使用动态分配来分配和释放内存块。分配给堆的内存一直存在,直到以下事件之一发生:程序终止、内存释放。相反,分配给栈的内存一直存在,直到函数返回。以下是差异。序号 关键点 栈 堆内存 1 基本 栈内存用于存储生命周期很短的项,例如局部变量、…的引用变量 阅读更多

Java 中 ReentrantLock 和 Synchronized 的区别

Mahesh Parahar
更新于 2019-11-18 07:06:01

2K+ 次浏览

有多种方法可以让多个线程获取共享资源的锁。一种是 ReentrantLock(或 ReadWriteLock),另一种是使用 Synchronized 方法。ReentrantLock 类从 Java 5 开始在 Java 并发包中提供。它是 Lock 接口的实现,根据 Java 文档,Lock 接口的实现提供了比使用 synchronized 方法所能获得的更广泛的操作。序号 关键点 ReentrantLock Synchronized 1 获取锁 ReentrantLock 类提供 lock() 方法,以便线程获取共享资源的锁 您只需编写 synchronized 关键字即可获取锁 2 释放锁 要释放锁,… 阅读更多

广告