学习笔记JavaAPI之String类
[size=10.5000pt]一、所属包java.lang.String,没有子类。特点:一旦被初始化就不可以被改变。
创建类对象的两种方式:
String s1 = “abc”;
String s1 = new String(“abc”);
内存存在方式:
String Str = “jack”这个语句会先检查字符串常量池是否存放这个”jack1”这个字符串对象,如果没有存在,那么就会在字符串常量池中创建这个字符串对象,如果存在直接返回该字符串的内存地址值。
String str3 = new String(“jack”) 该语句会创建两个对象,首先会先检查字符串常量池中存不存在jack这个字符串对象,如果不存在就会创建,如果存在就返回内存地址值。创建了出来之后,new String这个语句就会在堆内存中开辟一个字符串对象。总共两个对象。
注意:equals比较的是对象的内存地址,但是String类复写了Object类中的equals方法,用于判断字符串是否相同。s1.equals(s2)为true。
[size=10.5000pt]二、对字符串操作的方法
[size=10.5000pt]1、获取方法:
1.1:int length() 字符串的长度
1.2:char charAt(int index) 特定位置的字符 (角标越界报错)
1.3:int indexOf(int ch) 特定字符的位置(overload)(该字符多余1个返回第一个出现的位置)没有找到返回-1
Int indexOf(int ch,int fromIndex) 从指定位置开始搜索
int indexOf(String str) 子字符的位置(overload)
Int indexOf(iString str,int fromIndex) 从指定位置开始搜索
1.4:int lastIndexOf(int ch) 最后一个字符的位置
[size=10.5000pt]2、判断方法:
2.1:字符串是否包含某个子串
boolean contains(CharSequences) CharSequences字符序列也可以用int indexOf(String str),返回-1说明不包含。
2.2是否以指定内容开头 Boolean startsWith(String str)
2.3是否以指定内容结尾 boolean endsWith(String str)
2.4是否为空 boolean isEmpty()是否长度为0 如:“” null V1.6
2.5是否相等 boolean equals(Object anObject) 是否相等
boolean equalsIgnoreCase(String anotherString) 忽略大小写是否相等
[size=10.5000pt]三、转换功能
3.1:将字符数组转成字符串
1)构造函数:String (char[])
String (char[],offset,count)将字符数组一部分转成字符串(offset开始,count个数)
例:
Char[] arr = {‘a’,‘b’,‘c’,‘d’,‘e’};
String str = new String (arr,1,3);
[size=10.5000pt] 2)静态方法:
[size=10.5000pt] 3)Static String copyValue Of(char[])
[size=10.5000pt] 4)Static String copyValue Of(char[],offset,count)
Static String Value Of(char[])
3.2:将字符串转成字符数组
Char[] toCharArray();
3.3将字节数组转成字符串
String (byte[])
String(byte[],offset,count)
3.4字符串转成字节数组
Byte[] getBytes();
3.5:将基本数据类型转成字符串
Static String Value Of(int)
Static String Value Of(double)
2+””
四、替换方法
String replace(char old,char,new);
String s=”hello java”; String s1 = s.replace(e,k); s为hello java, s1 为hkllo java
String s1 = s.replace(“java”,”word”);
[size=10.5000pt]五、切割方法
String[] split(regex);
[size=10.5000pt]六、子串,获取
String substring(int beginindex,int endindex)包含头不包含尾
String substring(int begin)
[size=10.5000pt]七、转换、去除空格、比较
7.1:大小写转换
String toUpperCase();
String toLowerCase();
7.2:去除两端多个空格
String trim();
7.3对两个字符串自然顺序比较
Int CompareTo() 等于0 小于 负数 大于-正数 比较的ASCII

转载于:https://blog.51cto.com/14314113/2389491

AJPFX学习笔记JavaAPI之String类相关推荐

  1. Java学习笔记20(String类应用、StringBuffer类、StringBuilder类)

    1.获取指定字符串中大小写和数字的个数: package demo;public class StringTest {public static void main(String[] args) {g ...

  2. # C# 学习笔记(4) 类

    C# 学习笔记(4) 类 面向对象编程主要是为了写出一个通用的代码,屏蔽差异,方便开发大型项目.类就是面向对象编程的核心之一.和C语言的结构体相比,结构体拥有的功能,类统统都有,除此之外,类还有许多新 ...

  3. JDBC学习笔记02【ResultSet类详解、JDBC登录案例练习、PreparedStatement类详解】

    黑马程序员-JDBC文档(腾讯微云)JDBC笔记.pdf:https://share.weiyun.com/Kxy7LmRm JDBC学习笔记01[JDBC快速入门.JDBC各个类详解.JDBC之CR ...

  4. Effective Java(第三版) 学习笔记 - 第四章 类和接口 Rule20~Rule25

    Effective Java(第三版) 学习笔记 - 第四章 类和接口 Rule20~Rule25 目录 Rule20 接口优于抽象类 Rule21 为后代设计接口 Rule22 接口只用于定义类型 ...

  5. Java程序猿的JavaScript学习笔记(10—— jQuery-在“类”层面扩展)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  6. Python学习笔记:创建分数类

    Python学习笔记:创建分数类 1.编写创建分数类.py # 创建分数类from math import gcd# 定义分数类 class Fraction: def __init__(self, ...

  7. kotlin学习笔记——枚举、封闭类

    1.枚举 kotlin中提供类枚举的实现,与java相同.枚举可以带参数,如 enum Icon(val res: Int){MENU(R.drawable.menu),BACK(R.drawable ...

  8. Java中字符串的学习(一)String类的概述及常见方法使用

    转载请注明出处http://www.cnblogs.com/devtrees/p/4347079.html (拓展:Api:编程语言对外给我们提供的应用程序接口.) 一.概述: 我们平时上网发帖,帖子 ...

  9. java中String类是什么_Java中字符串的学习(一)String类的概述及常见方法使用

    转载请注明出处http://www.cnblogs.com/devtrees/p/4347079.html (拓展:Api:编程语言对外给我们提供的应用程序接口.) 一.概述: 我们平时上网发帖,帖子 ...

最新文章

  1. 归一化 vs 标准化 定量的分析
  2. 外媒:高通指控苹果窃取其芯片机密信息!
  3. Zookeeper 生产实践的一些经验分享
  4. php验证时区是否存在,php – 验证来自不同网站的时区名称?
  5. Java AOP研究之@Aspect注解的工作原理
  6. vue 路由知识点梳理及应用场景整理
  7. NA-NP-IE系列实验28:HDLC 和PPP 封装
  8. 在类中调用delete this问题
  9. bat管理mstsc 远程桌面连接
  10. 致敬创新者 | 看中国小企业掌握哪些核心技术?
  11. java代码输出1到100的质数
  12. 递归删除评论php,php如何递归删除文件
  13. 游戏开发中一些常用的数学知识
  14. java线程栈日志_Java线程堆栈
  15. 图像的手绘效果(PIL的应用实例)
  16. 金蝶云星空二次开发-数据库存查询
  17. 博客整理:人在运维囧途系列学习目录
  18. MATLAB 插值+计算离散点曲率
  19. Unity3D坦克大战
  20. Windows 8 引入新版的凭据管理器

热门文章

  1. 白话Elasticsearch61-进阶篇之基于Term Vectors深入探查数据的情况
  2. Oracle优化05-执行计划
  3. 学习笔记(三)——CSS进阶
  4. python线程池超过最大数量_python自定义线程池控制线程数量
  5. Android的Application的生命周期方法
  6. android唤醒前台,Android将后台应用唤起到前台的方法 (SDK 4.0, ActivityLifecycleCallbacks)...
  7. mysql 注入用例_mysql-常用注入渗透手法
  8. 三星关闭shell提示_凌晨系统崩溃,低级千年虫问题,三星就是这样将中国市场拱手相让...
  9. Objective-C中MRC和ARC的自我理解
  10. mysql x64界面配置版下载_MySQL下载安装、配置与使用(win7x64)