1.字符串变量的创建方法
(1)第一种方法,关键字String声明一个变量,并随机为其赋值
String str1 = "I am a learner";
(2)第二种方法,通过String类的构造方法和运算符new创建
String str2 = new String(str1);
(3)第三种方法,创建字符变量
String str3 = new String("I am a learner");
相当于:
String str4 = new String();
str4 = "I am a learner";
问题:String str3 = new String("I am a learner");语句中创建了几个对象?
答:两个,创建过程如下如下:
String str1 = "I am a learner";
String str2 = new String(str1);
2.字符串与字符数组的关系
字符串由字符组成,每个字符都用一个字符常量表示,字符常量构成一个数组,称为字符数组。
例:String类的一种构造方法String(str1,0,4);其中str1是一个字符串,这个构造方法相当于
public String(str1[] value, int offset, int count);//offset为起始字母,count表示要截取字母的个数
3.String类的方法
(1)length方法,用于返回字符串长度
String str1 = "abs,c ghj";
int b = str1.length();//把字符串str1的长度赋给b;返回的长度中包含空格和标点符号的长度
问题:String和数组是不是都有length()方法;
答:Sring有length()方法;数组没有,只有length属性。
(2)substring方法,用于提取部分字符串
public String substring(int beginIndex, int endIndex)//beginIndex要提取字符开始的位置,endIndex要提取字符前的的一个位置
public String substring(int beginIndex)//从beginIndex开始提取到字符串末尾位置
例:String str1 = str1.substring(4,7);//从字符串第5个字符开始提取到第7个字符,注字符串的0号字符是第一个字符
String str2 = str2,substring(5);//从字符串第6个字符开始提取到字符串末尾
(3)compareTo方法,用于比较两个字符串的大小
public int compareTo(String anotherString)
例:int b = str2.compareTo(str1);//返回str2-str1的unicode大小的差值
(4)indexOf方法,用于检索字符串的位置
public int index(int ch)
public int index(int ch, int fromIndex)
例:int a = str1.indexOf(‘a‘);//从开头的位置起检索a第一次出现的位置
int b = str2.indexOf(‘b‘,4)//从第五的字符起开始检索b第一次出现的位置
(5)replace方法,用于替换某个字符
public String replace(char oldchar,char newchar)//用newchar替换oldchar
例:String str2 = str1.replace(‘a‘,‘b‘);//把str1中的字符a,替换为b,并存入字符串变量str2中
(6)parseInt,parseDouble,parseLong,parseByte,parseFloat方法,用于把字符串转换为数值
public static int parseInt(String s)
public static double parseDouble(String s)
public static long parseLong(String s)
public static byte parseByte(String s)
public static float parseFloat(String s)
例:float a = Integer.parseInt(str1);//把字符串str1转化为integer型,其他方法转化类似
(7)toString方法,用于将数值转换为字符串
public String toString()
例:String str1 = Float.toString(a);//把float类型的a转换为字符串
String str2 = Integer.toString(178,16).toUpperCase;//将Intger型的178转换为16进制,并转换为大写字母,如果没有toUpperCase,默认为toLowerCase小写
(8)valueOf方法
用于将数值转换为字符串
String str1 = String.valueOf(a);//把a(a可以为int,float,double,long或byte型)转换为字符串
用为将字符串转换为数值
float a = Float.valueOf(str).floatValue();//将字符串str转换为float类型,其他类型的转换类似
(9)toUpperCase和toLowerCase方法,用于字母的大小写转换
char ch1 = character.toUpperCase(‘a‘);//将字符a转换为大写,直接通过类名character调用
String str2 = str1.toLowerCase();//将字符串str1转换为小写存入字符str2中,不能直接用类名String调用,必须通过String的对象调用·
(10)startsWith和endsWith方法,用于判断字符串中是否含有某些字符串片段
public boolean startsWith(String prefix, int toffset)//prefix字符串片段,toffset指定开始判断的位置
public boolean endsWith(String suffix)//suffix字符串片段,从末尾开始判断
相关文章
- 11-04String类的一些常见的比较方法(4)
- 11-04String类以及其常用方法
- 11-0427 string类中常用的方法列表
- 11-04String类中常用的方法
- 11-04String类的equal方法
- 11-04String类实现replace()方法
- 11-04C++ string类 用法总结
- 11-04C++陷阱之慎用string类
- 11-04String类常用方法
- 11-04String类的一些常见的获取方法(5)