1String类型 基本操作
(1)获取字符串长度length()
(2)获取字符串中的第i个字符charAt(i)
(3)获取指定位置的字符方法getChars(4个参数)
格式:char array[] = new char[80]; //先要创建以一个容量足够大的char型数组,数组名为array
str.getChars(indexBegin,indexEnd,array,arrayBegin);
解释一下括号中四个参数的指向意义:1、indexBegin:需要复制的字符串的开始索引
2、 indexEnd: 需要复制的字符串的结束索引,indexEnd-1
3、array: 前面定义的char型数组的数组名
4、arrayBegin:数组array开始存储的位置索引号
public class MyString {
public static void main(String args[]){
String str = "而byte编码是默认字符集编码,它是用编码表示的字符"; //定义一个字符串
System.out.println(str); //输出字符串
/***1、length()方法***/
int length = str.length();//得到字符串长度
System.out.println("字符串的长度为:"+length);
/***2、charAt()方法***/
char ch = str.charAt(7); //得到索引为7的字符
System.out.println("字符串中的第8个字符为:"+ch);
/***3、getChars()方法***/
char chardst[] = new char[80]; //定义容量为80的字符数组,用于存储从字符串中提取出的一串字符
str.getChars(0,14,chardst,0);
//System.out.println("字符数组中存放的内容为:"+chardst);//错误,输出的是编码
System.out.println(chardst); //**括号中不可带其他字符串
}
}
输出为:
2 字符串之间的比较
字符串比较也分为两大类:一类是字符串大小的比较,这样的比较有三种结果,大于、等于以及小于;还有一类比较方法就是比较两个字符串是否相等,这样产生的比较结果无非就两种,ture和false。
public class StringCompare {
public static void main(String args[]){
String str1 = "bananaer";
String str2 = "BANANAER"; //定义两个字符串
String str3 = "Apple";
String str4 = "apple";
/***1、compareTo方法***/
//不忽略字符串字符大小写
if(str1.compareTo(str2)>0){
System.out.println(str1+">"+str2);
}else if(str1.compareTo(str2) == 0){
System.out.println(str1+"="+str2);
}else{
System.out.println(str1+"="+str2);
}
/***2、compareToIgnoreCase()方法***/
//忽略字符串字符大小写
if(str1.compareToIgnoreCase(str2)>0){
System.out.println(str1+">"+str2);
}else if(str1.compareToIgnoreCase(str2) == 0){
System.out.println(str1+"="+str2);
}else{
System.out.println(str1+"<"+str2);
}
/***3、equals()方法***/
//不忽略字符串字符大小写
if(str3.equals(str4)){
System.out.println(str3+"="+str4);
}else{
System.out.println(str3+"!="+str4);
}
/***4、equalsIgnoreCase()方法***/
//忽略字符串字符大小写
if(str3.equalsIgnoreCase(str4)){
System.out.println(str3+"="+str4);
}else{
System.out.println(str3+"!="+str4);
}
}
}
3 字符串与其他类型之间的转换
举一个例子,整数与字符串之间如何转换
public class StringConvert {
public static void main(String args[]){
/***将字符串类型转换为其他数据类型***/
boolean bool = Boolean.getBoolean("false"); //字符串类型转换为布尔类型
int integer = Integer.parseInt("20"); //字符串类型转换为整形
long LongInt = Long.parseLong("1024"); //字符串类型转换为长整形
float f = Float.parseFloat("1.521"); //字符串类型转换为单精度浮点型
double d = Double.parseDouble("1.52123");//字符串类型转换为双精度浮点型
byte bt = Byte.parseByte("2"); //字符串类型转换为byte型
/***将其他数据类型转换为字符串类型方法1***/
String str0 = String.valueOf(bool); //将布尔类型转换为字符串类型
String str1 = String.valueOf(integer); //将整形转换为字符串类型
String str2= String.valueOf(LongInt); //将长整型转换为字符串类型
String str3= String.valueOf(f); //将单精度浮点型转换为字符串类型
String str4 = String.valueOf(d); //将double类型转换为字符串类型
String str5 = String.valueOf(bt); //将byte转换为字符串类型
System.out.println(str0);
System.out.println(str1);
System.out.println(str2);
System.out.println(str3);
System.out.println(str4);
System.out.println(str5);
}
}