String 详解 / 常用API

简介

  String 是不可改变的字符串序列。String 为字符串常量

  StringBuilder 与StringBuffer 均为可改变的字符串序列。为字符串变量

    StringBuilder 是非线程安全的 (JDK 1.5)

    StringBuffer 是线程安全的 (JDK 1.0)

  总结:  

    String : 适用于少量的字符串操作的情况

    StringBuilder : 适用于单线程下在字符缓冲区进行大量操作的情况

    StringBuffer : 适用于多线程下载字符缓冲区进行大量操作的情况

String API 详解

  判断

    判断内容是否相同

    •     boolean equals()   对字符串进行判断,是否内容相同
    •     boolean equalsIgnoreCase()   对字符串进行判断,忽略大小写

    判断字符串是否以某个字符开头或结尾

    •     boolean startsWith(String prefix)   判断字符串是否以指定字符开头
    •     boolean startsWith(String prefix, int toffset)  判断指定字符串从指定索引开始,是否以指定的字符开头
    •     Boolean endsWith(String suffix)   判断字符串是否以指定字符结尾

  获取

    长度

    •     int  length()   获取字符串的长度

    角标

    •      int  indexOf()   获取开始时的索引

    示例:

         // 定义字符串,
String str1 = "1-2-3-QWE";
/**
* indexOf(int ch) 获取字符第一次出现的索引
* 打印结果 : 1
*/
System.out.println(str1.indexOf("-")); /**
* indexOf(int ch, int fromIndex)
* 获取字符第一次出现的索引,从指定索引开始搜索
* 打印结果 : 3
*/
System.out.println(str1.indexOf("-", 2)); /**
* indexOf(String str, int fromIndex)
* 获取str3字符串str1字符串中的索引
* 打印结果 : 6
*/
String str3 = "QW";
System.out.println(str1.indexOf(str3, 0));

indexOf

    •               int  lastIndexOf(int ch)   获取字符串最后出现的的索引
    •      int  lastIndexOf(String str)  获取指定子字符串在该字符串中出现的的索引
    •      int  lastIndexOf(String str, int fromIndex)  获取指定子字符串在该字符串中最后出现的的索引

  获取字符串指定索引的字符

    •     char charAt(int index)   返回字符串指定索引的值

  其他类型换成字符串

    •     String valueOf()  返回某种类型参数的字符串形式

    示例:

         // 定义变量i
int i = 123;
// 返回整数类型的字符串格式。即把整型转换成字符串格式
System.out.println(String.valueOf(i));

valueOf

去空格

    • String trim()   去除字符串两端空格

    示例:

         // 定义字符串,两端带空格
String str1 = " 123qwe ";
// 调用trim 去除字符串两端空格
// 打印结果 : 123qwe
System.out.println(str1.trim());

trim

  截取字符串

    •     String subString(int beginIndex)  根据规则,截取字符串

    示例:

 // 定义字符串,两端带空格
String str1 = "1-2-3-QWE";
/**
* String substring(int beginIndex)
* 截取字符串,截取从索引开始之后的字符串
* (包含索引)
* 打印结果 : 2-3-QWE
*/
System.out.println(str1.substring(2)); /**
* String substring(int beginIndex, int endIndex)
* 截取字符串,截取从索引开始到后一个索引的字符串
* (包含前索引,不包含后索引)
* 打印结果 : 2-
*/
System.out.println(str1.substring(2, 4));

subString

  拆分字符串

    •     String[] split(String regex)   根据规则,拆分字符串

    示例:

 // 定义字符串,两端带空格
String str1 = "1-2-3-QWE";
/**
* split(String regex) 根据指定规则拆分字符串
* 打印结果 : [1, 2, 3, QWE]
*/
String[] str = str1.split("-");
System.out.println(Arrays.toString(str));
/**
* split(String regex, int limit)
* 根据指定规则,将字符串拆分成几个字符串
* 打印结果 : [1, 2, 3-QWE]
*/
String[] split = str1.split("-", 3);
System.out.println(Arrays.toString(split));

split

  替换字符串中的字符

    •    String replace(char oldChar, char newChar)   根据规则,替换字符

    示例:

         // 定义字符串,两端带空格
String str1 = "1-2-3-QWE";
/**
* replace(char oldChar, char newChar)
* 根据指定规则,替换字符串中的字符。
* 打印结果 :1*2*3*QWE
*/
System.out.println(str1.replace("-", "*"));

replace

  转换

    将字符串转换成数组

    •     char[] toCharArray()   将字符串转换成一个新的字符数组

    示例:

 // 定义字符串,两端带空格
String str1 = " 123QWE ";
// 调用toCharArray() 将字符串中的字符,转换成大写
System.out.println(str1.trim().toCharArray());

toCharArray

    字符串的大小写转换

    •     String toUpperCase()   将字符串所有字符转换成大写

    示例:

         // 定义字符串,两端带空格
String str1 = " 123qwe ";
// 调用toUpperCase 将字符串中的字符,转换成大写
System.out.println(str1.toUpperCase());

toUpperCase

    •      String toLowerCase()   将字符串中的所有字符转换成小写

    示例:

         // 定义字符串,两端带空格
String str1 = " 123QWE ";
// 调用toLowerCase() 将字符串中的字符,转换成大写
System.out.println(str1.toLowerCase());

toLowerCase

String 字符串详解 / 常用API的更多相关文章

  1. 03-Java String字符串详解

    1.Java字符串String A.实例化String字符串:直接赋值(更合理一些,使用较多).使用关键字new. B.String内容的比较 // TODO Auto-generated metho ...

  2. C# string 字符串详解 恒定 驻留

    string是一种很特殊的数据类型,它既是基元类型又是引用类型,在编译以及运行时,.Net都对它做了一些优化工作,正式这些优化工作有时会迷惑编程人员,使string看起来难以琢磨.这篇文章共四节,来讲 ...

  3. Swift_字符串详解(String)

    Swift_字符串详解(String) 类型别名 //类型别名 fileprivate func testTypeAliases() { let index = String.Index.self p ...

  4. Java String类详解

    Java String类详解 Java字符串类(java.lang.String)是Java中使用最多的类,也是最为特殊的一个类,很多时候,我们对它既熟悉又陌生. 类结构: public final ...

  5. Python变量和字符串详解

    Python变量和字符串详解 几个月前,我开始学习个人形象管理,从发型.妆容.服饰到仪表仪态,都开始做全新改造,在塑造个人风格时,最基础的是先了解自己属于哪种风格,然后找到参考对象去模仿,可以是自己欣 ...

  6. 【转】Java魔法堂:String.format详解

    Java魔法堂:String.format详解     目录     一.前言    二.重载方法     三.占位符     四.对字符.字符串进行格式化     五.对整数进行格式化     六. ...

  7. SQL Server日期时间格式转换字符串详解

    本文我们主要介绍了SQL Server日期时间格式转换字符串的相关知识,并给出了大量实例对其各个参数进行对比说明,希望能够对您有所帮助. 在SQL Server数据库中,SQL Server日期时间格 ...

  8. 小白的Python之路 day5 random模块和string模块详解

    random模块详解 一.概述 首先我们看到这个单词是随机的意思,他在python中的主要用于一些随机数,或者需要写一些随机数的代码,下面我们就来整理他的一些用法 二.常用方法 1. random.r ...

  9. C++之string类型详解

    C++之string类型详解 之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必担心内存是否足够.字符串长度等等,而且作为一个泛型类出现,他集成的操作函 ...

随机推荐

  1. jmeter,测登录,要不要过滤掉JS,CSS等请求?感觉过滤掉了压出来的数据就不真实?

    首先,我们来明确下你的性能测试目的,你的目的是服务端的性能还是前端的性能.这两用目的所涉及到的测试场景和工具等方法是不一样的.1.我们先来谈谈服务端的性能.一般的web产品,像css, jpeg等这种 ...

  2. ARM Linux 3.x的设备树(Device Tree)【转】

    转自:http://blog.csdn.net/21cnbao/article/details/8457546 宋宝华 Barry Song <21cnbao@gmail.com> 1.  ...

  3. Splay算法摘要

    先介绍变量定义 int n; struct Node { //Splay节点定义 ],val,num,siz; //fa:它爸爸:son它儿子,左0右1:val:这个节点的值 //num:这个值的数量 ...

  4. Django中的QuerySet

    一.QuerySet 查询集,类似一个列表,包含了满足查询条件的所有项.QuerySet 可以被构造,过滤,切片,做为参数传递,这些行为都不会对数据库进行操作.只有你查询的时候才真正的操作数据库.意味 ...

  5. Windows 10安装MongoDB(安装&启动)

    Windows 10家庭中文版,MongoDB 3.6.3, 最近在学习Scrapy,可以却从未将scraped data存储到数据库中.在看过一些文档后,Scrapy会和MongoDB结合使用(还有 ...

  6. 产看Linux运行时间

    Linux下如何查看系统启动时间和运行时间 1.uptime命令输出:16:11:40 up 59 days, 4:21, 2 users, load average: 0.00, 0.01, 0.0 ...

  7. Codeforces 988F Rain and Umbrellas(DP)

    题目链接:http://codeforces.com/contest/988/problem/F 题目大意: 有三个整数a,n,m,a是终点坐标,给出n个范围(l,r)表示这块区域下雨,m把伞(p,w ...

  8. Codeforces 807C - Success Rate(二分枚举)

    题目链接:http://codeforces.com/problemset/problem/807/C 题目大意:给你T组数据,每组有x,y,p,q四个数,x/y是你当前提交正确率,让你求出最少需要再 ...

  9. Ubuntu 14.04 16.04 Linux nvidia 驱动下载与安装

    Ubuntu 14.04 16.04 nvidia 驱动安装 最简单直观的方式是在如下的对话框中直接选择驱动安装即可 但是有时候,驱动不够新,比如14.04用的是340.98版本,如果手动安装驱动可以 ...

  10. PHP性能调优,PHP慢日志---PHP脚本执行效率性能检测之WebGrind的使用

    如何一睹webgrind这个神奇的php性能检测工具神奇呢? 废话不多说首先webgrind这个性能检测是需要xdebug来配合,因为webgrind 进行性能检测分析就是通过xdebug生成的日志文 ...