String是Java中一个比较基础的类,每一个开发人员都会经常接触到。而且,String也是面试中经常会考的知识点。String有很多方法,有些方法比较常用,有些方法不太常用。今天要介绍的subString就是一个比较常用的方法,而且围绕subString也有很多面试题。

substring(int beginIndex, int endIndex)方法在不同版本的JDK中的实现是不同的。了解他们的区别可以帮助你更好的使用他。为简单起见,后文中用substring()代表substring(int beginIndex, int endIndex)方法。

substring() 的作用

substring(int beginIndex, int endIndex)方法截取字符串并返回其[beginIndex,endIndex-1]范围内的内容。

String x = "abcdef";

x = x.substring(1,3);

System.out.println(x);

输出内容:

bc

调用substring()时发生了什么?

你可能知道,因为x是不可变的,当使用x.substring(1,3)对x赋值的时候,它会指向一个全新的字符串:

然而,这个图不是完全正确的表示堆中发生的事情。因为在jdk6 和 jdk7中调用substring时发生的事情并不一样。

JDK 6中的substring

String是通过字符数组实现的。在jdk 6 中,String类包含三个成员变量:char value[], int offset,int count。他们分别用来存储真正的字符数组,数组的第

java 截取数组的一段_java截取一段数组相关推荐

  1. java 比较字符串前几位_java截取字符串前几位

    java截取字符串_IT/计算机_专业资料.java截取字符串 1根据字符串 S... java中常用的字符串的截取方法_计算机软件及应用_IT/计算机_专业资料.jsp中常见使用技术,js,jstl ...

  2. java输出数组中的元素_java一行代码输出数组的所有元素内容

    如果要用java把一个数组的元素都输出到控制台的话,你要怎么做呢? 是通过一个循环去循环数组中的各个元素,然后输出吗? 像不像二维数组 今天我要说的是,可以通过一行代码就完成这个工作.是一样什么样的代 ...

  3. java中截取后几位字符串_java截取字符串后几位

    java中常用的字符串的截取方法_计算机软件及应用_IT/计算机_专业资料.jsp中常见使用技术,js,jstl,eclipse,java 1.length() 字符串的长度 例:char chars ...

  4. java截取字符串后几位_java截取字符串后几位字符的方法

    java截取字符串后几位字符的方法: java中截取字符串中最后几个字符可以使用String类的substring方法,具体用法参考下方说明: 1.substring(int beginIndex)s ...

  5. java取字符串后6位_java截取字符串后几位字符

    Java中的String类提供了一个substring(int from, int to)方法用于截取字符串中位置为from到to-1位置的字符. 因为字符串的字符位置是从0开始的,而substrin ...

  6. java 取字符串中的数字_java截取字符串中的数字

    随便给你一个含有数字的字符串,比如: String s="eert343dfg56756dtry66fggg89dfgf"; 那我们如何把其中的数字提取出来呢?大致有以下几种方法, ...

  7. java int数组写入文件中_Java程序将int数组写入文件

    这是我们的文件-FileWriter writer = new FileWriter("E:/demo.txt"); 现在,考虑一个整数数组-Integer arr[] = { 1 ...

  8. java数组的二进制查找_Java程序在长数组上实现二进制搜索

    可以使用java.util.Arrays.binarySearch()方法实现对长数组的二进制搜索.如果所需的长元素在数组中可用,则此方法返回其索引,否则返回(-(插入点)-1),其中插入点是元素将在 ...

  9. java 算出下一个工作日_Java 计算一段时间段内除去周六日、节假日的工作日数———超详细(全)...

    Java 计算一段时间段内除去周六日.节假日的工作日数'' 实现功能提要: 本文章记录的是某段时间的起止时间段内的工作日,既是除去周六周日以及节假日日期的工作日数: 注释比较多,因为怕自己忘记,写的可 ...

最新文章

  1. 自学python当黑客-用Python做黑客,暴力破解wifi密码
  2. python map(function, iterable, ...) 内置函数的用法 (序列迭代调用并返回)
  3. asterisk channel driver dev ref
  4. Linux下ms软件,在linux下有没有什么软件可以连接windows上的MSSQL SERVER
  5. 在输出终端中消除多余空格
  6. 垃圾分类逼疯上海人 微信官方终于出手!
  7. Kubernetes!我要用这样的姿势拥抱你|坐标深圳
  8. torch.rand() 和 torch.randn() 有什么区别?
  9. fastDFS 无法获取服务端连接资源:找不到可用的tracker
  10. ssm项目_什么是SSM,以及javaweb项目包的含义(三层架构)
  11. 联想t450进入bios设置按哪个键_联想笔记本BIOS设置图解中文说明
  12. 《淘宝数据魔方技术架构解析》阅读笔记
  13. 如何压缩Word文档大小?这个方法太简单啦!
  14. xposed绕过模拟器检测_刺激战场过模拟器检测 刺激战场模拟器检测怎么绕过
  15. 完整版一元稀疏多项式计算器
  16. 黑盒测试用例设计--题目3
  17. 优化着色器信息加载,或查看Yer数据!
  18. 跟我学AngularJs:AngularJs入门及第一个实例
  19. , customer[,-c(10,13,20)] r语言,R语言
  20. 埃斯顿三轴机器人编程_博世力士乐:埃斯顿机器人(手腕+小臂)装配线

热门文章

  1. Kotlin创建DSL
  2. 电动自行车哪家好?绿源电动车给你答案~
  3. 我的时间管理工具 [GTD]
  4. java设计模式--2.原型模式
  5. 手机与linux传输文件,Android手机与Linux系统互拷文件教程
  6. 新福华无纺布周利民之十二生肖(羊)
  7. 免费企业建站系统哪个好?
  8. python语音识别音频文件的方法
  9. unity pico串流与打包时手柄配置细节
  10. Ardupilot 添加NRA24传感器进行仿地控制