String类
字符串的功能
A:判断功能
boolean equals(Object obj)//比较对象
boolean equalsIgnoreCase(String str)//忽略大小写
boolean contains(String str)//是否包含
boolean startsWith(String str)//判断字符串开头是否相同
boolean endsWith(String str)//判断字符串结尾是否相同
boolean isEmpty()//判断是否为空
B:获取功能
int length()//获取长度
char charAt(int index)//获取String的索引字符
int indexOf(char ch)//获取字符在字符串中的索引 字符串中没有则返回为-1
int indexOf(String str)//获取字符串在字符串中的索引
int indexOf(char ch,int fromIndex)//从fromIndex位置开始搜索ch字符如果没有则返回-1 如果存在则显示ch在字符串中的位置
int indexOf(String str,int fromIndex)//重上;将字符改为字符串
String substring(int start)//从start位置开始截取到结尾
String substring(int start,int end)//从start到end位置截取
C:转换功能
byte[] getBytes()//获取字节数组
char[] toCharArray()//转换成字符数组
static String valueOf(char[] chs)//将字符数组转换成字符串
Integer of = Integer.valueOf("100");//将字符串转换成Integer类型
String of1 = String.valueOf(of);//将Integer转为字符串
static String valueOf(int i)将int---->转换为string
String toLowerCase()//转换写
String toUpperCase()//转换小写
String concat(String str)//往string后面追加str 只能追加String 不能追加int 但是“+”可以连接任意类型
D:其他功能
a:替换功能
String replace(char old,char new)//字符替换
String replace(String old,String new)//字符串替换
b:去空格功能
String trim()//去除空格
c:按字典比较功能
int compareTo(String str)//比较字符串
int compareToIgnoreCase(String str)//忽略大小写
StringBuffer
(1)用字符串做拼接,比较耗时并且也耗内存,而这种拼接操作又是比较常见的,为了解决这个问题,Java就提供了
一个字符串缓冲区类。StringBuffer供我们使用。
(2)StringBuffer的构造方法
A:StringBuffer()
B:StringBuffer(int size)
C:StringBuffer(String str)
(3)StringBuffer的常见功能
A:添加功能
append()
B:删除功能
deleteCharAt(int index)
delete(start, end)
C:替换功能
replace(start, end, str)
D:反转功能
reverse()
E:截取功能(注意这个返回值)
(4)StringBuffer
A:String和StringBuffer相互转换
String -- StringBuffer
构造方法
StringBuffer -- String
toString()方法
B:字符串的拼接
C:把字符串反转
D:判断一个字符串是否对称
(5)面试题
小细节:
StringBuffer: 同步的,数据安全,效率低。
StringBuilder:不同步的,数据不安全,效率高。
A:String,StringBuffer,StringBuilder的区别
String:拼接过程中对内从损耗特别大,字符串具有不可变形
StringBuffer:拼接过程中大大节约了内存的消耗,修改字符串特别简单,易操作
StringBuilder:和StringBuffer效果相同,但就是数据安全性和效率高低不同
B:StringBuffer和数组的区别?
数组String的长度是不可变的,而StringBuffer的长度是可变的。
如果你对字符串中的内容经常进行操作,特别是内容要修改时,需要使用StringBuffer对象进行修改
(6)注意的问题:
String作为形式参数,StringBuffer作为形式参数。
Character
Character ch = new Character('a');
A:判断给定的字符是否是大写
ch.isUpperCase(ch);
B:判断给定的字符是否是小写
ch.isLowerCase(ch);
C:判断给定的字符是否是数字字符
ch.isDigit(ch);
D:把给定的字符转成大写
ch.toLowerCase(ch);
E:把给定的字符转成小写
ch.toUpperCase(ch);
String类的更多相关文章
- 标准库String类
下面的程序并没有把String类的所有成员方法实现,只参考教程写了大部分重要的成员函数. [cpp] view plain copy #include<iostream> #include ...
- 自己实现简单的string类
1.前言 最近看了下<C++Primer>,觉得受益匪浅.不过纸上得来终觉浅,觉知此事须躬行.今天看了类类型,书中简单实现了String类,自己以前也学过C++,不过说来惭愧,以前都是用C ...
- C++ string类的实现
c++中string类的实现 今天面试被考到了, 全给忘记了!!! //string类的实现 #include <iostream> #include <string.h> ...
- String类的功能
String类 标红的为较少出现的 1.判断功能 boolean equals(Object obj) :比较字符串内容是否相同,区分大小写 boolean equalsIg ...
- java基础复习:final,static,以及String类
2.final 1)为啥String是final修饰的呢? 自己答: 答案: 主要是为了“效率” 和 “安全性” 的缘故.若 String允许被继承, 由于它的高度被使用率, 可能会降低程序的性能,所 ...
- String类和StringBuffer类的区别
首先,String和StringBuffer主要有2个区别: (1)String类对象为不可变对象,一旦你修改了String对象的值,隐性重新创建了一个新的对象,释放原String对象,StringB ...
- 05_整理String类的Length()、charAt()、 getChars()、replace()、 toUpperCase()、 toLowerCase()、trim()、toCharArray()使用说明
Question: 整理String类的Length().charAt(). getChars().replace(). toUpperCase(). toLowerCase().trim().toC ...
- 标准C++中的string类的用法总结
标准C++中的string类的用法总结 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有 ...
- String类常用方法
1.String类的特点,字符串一旦被初始化就不会被改变. 2.String对象定义的两种方式 ①String s = "affdf";这种定义方式是在字符串常量池中创建一个Str ...
- 运用String类实现一个模拟用户登录程序
package Test; import java.util.Scanner; // 模拟用户登录程序 // 思路: // 1.用两个String类分别接收用户名和密码 // 2.判断输入的用户名和密 ...
随机推荐
- 在vim中使用查找命令查找指定字符串
要自当前光标位置向上搜索,请使用以下命令: /pattern Enter 其中,pattern 表示要搜索的特定字符序列. 要自当前光标位置 ...
- “老坛泡新菜”:SOD MVVM框架,让WinForms焕发新春
火热的MVVM框架 最近几年最热门的技术之一就是前端技术了,各种前端框架,前端标准和前端设计风格层出不穷,而在众多前端框架中具有MVC,MVVM功能的框架成为耀眼新星,比如GitHub关注度很高的Vu ...
- Android手机相册的布局
实现类似下面的这种布局的方法
- 用Kotlin实现Android定制视图(KAD 06)
作者:Antonio Leiva 时间:Dec 27, 2016 原文链接:https://antonioleiva.com/custom-views-android-kotlin/ 在我们阅读有关c ...
- git快速get
配置:git config --global user.name 'yangshaoxiang' git config --global user.email '254135495@qq.com' s ...
- 警惕!高版本VS发布时预编译导致Mono中Razor找不到视图
早前一段时间,一位朋友在Q群里面找到我,说它按照<Linux.NET学习手记>的操作,把一个ASP.NET MVC 4.0的项目部署到Mono之后出现Razor无法找到视图的现象.当时费了 ...
- 入园记------我的DBA之路
今天周一拖着疲惫的身躯 11点才离开公司,回到家估计写完这篇博客就要17号了. 一个人走在回家的路上,很黑,突然很多感触,一个人在北京拼搏,不敢停止学习的脚步,因为只要停下来就会感觉到孤独. 回顾一下 ...
- Entity Framework 6 Recipes 2nd Edition(11-5)译 -> 从”模型定义”函数返回一个匿名类型
11-5. 从”模型定义”函数返回一个匿名类型 问题 想创建一个返回一个匿名类型的”模型定义”函数 解决方案 假设已有游客(Visitor) 预订(reservation)房间(hotel ) 的模型 ...
- 解析大型.NET ERP系统数据访问 对象关系映射框架LLBL Gen Pro
LLBL Gen Pro是一个为.NET开发人员设计的的对象关系映射(ORM)框架,与NHibernate,Entity Framework等框架一样,通过实体与数据表的映射,实现关系数据库持久化. ...
- 【Win 10应用开发】延迟加载图片的另一种方法
上一篇文章中老周给大伙介绍了x:Phase和x:Bind的用法,并演示了一个延迟加载的示例.不过,那个例子会遗留一个问题,就是UI线程被阻塞,所以启动应用较慢. 如果希望图片可以延迟加载,或许我们可以 ...