java基础,
分享于 点击 26524 次 点评:190
java基础,
String概述
一、概述class StringDemo
{
public static void main(String[] args)
{
String s=new String();//①
String s1="";//② 这两个都表示空参数的字符串
String s2="abc"//s1是一个String类型的引用变量,"abc“是一个对象。
//字符串最大的特点:一旦被初始化,就不可以被改变。
String s3=new String("abc");
//s1和s2有什么区别?
//s1在内存中有一个对象。
//s2在内存中有两个对象。
String s4="abc";
System.out.println(s2==s4);//true.因为String字符串被存入常量池,为了避免浪费空间,相同的字符串拥有相同的地址。
System.out.println(s2==s3);//false
System.out.println(s2.equals(s3));//true。返回true的原因是String类把equals()方法重写了,不再是Object类中比较地址值的方法了,而是比较两个对象是否相同。
}
}
String常见功能——获取和判断
一、概述 String类用于描述字符串事物。1.获取
1.1 字符串的长度。
int length();
1.2 根据位置获取位置上某个字符。
char charAt(int index);
1.3根据字符获取该字符在字符串中的位置。
int indexOf(int ch);
int indexOf(int ch,int fromIndex);
int indexOf(String str);
int indexOf(String str,int fromIndex);
int lastIndexOf(int ch);
2.判断
2.1 字符串中是否包含某一个子串。
boolean contains(str);
另一种判断方式:indexOf(str).如果找到,则返回第一个出现的位置。如果没有,则返回-1.
2.2 字符串中是否有内容。
boolean isEmpty();
另一种判断方式:lentgh():如果等于0,则为空。
2.3 字符串是否是以指定内容开头。
boolean startsWith(str);
2.4 字符串是否是以指定内容结尾。
boolean endsWith(str);
2.5 判断字符串内容是否相同。
boolean equals(str);
2.6 判断内容是否相同,并忽略大小写。
boolean equalsIgnoreCase();
String常见功能——转换
一、概述 3.转换3.1 将字符数组转换成字符串
构造方法:
String(char[]);
String(char[],int offset,int count);
静态方法:
static String copyValueOf(char[]);
static String copyValueOf(char[] data,int offset,int count);
static String valueOf(char[]);
***3.2 将字符串转成字符数组***
char[] toCharArray();
3.3将字节数组转换成字符串。
构造方法:
String(byte[]);
String(byte[],int offset,int count);
3.4将字符串转成字节数组。
byte[] getBytes();//在转换过程当中,可以指定编码表。
3.5将基本数据类型转成字符串。
static String valueOf(int)
static String valueOf(double)
String常见功能——替换和切割
一、概述 ***4.替换****4.1 String replace(oldchar,newchar)
因为字符串对象一旦被创建就不能被改变,所以调用该方法的对象不会改变自身,而是返回一个新的对象。
如果要替换的字符不存在,返回的还是原字符串。
4.2 String replace(CharSequence target,CharSequence replacement)
CharSequence是个接口,String,StringBuilder,StringBuffer都要实现它
5.切割
5.1 String[] split(regex);
例如:String s="zhangsan,lisi,wangwu";
String[] arr=s.split(",");
6.子串
6.1 String substring(begin)
取出从指定位置到结尾的字符串
6.2 String substring(begin,end);
包含头,不包含尾的字符串
常见功能——比较、去除空格和比较
一、概述 7.转换,去除空格,比较7.1将字符串转成大写或小写。
String toUpperCase();
String toLowerCase();
7.2将字符串两端的多个空格去除。
String trim();
7.3将两个字符串进行自然顺序的比较。
int compareTo(string);
StringBuffer常见功能——添加
一、概述StringBuffer是字符串缓冲区,它是一个容器。
三个特点:
1.长度是可变化的。(数组也是容器,但是长度不可变)
2.可以直接操作多个数据类型。(数组只能操作一种数据类型)
3.最终会通过toString方法编程字符串。
1.存储
1.1StringBuffer append(数据):将各种基本数据类型添加到容器的末尾,并且调用该方法,修改的是原始对象,并不创建一个新对象(不同于String)
StringBuffer sb=new StringBuffer();
sb.append("abc").append(true).append(34);
System.out.println(sb);//abctrue34
1.2StringBuffer insert(index,数据);
sb.insert(1,"qq");//aqqbctrue34
StringBuffer常见功能——删除、获取、替换、反转
一、概述2.删除
2.1 StringBuffer delete(start,end);删除缓冲区中的数据(原则同样是包含start,不包含end)
2.2 StringBuffer deleteCharAt(index);删除指定位置的字符。
3.获取
3.1 char charAt(index);
3.2 int indexOf(String);
3.3 int lastIndexOf(String);
3.4 int length();
3.5 String substring(int start,int end);
4.替换
4.1 StringBuffer replace(start,end,String);
4.2 void setCharAt(index,char);
5.反转
5.1 StringBuffer reverse();
6.将StringBuffer从指定位置取出字符放入指定字符数组的指定起始位置。
void getChars()(int srcBegin,int srcEnd,char[] dst,int dstBegin)
StringBuilder
一、概述 StringBuilder:一个可变的字符序列。此类提供一个与StringBuffer
兼容的 API,但不保证同步。该类被设计用作StringBuffer
的一个简易替换。JDK1.5以后才出现。将StringBuilder
的实例用于多个线程是不安全的。如果需要这样的同步,则建议使用StringBuffer
。 二、JAVA升级三个原则 1.提高效率 2.简化书写 3.提高安全性。
相关文章
- 暂无相关文章
用户点评