两种实例化方式

public class Demo{public static void main(String[] args){String stra = "hello world";                //直接赋值String strb = new String("hello world");    //构造方法实现
    }
}

第二种方法在堆内存空间开辟了两个空间,只用new的空间,有一块空间变成了垃圾,所以使用第一种方法

第一种方法是一个匿名对象,数据是进入数据池的

字符串之间的比较

“==”是Java提供的关系运算符,主要功能是进行数值相等判断,如果用在String对象上表示的是内存地址数值的比较;

“equals()” 是有String提供的一个方法,此方法专门负责进行字符串内容的比较。

字符串内容一旦定义不可改变

String类的常用方法

String类常用方法
 1

public String(char[] value)

构造 将字符数组变为String类对象
 2 public String(char[] value, int offset, int count) 构造 将部分字符数组变为String
 3 public char charAt(int index) 普通 返回指定索引对应的字符信息
 4 public char[] toCharArray() 普通  将字符串以字符数组的形式返回
 5 public String(byte[] bytes) 构造  将全部字节数组变为字符串
 6 public String(byte[] bytes, int offset, int length) 构造  将部分字节数组变为字符串
 7 public byte[] getBytes() 普通  将字符串变为字节数组
 8

public byte[] getBytes(String charsetName) throws

    UnsupportedEncodingException

普通  进行编码转换
 9  public boolean equals(String anObject) 普通  进行相等判断,它区分大小写
 10  public boolean equalsIgnoreCase(String anotherString) 普通 进行相等判断,不区分大小写
 11 public int compareTo(String anotherString) 普通

判断两个字符串的大小(按照字符编码比较),

此方法的返回值有如下三种结果: ·

      =0:表示要比较的两个字符串内容相等; ·

      >0:表示大于的结果; ·

      <0:表示小于的结果;

 12  public boolean contains(String s) 普通  判断指定的内容是否存在
 13 public int indexOf(String str) 普通  由前向后查找指定字符串的位置,

如果查找到了则返回(第一个字母)位置索引,

如果找不到返回-1。

 14  public int indexOf(String str, int fromIndex) 普通  由指定位置从前向后查找指定字符串的位置,找不到返回-1
 15  public int lastIndexOf(String str) 普通  由后向前查找指定字符串的位置,找不到返回-1
 16  public int lastIndexOf(String str, int fromIndex) 普通  从指定位置由后向前查找字符串的位置,找不到返回-1
 17  public boolean startsWith(String prefix) 普通  判断是否以指定的字符串开头
 18  public boolean startsWith(String prefix, int toffset) 普通  从指定位置开始判断是否以指定的字符串开头
 19  public boolean endsWith(String suffix) 普通  判断是否以指定的字符串结尾
 20  public String replaceAll(String regex, String replacement) 普通  用新的内容替换掉全部旧的内容
 21  public String replaceFirst(String regex, String replacement) 普通  替换首个满足条件的内容
 22  public String substring(int beginIndex) 普通 从指定索引截取到结尾
 23  public String substring(int beginIndex, int endIndex) 普通  截取部分子字符串的数据
 24  public String[] split(String regex) 普通  按照指定的字符串进行全部拆分
 25 public String[] split(String regex, int limit) 普通

按照指定的字符串进行部分拆分,最后的数组长度就是由limit决定

(如果能拆分的结果很多,数组长度才会由limit决定),

即:前面拆,后面不拆

 26  public String concat(String str) 普通  字符串连接,与“+”类似
 27  public String toLowerCase() 普通  转小写
 28  public String toUpperCase() 普通  转大写
 29  public String trim() 普通  去掉字符串中左右两表的空格,中间空格保留
30 public int length() 普通 取得字符串长度
31 public String intern() 普通 数据入池
32 public boolean isEmpty() 普通 判断是否是空字符串(不是null,而是"",长度0)

以上就是String类常用方法,要记住,背过,才能在以后用的时候不需要查文档,以免增加挫败感~~

转载于:https://www.cnblogs.com/wang95529/p/7912145.html

11.28 String类相关推荐

  1. Java 11:String类中的新方法

    Java 11:String类中的新方法 Java 11没有很多特定于语言的功能.因此,令人惊讶的是,在Java String Class中引入了6种新方法. Java 11 String类新方法 让 ...

  2. C++11之右值引用(三):使用C++11编写string类以及“异常安全”的=运算符

    前面两节,说明了右值引用和它的作用.下面通过一个string类的编写,来说明右值引用的使用. 相对于C++98,主要是多了移动构造函数和移动赋值运算符. 先给出一个简要的声明: class Strin ...

  3. Learning C++ No.11【string类实现】

    引言: 北京时间:2023/2/19/8:48,昨天更新了有关进程状态的博客,然后在休息的时候,打开了腾讯视屏,然后看到了了一个电视剧,导致上头,从晚上6点看到了10点,把我宝贵的博客时间给搞没了,伤 ...

  4. 【C++grammar】string类和array类

    目录 1.C++11的string类 1.创建 string 对象 2.追加字符串append函数 3.为字符串赋值assign函数 4.at, clear, erase, and empty函数 5 ...

  5. C++关于string类的模拟实现

    文章目录 一.string类的模拟实现 1.成员变量 2.构造函数 (1)无参构造函数 (2)有参构造函数 3.c_str函数 4.operator[] 5.深浅拷贝问题 (1)浅拷贝 (2)深拷贝 ...

  6. 重学JavaSE 第11章 : 常用类API、String、日期API、比较器、BigDecimal、System等

    文章目录 一.字符串相关的类 1.1.String类的概述 1.2.理解String的不可变性 1.3.String不同实例化方式的对比 1.4.String不同拼接操作的对比 1.4.1.Strin ...

  7. 最大质因数 最大回文数乘积 字符串String类用法_Java每日练习题及题解(11月16日)

    <Java每日练习题及题解>系列目录 1.有限条件求和_Java每日练习题及题解(11月15日) 2.最大质因数 最大回文数乘积 字符串String类用法_Java每日练习题及题解(11月 ...

  8. 字符串(string类)

    [1]String类基本函数如何实现? 示例代码如下: 1 #include<iostream> 2 #include<assert.h> 3 #include<stri ...

  9. JDK1.8源码(三)——java.lang.String 类

    String 类也是java.lang 包下的一个类,算是日常编码中最常用的一个类了,那么本篇博客就来详细的介绍 String 类. 1.String 类的定义 public final class ...

最新文章

  1. Android添加权限大讲解
  2. 面试前必知必会的二分查找及其变种
  3. java hibernate详细_Java事务管理学习之Hibernate详细介绍
  4. 图像几何变换:旋转,缩放,斜切
  5. 初入R语言,绘制heatmap图
  6. 计算机辅助设计工业产品cad竞赛试题,2017计算机辅助设计(工业产品CAD)赛项样题...
  7. 数据结构 旅游规划(Dijkstra+Dfs)
  8. 什么工作经常出差_商旅人群洞察:什么样的人经常坐飞机出差?
  9. linux yast 软件管理_系统管理工具 Spacewalk
  10. linux内核 semaphore,Linux内核参数信号量semaphore设置
  11. Android 基于阿里云播放器实现仿抖音播放(一)
  12. pinyin4j获取汉字正确的全拼和简拼
  13. tas5424_TAS5424 Datasheet(数据表) 16 Page - Texas Instruments
  14. iphone邮件服务器 263,如何在iPhone和iPad中设置使用263企业邮箱?
  15. c语言头文件有哪些intr,有没有大神帮帮忙
  16. 传感技术复习笔记(5)——电容式传感器
  17. error: use of undeclared identifier 'bool'以及C各编译器问题
  18. echart,highcharts,chart.js等chart属性记录
  19. HDU 1427 速算24点 (深搜)
  20. 小爱同学定制语音包分享_小爱同学音色定制链接

热门文章

  1. 如何手动启动消防广播_怎样启动消防应急广播及求救系统?
  2. 静态导入 java面试_Java面试系列【静态导入】-静态导入,基础篇
  3. SpringBoot中的定时任务的同步与异步
  4. collection.stream()以及collect()方法
  5. Java中 java.io.IOException: Broken pipe
  6. Ubuntu关闭防火墙
  7. 同样是程序员,他转行在新加坡卖鱼走向巅峰!
  8. Python3.0的新改动
  9. Major GC 是清理老年代。 Full GC 是清理整个堆空间—包括年轻代和老年代。
  10. commons-fileupload 的详细介绍与使用