javaAPI_1
来源:互联网 发布:mac high sierra知乎 编辑:程序博客网 时间:2024/05/17 20:21
---------------------- android培训、java培训、期待与您交流!----------------------
String类:
String
类代表字符串。Java 程序中的所有字符串字面值(如"abc"
)都作为此类的实例实现。字符串最大特点:一旦被初始化就不可以被改变
实例:String s1=”abc”和String s2=new String(“abc”);区别?s1在内存中有一个对象,s2在内存中有两个对象
在常量池中存在的字符串,当再定义一个相同的字符串时,java在内存中不会再开辟空间,而是直接用原来相同的那个值,如:String s1=”abc”;String s2=”abc”;当判断s1==s2时,结果为true,常量池存在于内存中的共享区中
字符常用方法的使用:
1. 获取
1.1字符串中包含的字符数,即字符的长度:int length();
1.2根据位置获取字符串中的字符:char charAt(int index);
1.3.1根据字符(字符串)获取该字符(字符串)在字符串中的位置:
int indexOf(ch);返回的是ch在字符串中第一次出现的位置;(当不存在时返回-1);
int indexOf(ich,int index); 返回的是ch在字符串中从index以后开始出现的位置;
1.3.2根据字符(字符串)获取该字符(字符串)在字符串中最后出现的位置:
int lastIndexOf
(ch)
;返回指定字符(字符串)在此字符串中最后一次出现处的索引。
lastIndexOf
(ch, int fromIndex);
返回指定字符(字符串)在此字符串中最后一次出现处的索引,从指定的索引处开始进行反向搜索。
2.判断(常用于判断文件名称是否以什么开头,文件类型(即后缀名));
2.1字符串中是否包含某个子串
boolean contains(CharSequence s);
当且仅当此字符串包含指定的 char 值序列时,返回 true;(特殊之处:indexOf(str)也可用于判断是否包含某个字符串)。
2.2字符串中是否有内容
boolean isEmpty(),判断字符串长度是否为0;
2.3字符串是否以指定内容开头
booleanstartsWith(String prefix);
测试此字符串是否以指定的前缀开始。
2.4字符串是否以指定内容结尾
boolean endsWith(String suffix)
测试此字符串是否以指定的后缀结束。
2.5比较字符串:
boolean equalsIgnoreCase(String anotherString)
将此 String
与另一个 String
比较,不考虑大小写。(考虑大小写用equals);
3. 转换:(特殊:字符串和字节数组在转换过程中是可以知道编码表的)
3.1将字符数组转换成字符串:
构造函数:String(char[]);String(char[],int offset,int count);
静态方法:static String copyValueOf(char[]); static String copyValueOf(char[],int offset,int count);
static String valueOf((char[]); static String ValueOf(char[],int offset,int count);
3.2将字符串转换成字符数组:
char[]toCharArray()
将此字符串转换为一个新的字符数组。
3.3将字节数组转换成字符串:
构造函数:String(byte[]);String(byte[],int offset,int count);
3.4将字符串转换为字节数组:
byte[]
getBytes()
3.5将基本数据类型转换成字符串:
static String valueOf(int/double等);
4,替换:
String replace(oldchar,newchar);用新的字符或字符串替换字符串中指定的老字符串。(说明:字符替换后返回新的字符串,原来老的字符串不会改变)
5.切割
String[] split(regex);用指定字符或字符串regex对字符串进行切割,返回字符串数组
6.获取字符串中的子串:
String substring(begin);
String substring(begin,end);//包含begin,不包含end
7.转换,去除空格,比较
7.1将字符串转成大写或者小写。
String toUpperCase()
String toLowerCase();
7.2将字符串两端的多个空格去掉
String trim();
7.3对两个字符串进行字典顺序的比较
int compareTo(str)
StringBuffer是字符串缓冲区(它是一个容器)
特点:
1. 长度是可变化的
2. 可以直接操作多个数据类型
3. 最终会通过toString方法变成字符串
1.存储
StringBuffer append(数据);将指定数据作为参数添加到已有数据的结尾处.
StringBuffer insert(int index,数据);可以将数据插入到指定index位置;
2.删除:
StringBuffer delete(int start,int end);删除指定缓冲区中的数据(包含start不包含end)
StringBuffer deleteCharAt(int index);删除指定位置的字符
4. 获取:
char CharAt(int index);
int indexOf(String str[,int fromIndex]);
int lastIndexOf(String str);
int length();
**String substring(int start,int end);
5. 修改:
StringBuffer replace(int start,int end,String);
*void setCharAt(int index,char ch);//不返回值
6. 反转
StringBuffer reverse();
7. 将缓冲区中指定数据存储到指定字符数组中。
void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)
JDK1.5之后出现了StringBuilder。
StringBuffer是线程同步的
StringBuilder是线程不同步的(开发优先使用,效率高)
基本数据类型包装类
基本数据类型 应用数据类型
byte Byte
short Short
int Integer
long Long
boolean Boolean
float Float
double Double
char Character
基本数据类型包装类最常见作用就是:基本数据类型和字符串类型之间的转换
1. 基本数据类型转字符串
基本数据类型+””;
String toString()
返回一个表示该值的String
对象。
static StringtoString(基本数据类型)
返回一个表示指定基本数据类型的String
对象。
2. 符串转基本数据类型***
xxx a=Xxx.parseXxx(String);
int a=Integer.parseInt(“123”);//只能传入数字格式字符串
double b=Double.parseDoublie(“23.3”);
练习:
1. 模拟trim方法去除字符串两边的空格。
2. 将字符串反转,将指定位置字符反转:
3. 字串在字符串中出现的次数:
4. 获取两个字符串中最大相同的字串:
---------------------- android培训、java培训、期待与您交流!----------------------
详情请查看:http://edu.csdn.net/heima
- javaAPI_1
- hdu 1131 Count the Trees # java水大数
- Oracle vs Google:在陪审团考虑专利问题之际法官Alsup披露自己是个程序员
- JPopupMenu_1
- hdu 1134 hdu 2067 #Java水卡特兰
- eclipse中添加jar包+出现log的问题
- javaAPI_1
- 转型操作符
- Liunx下修改MySQL字符集
- openldap配置
- codeforces #121 A
- Simhash算法原理和网页查重应用
- C# 中更改DataGridViewComboBoxColumn的默认选中值
- XAML实例教程系列 - 命名空间(NameSpace)
- 【Visual C++】游戏开发笔记二十三 游戏基础物理建模(五) 粒子系统模拟(二)