E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Java字符串常量池
Java字符串
为何是不可变的?
Java中字符串是一个非常常用的数据类型,它不仅在日常编码中频繁使用,也是面试中常见的考点之一。一个经常被讨论的话题是Java中的字符串为何是不可变的。本文将探讨这个问题,并解释其背后的原因。引言在Java中,字符串是通过String类来表示的,这个类有一个很重要的特性,那就是不可变性(Immutability)。这意味着一旦一个字符串对象被创建,它的值就不能被更改。例如,当你试图修改一个字符串时
木南曌
·
2024-09-15 17:13
Java
java
String存储原理
为了理解String的存储原理,我们需要分解几个关键概念:不可变性、堆内存、字符串
常量池
和垃圾回收机制。下面我将详细解释这些概念并举例说明。
程序员阿鹏
·
2024-09-14 23:27
Java面试八股文
java
jvm
开发语言
eclipse
intellij-idea
后端
java字符串
转对象数组_将字符串数组转为java对象
最近在工作中,遇到一个场景:接受到一个字符串数组,需要将其转为一个对象,反射实现的方法如下:/***将字符串数组转成对象:支持doubleintbooleanstring*@paramvalueList值数组列表*@paramproperties属性数组*@paramc目标class对象*@return返回null时丢弃此结果*/publicListconvertToDomain(Listvalu
凯米拉诺
·
2024-09-13 11:42
java字符串转对象数组
Java Virtual Machine One
jvm结构类加载子系统:类加载器验证准备解析数据运行时数据区:1.方法区类信息方法信息
常量池
2.堆体系:线程共享区域堆存放new的对象3.栈线程私有的存放线程执行过程的方法信息(存储单位为栈帧)4.程序计时器执行线程的行号计时器
LongProgrammer
·
2024-09-07 02:07
jvm
【编程底层思考】字符串
常量池
随JDK版本的变化,及其与运行时
常量池
的区别
字符串
常量池
和运行时
常量池
是Java虚拟机中两个重要的概念,它们在不同的JDK版本中有着不同的表现和变化。JDK6字符串
常量池
位于方法区的永久代(PermGen)中。
Dylanioucn
·
2024-09-06 15:26
java
jvm
开发语言
java包装类型装箱拆箱踩坑
128L;System.out.println(l1==l2);//1System.out.println(l1==128);//21.Long包装类型常量cache为-128到127之间(维护在一个
常量池
中
郑捡书
·
2024-09-02 23:15
Java的内存管理机制
Java内存区域Java的内存主要分为几个区域:方法区(MethodArea):功能:存储每个类的结构信息,包括运行时
常量池
、字段和方法数据、构造函数和普通方法的字节码内容等。
纣王家子迎新
·
2024-08-29 06:20
java
jvm
内存机制
栈
堆
学习
Java重修笔记 第三十二天 String类
String类特性1.一个字符占两个字节,不管是英文还是中文2.字符串本质是由字符数组存储的一组数据privatefinalcharvalue[];3.通过双引号创建的字符串对象,其引用直接指向底层
常量池
中的地址
Super Minion
·
2024-08-26 17:01
笔记
深度剖析Java内存溢出:从堆到栈的全面解析
本文将深入探讨Java内存溢出的各种类型,包括堆溢出、栈溢出、运行时
常量池
溢出、元空间溢出、直接内存溢出等,并提供详细的示例代码和技术解析。
九转成圣
·
2024-08-25 00:49
Java高频面试栏
开发语言
java
后端
jvm
java 解析字符串_
java字符串
解析
我们先要记住三者的特征:String字符串常量StringBuffer字符串变量(线程安全)StringBuilder字符串变量(非线程安全)一、定义查看API会发现,String、StringBuffer、StringBuilder都实现了CharSequence接口,虽然它们都与字符串相关,但是其处理机制不同。String:是不可改变的量,也就是创建后就不能在修改了。StringBuffer:
玩代码的董大大
·
2024-08-25 00:48
java
解析字符串
JVM 方法区存放那些内容
类的
常量池
:存储类中的常量值(如字符串常量、数值常量和面值),以及字面量
龙大.
·
2024-08-24 22:08
JVM
Java
jvm
方法区【JVM】
JVM-方法区1.方法区的作用当类加载器加载完成类之后,会将类信息、运行时
常量池
、静态变量(此处指的是指针,如果是一个对象对象的分配还是在堆中)等存储在方法区;但在JDK不同版本对字符串常量和静态变量的存储有所不同
码农回忆录
·
2024-08-24 21:35
JVM
方法区
常量池
JVM
Java判断s1中出现s2的次数_java查找字符出现次数
Java上机要求(第十四次上机)请大家将自己的垃圾自行带走,不要在机房吃东西,......Perl与
Java字符串
查找时的性能实验及分析_信息与通信_工程科技_专业资料。
李祥JasonLee
·
2024-03-13 21:17
JVM常见问题笔记分享
1.5.1概述1.5.2
常量池
1.5.3运行时
常量池
1.7你听过直接内存吗?1.8堆栈的区别是什么?2类加载器2.1什么是类加载器,类加载器有哪些?2.2什么是双亲委派模型?2
落雨既然
·
2024-02-20 13:40
JVM
jvm
笔记
JDK11新特性
二、DynamicClass-FileConstants类文件新添的一种结构Java的类型文件格式将被拓展,支持一种新的
常量池
格式:CONSTANT_Dynamic,加载CONSTANT_Dynamic
星梦客
·
2024-02-20 13:31
Java
java
jdk
深入浅出JVM(一)之Hotspot虚拟机中的对象
本篇文章思维导图对象的创建对象的创建可以分为五个步骤:检查类加载,分配内存,初始化零值,设置对象头,执行实例构造器类加载检查HotSpot虚拟机遇到一条new指令,会先检查能否在
常量池
中定位到这个类的符号引用
·
2024-02-20 12:31
后端
java字符串
加密_Java简单加密字符串
1设计思想该问题要求输入一个字符串,然后把这个字符串的每一个字符加4,得到新的字符串。我们设计一个函数,传入参数sringstr,首先我们利用String类的方法toCharArray()把字符串转换为字符数组,然后把每个字符强转为int型,+4,然后强转为char型,把数组传给String型的新对象或逐个输出。2程序流程第一步设置Scanner对象从键盘读入用户输入的字符串str第二步设计一个函
季春顺
·
2024-02-20 10:42
java字符串加密
JVM-面试题
一、对象1、对象创建类加载检查虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在
常量池
定位到类的符号引用,并且检查这个符号引用代表的类是否被加载、解析和初始化过。
HBryce24
·
2024-02-19 23:59
JVM
jvm
JVM-JVM中对象的生命周期
原资料地址:课程资料对象的创建
常量池
检查:检查new指令是否能在
常量池
中定位到这个类的符号引用,检查类之前是否被加载过。如果已经加载则直接使用,否则需要进行加载。
developer@liyong
·
2024-02-19 13:12
JVM虚拟机
jvm
年轻代
老年代
内存分配
内存担保
[Java] 线程池初识
线程池线程池前言线程池的参数介绍因为线程池过于复杂,于是Java标准库提供了更便捷的Executor类线程池的工作过程(模拟线程池)线程池前言池,我们听过有很多,诸如:
常量池
、数据库连接池、线程池、进程池
Prectie.RTE
·
2024-02-19 12:05
java
apache
开发语言
2019-12-29
packagecom.test.cn;//常量在编辑阶段存入到调用这个常量的方法所在的类的
常量池
中//本质上,调用类并没有直接引用到的定义常量的类,因此并不会触发//定义常量的类并没有初始化//注意:这里指的是常量存放到
两颗酸橙子
·
2024-02-19 12:11
JVM对象创建与内存分配机制深度剖析
对象的创建对象创建的主要流程:1.类加载检查虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在
常量池
中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。
码界调试侠
·
2024-02-19 12:01
Java性能调优
jvm
java
【JVM篇】什么是运行时数据区
⭐堆⭐方法区什么是运行时数据区运行时数据区指的是jvm所管理的内存区域,其中分为两大类线程共享:方法区,堆线程不共享:程序计数器,栈(本地方法栈,虚拟机栈)方法区:存放每一个加载的类的基础信息,运行时
常量池
在下小吉.
·
2024-02-19 12:29
JVM
jvm
java
JVM内存模型和内存溢出
文章目录概念抽象模型模型通信的实现JVM内存程序计数器虚拟机栈本地方法栈堆方法区运行时
常量池
直接内存JAVA对象创建布局访问OutOfMemoryError异常内存相关参数硬件内存模型参考概念JMM,JavaMemoryModel
娟宝宝萌萌哒
·
2024-02-15 08:47
java
jvm
内存模型
溢出
String底层详解(包括字符串
常量池
)
JVM会使用
常量池
来管理字符串直接量。在执行这句话时,JVM会先检查
常量池
中是否已经存有"abc",若没有则将"abc"存入
常量池
,否则就复用
常量池
中已有的"abc",将其引用赋值给变量a。
拾光1024
·
2024-02-14 21:21
jvm
java
面试
Java基础-JVM内存管理-HotSpot对象
对象的创建首先我们虚拟机在遇到new的指令时会检查是否能在
常量池
中找到这个类的符号
HughJin
·
2024-02-13 19:25
Java基础类库
StringBuffer类String类特点:每一个字符串常量都属于一个String类的匿名对象,并且不可更改;String有两个
常量池
:静态
常量池
、运行时
常量池
;String类对象实例化建议使用直接赋值的形式完成
曾梦想仗剑天涯
·
2024-02-13 17:03
常量池
与Integer类的缓存机制
在说这些之前,先说一下在Java中,equals方法和==都有比较值的作用,具体区别如下:1)对于==,比较的是值是否相等如果作用于基本数据类型的变量,则直接比较其存储的值是否相等;如果作用于引用类型的变量,则比较的是所指向的对象的地址是否相等。其实==比较的不管是基本数据类型,还是引用数据类型的变量,比较的都是值,只是引用类型变量存的值是对象的地址2)对于equals方法,比较的是是否是同一个对
Abeants
·
2024-02-13 07:36
从String.intern()方法浅谈堆中
常量池
在JDK7之前,字符串常量是存在永久带Perm区的,JDK7开始在将
常量池
迁移到堆中,这个变化也导致了String的新特性,下面我们慢慢进行介绍。
宸小朔
·
2024-02-13 06:06
图灵日记--Map&Set&字符串
常量池
&反射&枚举&Lambda表达式&泛型
类集的关系搜索概念及场景模型Map的使用Map常用方法Set的说明常见方法说明哈希表冲突-避免-负载因子调节冲突-解决-闭散列冲突-解决-开散列/哈希桶冲突严重时的解决办法实现和java类集的关系字符串
常量池
图梓灵
·
2024-02-12 19:34
数据结构
java
数据结构
java
jvm对象创建流程与内存分配机制
具体操作是在
常量池
找到对
AaronWang94
·
2024-02-12 07:25
java
java
jvm
“金9银10”2020年JVM高频率面试题整理,技术提升就差一个点!
JVM分为堆区和栈区,还有方法区,初始化的对象放在堆里面,引用放在栈里面,class类信息
常量池
(static常量和static变量)等放在方
竖笛大魔王
·
2024-02-10 17:31
字符串
常量池
文章目录String&StringTable一、String1、String的基本特性2、String的不可变性1)重新赋值2)拼接操作3)replace()方法4)方法参数传递二、StringTable1、基本概念2、内存位置3、大小设置4、StringTable不会存在相同的String5、运行时内存案例三、String的创建与内存分配1、字面量/双引号2、new关键字3、StringBuil
scj1022
·
2024-02-10 11:32
JVM
java
开发语言
自学大数据:大数据学习线路及各阶段学习书籍
阶段一、大数据基础——java语言基础方面(1)Java语言基础Java开发介绍、熟悉Eclipse开发工具、Java语言基础、Java流程控制、
Java字符串
、Java数组与类和对象、数字处理类与核心技术
yoku酱
·
2024-02-09 21:46
Java字符串
训练----leetcode翻转字符串里的单词
这一题很简单,但是还是有很多可以学习的东西在里面给定一个字符串,逐个翻转字符串中的每个单词。示例1:输入:“theskyisblue”输出:“blueisskythe”示例2:输入:"helloworld!"输出:“world!hello”解释:输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例3:输入:“agoodexample”输出:“examplegooda”解释:如
canaryW
·
2024-02-09 18:41
leetcode
Java String类详解
所以在Java中所有使用“双引号”括起来的字符串都会在“字符串
常量池
”中创建一份。字符串
常量池
在方法区中被存储。3.在程序执行过程中,如果程序用到某个字符串,例如"abc",
weixin_40273144
·
2024-02-09 13:42
java
java字符串
指定脱敏汉字个数——常用工具
1.1需求在实际开发中,前后端分离开发需要对参数加密或者脱敏的需求日益增多,今天接到的需求就是对用户信息的地址在返回前端的时候需要对其做处理,需求如下:就是将地址字符中的汉字的后6个进行脱敏。1.2工具类//需要导入的包importjava.util.regex.Pattern;importjava.util.regex.Matcher;publicstaticStringaddrEnc(Stri
NotFoundObject.
·
2024-02-09 12:42
java基础
java
Java String相关知识点
高效性字符串
常量池
可以被复用,使用更高效。
沉淀之际
·
2024-02-09 06:37
Java字符串
将数据库字段改成驼峰字段
//CODE_ID->codeIdpublicstaticStringtoCamelCase(Stringstr){if(str==null){returnnull;}str=str.toLowerCase();StringBuildersb=newStringBuilder();booleanupperCase=false;for(inti=0;i
钟良堂
·
2024-02-09 05:46
笔记
数据库
java
前端
chap8 虚拟机字节码执行引擎
(用于暂存运算过程中的操作数)动态连接:字节码中的方法调用指令都是以
常量池
中的符号引用作为参
菜鸟乱撞
·
2024-02-08 16:34
StringUtils中 isNotEmpty 和isNotBlank的区别【
java字符串
判空】
原文地址:https://www.cnblogs.com/dixinyunpan/p/6088612.htmlisNotEmpty(str)等价于str!=null&&str.length>0isNotBlank(str)等价于str!=null&&str.length>0&&str.trim().length>0同理isEmpty等价于str==null||str.length==0isBlan
移动端_小刚哥
·
2024-02-08 03:27
jvm内存分区的变化
以下是主要的一些变化:JDK8之前:在JDK8之前,HotSpot虚拟机主要使用的是永久代(PermanentGeneration)和堆内存(HeapMemory),其中永久代主要用于存储类的元数据、方法区、
常量池
等
星光不问赶路人-
·
2024-02-07 14:09
面试
JVM
java
jvm
jvm体系结构
共享内存区共享内存区=持久带(方法区+其他)+堆(OldSpace+YoungSpace(den+S0+S1))持久代:JVM用持久带(PermanentSpace)实现方法区,主要存放所有已加载的类信息,方法信息,
常量池
等等
xmh-sxh-1314
·
2024-02-07 08:23
jvm
【Java面试题汇总】Java基础篇——String+集合+泛型+IO+异常+反射(2023版)
笔记+踩坑汇总】JavaSE+JavaWeb+SSM+SpringBoot+瑞吉外卖+SpringCloud+黑马旅游+谷粒商城+学成在线+设计模式+牛客面试题目录三、String3.1.String
常量池
程序员小海绵【vincewm】
·
2024-02-07 06:26
Java面试题汇总
Java学习路线
jvm
java
开发语言
Java字符串
(包含字母和数字)通用排序
说明:本文章是之前查到的一篇安卓版的,具体原文路径忘记了。稍微改了一点,挺符合业务使用的!一、看代码/***包含数字的字符串进行比较(按照从小到大排序)*/privatestaticIntegercompareString(Stringstring1,Stringstring2){//拆分两个字符串Listlist1=splitString(string1);Listlist2=splitStri
清风拂山感
·
2024-02-06 06:34
java
windows
开发语言
Java 字符串正则相关应用
Java字符串
正则相关应用packagecom.zhong.regex;publicclassRegexDemo{publicstaticvoidmain(String[]args){//检验QQ号是否完全正确
她似晚风般温柔789
·
2024-02-06 01:55
Java
java
开发语言
【Java 数据结构】String进阶
字符串
常量池
1.创建对象的思考2.字符串
常量池
(StringTable)3.再谈String对象创建1.创建对象的思考下面两种创建String对象的方式相同吗?
山顶是一定要去的
·
2024-02-05 22:19
数据结构
java
数据结构
开发语言
intellij-idea
eclipse
爱上JVM(一):JVM内存结构学习笔记分享
文章目录程序计数器程序计数器作用程序计数器特点栈定义问题栈内存溢出线程诊断CPU占占用过多死锁本地方法栈堆定义堆内存诊断方法区定义方法区内存溢出
常量池
StringTable理解StringTable位置垃圾回收机制直接内存案例演示
落雨既然
·
2024-02-05 20:16
JVM
jvm
学习
笔记
【Java八股文面试系列】JVM-内存区域
目录Java内存区域运行时数据区域线程独享区域程序计数器Java虚拟机栈StackFlowError&OOM本地方法栈线程共享区域堆GCR-分代回收算法字符串
常量池
方法区运行时
常量池
HotSpot虚拟机对象探秘对象的创建对象的内存布局句柄
叮咚Zz
·
2024-02-05 12:39
python
开发语言
java
jvm
java-ee
intellij-idea
字符串比较中==和equals的区别(Java)
Java字符串
比较时==和equals的区别在Java中,字符串比较可以使用==和equals()方法。它们的区别如下:==比较的是两个字符串对象的内存地址是否相同,也就是判断它们是否是同一个对象。
喻师傅
·
2024-02-05 02:07
javaSE
java
开发语言
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他