JavaAPI

来源:互联网 发布:学生档案表sql查询 编辑:程序博客网 时间:2024/05/16 00:47


JavaAPI()

 

String

字符串是一个特殊的对象。字符串一旦初始化不可以被改变。

字符串初始化的方法:

String str=abc;

String str1=new String(abc);

strstr1的区别:str代表一个对象,str2代表两个对象。

System.out.println(str.equals(str1));//结果为true.因为Sting类复写了Object类中的equals方法,该方法用于判断字符串是否相同。

Eg:String s1=abc;

String s2=new String(abc);

String s3=abc;

System.out.println(s1==s2);//false。因为s1s2指向不同的对象

System.out.println(s1==s3);//因为s1已经在内存中存在,因此s3不会再内存中开辟空间。

 

String类适用于描述字符串事物。常见操作有:

1.获取

int length():获取长度

Char charAt(int index)根据位置获取位置上的字符

int indexOf(int ch)返回ch第一次在字符串中出现的位置

int indexOf(int ch,int fromindex)fronindex指定位置开始,获取ch在字符串中出现的位置

int indexOf(String s)返回的是s在字符串中第一次出现的位置

2.判断

Boolean contains(str)//字符串中是否包含某个一个字串

特殊之处:

boolean isEmpty()//字符串是否为空

boolean startswith()//字符串是否为指定内容开头

boolean endswith()//字符串是否为指定内容结尾

boolean equals(str)//比较字符串内容是否相等

boolean equalsIgnoreCase()//判断内容是否相等,忽略大小写

3.转换

    将字符数组转成字符串:

构造函数:String(char[])

 String(char[],offset,count)//将字符数组中的一部分转成字符串

静态函数:

Static String copyValueof(char[])

Static String copyValueof(char[],int offset,int count)

Static String valueof(char[])

将字符串转成字符数组:

Char[] toCharArray()

将字节数组转成字符串:

String(byte[])

String(byte[],offset,count)//将字节数组中的一部分转成字符串

将字符串转成字节数组

byte[] getBytes()

将基本数据类型转成字符串:

Static String valueof(int)

Static String valueof(double)

4.替换

String replace(oldchar,newchar)

5.切割

String[] split(regex)

6.字串。获取字符串中的一部分

String subString(begin)

String subString(begin,end)

7.转换,去除空格,比较

String toUpperCase()//将字符串转成大写

String toLowerCase()//将字符串转换成小写

String trim()//将字符串两端的多个空格去除

int compareTo(string)//对两个字符串进行自然顺序的比较

 

Eg1:

//字符串反转

public class StringDemo3 {

public static void main(String[]args)

{

String str="ab cdf";//定义字符串str

char[] ch=str.toCharArray();//字符串转为数组ch

/*reverse(ch,0,ch.length-1);//全部反转

String str1=new String(ch);//反转数组转换成字符串

System.out.println(str1);//输出反转后的字符串

*/

reverse(ch,1,2);//部分反转

String str2=new String(ch);//反转数组转换成字符串

System.out.println(str2);//输出反转后的字符串

}

//反转

private static void reverse(char[] ch,int x,int y) {

// TODO Auto-generated method stub

for(int i=x,j=y;i<j;i++,j--)

{

swap(ch,i,j);

}

}

//交换

private static void swap(char[] ch,int x, int y) {

// TODO Auto-generated method stub

char temp=ch[x];

ch[x]=ch[y];

ch[y]=temp;

}

}


Eg2:

//获取一个字符串在另一个字符串中出现的次数

public class StringDemo4 {

public static void main(String[]args)

{

String str="abcdabdfabrt";//定义字符串str

String str1="ab";//定义字符串str1

System.out.println("字符串ab在str中出现的次数为:"+getcount(str,str1));

}

//获取一个字符串在另一个字符串中出现的次数

public static int getcount(String a,String b)

{

int count=0,index=0;//count计数,index索引

/*第一种方法:

while((index=a.indexOf(b))!=-1)

{

a=a.substring(index+b.length());

count++;

}*/

//第二种

while((index=a.indexOf(b, index))!=-1)

{

index=index+b.length();

count++;

}

return count;

}

}

 

 

StringBuffer:字符缓冲区

字符串的组成原理是通过该类实现的。StringBuffer可以对字符串内容进行增删。StringBuffer是一个容器,StringBuffer是可变长度

基础操作:

1.存储

StringBuffer append():将指定数据作为参数添加

StringBuffer insert(index,数据):可以将数据插入到指定Index位置

2.删除

StringBuffer delete(start,end):删除缓冲区中数据,包含start,不包含end

StringBuffer deletecharAt(index):删除指定位置的字符

3.获取

Char charAt(int index)

int indexof(String str)/int lastindexof(String str)

int length()

String substring(int start,int end)

4.修改

StringBuffer raplace(start,end,string)

Void setCharAt(int index,char ch)

5.反转

StringBuffer reverse()

6.void getChars(int srcBegin,int srcEnd,char[] dst,int dstBegin)

JDK1.5版本之后出现了StringBuilder

StringBuffer是线程同步,StringBuilder是线程不同步

升级三要素:提高效率,简化书写,提高安全性

 

基本数据类型转成字符串

基本数据类型+””

基本数据类型.toString(基本数据类型值)  eg:Integer.toString(34)//J34转成整数34

字符串转成基本数据类型:

Xxx a=xxx.parsexxx(String)//eg:int  a=Integer.parseInt(123);

十进制转成其他进制

toBinaryString()/toHexString()/toOctalString()

其他进制转成十进制:

parseInt()//eg:int a=Integer.parseInt(3c,16);//后面指的是进制数

 

 

 

 

0 0