首页 > 编程语言 >Java基础学习——字符串

Java基础学习——字符串

时间:2023-09-10 16:46:35浏览次数:39  
标签:Java String 创建 StringTable 学习 内存 字符串

目录

1 String 概述

 

2 String构造方法代码实现和内存分析

2.1 创建方式

2.2 内存区

1. StringTable(串池)

2. 直接赋值创建字符串 方式 内存图

3. 通过new创建字符串 方式 内存图

 

3 字符串比较

3.1 “==”号比较的内容

 


 

 

 

1 String 概述

总结:

1.String是Java定义好的一个类。定义在java.lang包中,所以使用的时候不需要导包。

2.Java程序中的所有字符串文字(例如“三连投币”)。都被视为此类的对象。

3.字符串不可变,它们的值在创建后不能被更改。

 

2 String构造方法代码实现和内存分析

2.1 创建方式

“根据字符数组创建字符串对象”使用场景:

 

2.2 内存区

1. StringTable(串池):当采用“直接赋值”方式创建String时,值内容会存在StringTable中。

 

2. 直接赋值创建字符串 方式 内存图

 

3. 通过new创建字符串 方式 内存图

 

 

3 字符串比较

3.1 “==”号比较的内容

 

 

 

3.2 字符串比较

 

标签:Java,String,创建,StringTable,学习,内存,字符串
From: https://www.cnblogs.com/bk22/p/17691445.html

相关文章

  • 《信息安全系统设计与实现》第一周学习笔记
    第一章引言关于本书本书是一部研究Unix/Linux系统编程的专注系统编程的作用系统编程是计算机科学和计算机工程教育不可或缺的一部分本书目标强化学生变成背景知识动态数据结构的应用进程概念和进程管理并发编程定时器和定时功能信号、信号处理......
  • 【学习笔记】折半搜索 Meet In The Middle
    点击查看目录目录算法实现杂题乱写[CEOI2015Day2]世界冰球锦标赛题单oi-wiki算法实现我们正常的搜索应该是一个指数级的:\(2^n\)。然而我们可以把这个搜索拆成两半,设小于整张图的限制\(limit\)为合法:对于上半搜索,我们有若干符合限制的答案\(sum_1\),对于下半搜索,我......
  • 较真:js判断中文字符串长度的正确方法
    对于使用javascript编程的人来说,判断字符串长度应该是常用又简单的操作,但在判断包含有中文字符或其他非asci字符的字符串长度时,却有些坑在里面。错误做法1先看看最常用的做法,也就是使用String.length判断:letstr="你好奥";letlen=str.length;console.log(len);//打印出来......
  • Java版剑指offer:平衡二叉树
    Java版剑指offer:平衡二叉树描述输入一棵二叉树,判断该二叉树是否是平衡二叉树。在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树平衡二叉树(BalancedBinaryTree),具有以下性质:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉......
  • java版本剑指offer:链表中倒数最后k个结点
    java版本剑指offer:链表中倒数最后k个结点描述输入一个链表,输出一个链表,该输出链表包含原链表中从倒数第k个结点至尾节点的全部节点。如果该链表长度小于k,请返回一个长度为0的链表。最简单的方式就是使用两个指针,第一个指针先移动k步,然后第二个指针再从头开始,这个时候这两个指针......
  • java版本剑指offer:反转链表
    java版本剑指offer:反转链表描述输入一个链表,反转链表后,输出新链表的表头。示例1输入:{1,2,3}返回值:{3,2,1}此题想考察的是:如何调整链表指针,来达到反转链表的目的。初始化:3个指针:1)pre指针指向已经反转好的链表的最后一个节点,最开始没有反转,所以指向null2)cur指针指向待反转链表......
  • java剑指offer:两个链表的第一个公共结点
    java剑指offer:两个链表的第一个公共结点描述输入两个无环的单链表,找出它们的第一个公共结点。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的)解题思路:先假设链表A头结点与结点8的长度与链表B头结点与结点8的长度相等,那么就可以用双指针。......
  • Java版剑指offer:链表中环的入口结点
    Java版剑指offer:链表中环的入口结点描述给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。输入描述:输入分为2段,第一段是入环前的链表部分,第二段是链表环的部分,后台将这2个会组装成一个有环或者无环单链表返回值描述:返回链表的环的入口结点即可。而我们后台程序......
  • java版:层序遍历
    描述给定一个二叉树,返回该二叉树层序遍历的结果,(从左到右,一层一层地遍历)例如:给定的二叉树是{3,9,20,#,#,15,7},该二叉树层序遍历的结果是[[3],[9,20],[15,7]]示例1输入:{1,2}返回值:[[1],[2]]示例2输入:{1,2,3,4,#,#,5}返回值:[[1],[2,3],[4,5]]解题思路:层序遍历:就是从根......
  • java版本剑指offer:二分查找
    java版本剑指offer:二分查找描述请实现有重复数字的升序数组的二分查找给定一个元素有序的(升序)整型数组nums和一个目标值target,写一个函数搜索nums中的第一个出现的target,如果目标值存在返回下标,否则返回-1示例1输入:[1,2,4,4,5],4返回值:2说明:从左到右,查找到第1个为4的......