String类:

字符串是一个特殊的对象。字符串最大的特点:一旦被初始化就不可以被改变。

String类适用于描述字符串事物。那么它就提供了多个方法对字符串进行操作。

常见的操作:

1.获取:

int length():获取字符串长度

char charAt(int index)根据位置获取位置上某个字符

int indexOf(int ch)根据字符获取该字符在字符串中的位置;返回的是ch在字符串中第一次出现的位置

int indexOf(int ch,int formIndex):从fromIndex指定位置开始,获取ch在字符串中出现的位置

int indexOf(String str):返回的是str在字符串中第一次出现的位置

int indexOf(String str,int formIndex)从fromIndex指定位置开始,获取str在字符串中出现的位置

如果没有找到返回的是-1;

int lastIndexOf(int ch):从右边开始查找,获取ch在字符串中出现的位置。

2.判断

boolean contains(str):字符串中是否包含某一个字符串

boolean isEmpty():原理就是判断长度是否为0,字符串中是否有内容

boolean startsWith(str):字符串是否是以指定内容开头

boolean endsWith(str):字符串是否是以指定内容结尾

boolean equals(str):判断字符串的内容是否相同

boolean equalsIgnoreCase():判断内容是否相同,并且忽略大小写

3 转换

将字符数组转换成字符串

构造函数:

String(char[])

String(char[],offset,count)将字符数组中的一部分转换成字符串

静态方法:

static String copyValueOf(char[])

static String copyValueOf(char[] data,int offset,int count)

static String valueOf(char[])

将字符串转换成字符数组

char[] toCharArray()

将字节数组转换成字符串

static String copyValueOf(byte[])

static String copyValueOf(byte[] data,int offset,int count)

将字符串转换成字节数组

byte[] getBytes()

将基本数据类型转换成字符串

static String valueOf(int)

static String valueOf(double)

4 替换

String replace(oldchar,newchar)可以是单个字符,也可以是字符串

5 切割

String [] split(regex):把字符串分开

6 子串,获取字符串中的一部分

String subString(begin index):从指定位置到结尾

String subString(begin index,end index):包含头不包含尾

7 转换,去除空格,比较

String toUpperCase()/String toLowerCase():将字符串转成大写或者小写

String trim():将字符串两端的多个空格去除

int compareTo(String):对两个字符串进行自然顺序的比较

JAVA学习笔记-10的更多相关文章

  1. Java 学习笔记(10)——容器

    之前学习了java中从语法到常用类的部分.在编程中有这样一类需求,就是要保存批量的相同数据类型.针对这种需求一般都是使用容器来存储.之前说过Java中的数组,但是数组不能改变长度.Java中提供了另一 ...

  2. Java学习笔记10

    31.编写当年龄age大于13且小于18时结果为true的布尔表达式age > 13 && age < 18 32.编写当体重weight大于50或身高大于160时结果为t ...

  3. java学习笔记(10) —— ActionContext、ServletActionContext、ServletRequestAware用法

    核心思想 1.ActionContext HttpServletRequest getAttribute setAttribute ActionContext get put //ActionCont ...

  4. Java学习笔记10(面向对象三:接口)

    接口: 暂时可以理解为是一种特殊的抽象类 接口是功能的集合,可以看作是一种数据类型,是比抽象类更抽象的"类" 接口只描述所应该具备的方法,并没有具体实现,具体实现由接口的实现类(相 ...

  5. Java学习笔记-10.io流

    1.输入流,只能从中读取数据,而不能向其写出数据.输出流,只能想起写入字节数据,而不能从中读取. 2.InputStream的类型有: ByteArrayInputStream 包含一个内存缓冲区,字 ...

  6. Java学习笔记10(面对对象:构造方法)

    在开发中经常需要在创建初始化对象时候明确对象的属性值, 比如Person对象创建的时候就给Person的属性name,age赋值, 这里就要用到构造方法: 构造方法是类的一种特殊方法,它的特殊性体现在 ...

  7. 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁

    什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...

  8. Java学习笔记(04)

    Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...

  9. 0028 Java学习笔记-面向对象-Lambda表达式

    匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...

  10. 0025 Java学习笔记-面向对象-final修饰符、不可变类

    final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...

随机推荐

  1. pytest基本使用指南

    注:关于pytest的基础要点个人已经总结好了, 一. 启动: 在主函数main下启动:pytest.main(['-q','test_demo.py']) 在命令行启动:pytest ./test_ ...

  2. PPMM

    代码 #include<cstdio> using namespace std; const int N = 1000000 , INF = 2e9; int n , m , x , he ...

  3. placeholder 颜色修改

    input::-webkit-input-placeholder{ color:#fff; } input::-moz-placeholder{ /* Mozilla Firefox 19+ */ c ...

  4. 【C/C++】main函数中的argc和argv

    1.简述argc和argv 当你用命令行执行文件时,可在后面接指令,以控制程序的运行 argc(argument counter)表示指令的数量 argv(argument vector)表示指令向量 ...

  5. liunx安装docker (自我记录)

    1 安装 安装所需的软件包dnf install -y yum-utils device-mapper-persistent-data lvm2 //官方源地址(比较慢) ~]# dnf config ...

  6. DOM04~

    事件对象及属性 事件对象 事件流 事件委托 综合案例 事件对象 获取事件对象 事件对象常用属性 什么是事件对象? 1.1 也是个对象,这个对象里有事件触发时的相关信息 1.2 例如鼠标点击事件中,事件 ...

  7. CF1744F MEX vs MED

    个人思路: 条件可以转化成长度为 \(x\) 的区间需要包含 \([0,\lfloor \frac{(x-1)}{2} \rfloor]\). 我们从小到大枚举每一个数 \(i\),计算长度为 \(i ...

  8. 使用git cz 时报模块找不到 使用commitizen init cz-conventional-changelog --save --save-exact --force 又报下面错 头晕

    使用git cz 时报模块找不到 使用commitizen init cz-conventional-changelog --save --save-exact --force 又报下面错 头晕 At ...

  9. 只会Jquery,后端程序员如何学会前端(webpack,react,babel,es5,es6)

    写在前 希望通过短暂的学习,可以达到一下目标: 1.能看懂现在前端的工程化手段 2.知道当前前端群体中大致的解决问题的思路 3.当前的问题在哪里,技术发展趋势是什么 4.建立起自己的认知模型 文章内容 ...

  10. 使用navicat进行数据传输报错ERROR: permission denied for table xxx

    数据库我使用的是pgsql,在进行数据传输时报错ERROR: permission denied for table demo1,这里的原因是权限问题哦,所以可以给定当前用户更大权限,我这里则是直接切 ...