java笔记:character类,string类,stringbuilder,stringbuffer

作为一个非java程序员,但又想走安卓方向的,参加了面试发现需要手撸代码写不出来啊(肯定凉了),一些常见的方法不知道,需要查阅文档可是不行,平时都是用android studio直接出代码的(没有工具我就不会写代码了)只能亡羊补牢了,补一下了。

java中的基本数据类型没有方法和属性(不是对象),使用包装类使得这些基本数据类型拥有方法和属性,实现对象化交互。

包装类:将基本的数据类型及一些辅助方法包装到类中。

包装类分为两类一类是对象型包装类,不继承任何其他类(Object的直接类),另一类是数值型包装类,继承于Nmuber类。

装箱:将基本数据类型转换成包装类对象。

拆箱:将包装类转换成基本数据类型。

//自动装箱
int a1 = 0;
Integer a2 = a1;
//手动装箱(构造方法)
Integer a3 = new Integer(a1);
//自动拆箱
int a4 = a2;
//手动拆箱,需要不同的基本数据类型使用对应的xxxValue方法,xxx对应数据类型:int,double等
int a5 = a2.intValue();
        

包装类对象的初始化值为null(对象)。

字符串转换:

使用包装类toString()方法,把基本类型转换成字符串

调用包装类parseXxx()静态方法,或者先将字符串转换成包装类再拆箱转换成基本类型。字符串转换成基本类型。

char是java八种基本类型之一。Character类(包装类):用于对单个字符进行操作,提供了方法来操作字符。

string是j字符串,是对象不是类型。String类(包装类):用于创建和操作字符串。

注:通过new关键字创建对象会开辟不同的内存空间。

Character类

列出一些常用的方法:

isLetter()//是否是一个字母字符

isDigit()//是否是一个数字字符

isWhitespace//是否是一个空白字符

isUpperCase()//是否是大写字母

isLowerCase()//是否是小写字母

toUpperCase()//指定字母的大写形式

toLowerCase()//指定字母的小写形式

toString()//转换成字符串

String类:

常用方法:

length()//获取字符串对象包含的字符数

concat()//连接字符串,用+也可以

char charAt(int index)//返回索引处的char值

int compareTo(Object o)//把字符串和另一个对象比较

int compareTo(String s)//比较两个字符串

int compareToIgnoreCase(String s)//比较两个字符串,不考虑大小写

boolean contentEquals(StringBuffer sb)//当字符串和指定的StringBuffer具有想的顺序的字符时返回真

static String copyValueOf(char[] c 【,int offset,int count ]】)//返回指定数组中表示该字符序列的String

boolean statrsWith(String s)//此字符串是否以指定的前缀开始

boolean endsWith(String s)//此字符是否以指定的后缀结束

boolean equals(Object o)//字符串与指定的对象比较

byte[] getBytes(【String s】)使用平台的默认字符集将此String编码为byte序列,并将结果储存到一个新的byte数组中

void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)//将字符从此字符串复制到目标字符数组

int indexOf(int c)//返回指定字符在此字符串第一次出现的索引

int indexOf(String s)//返回指定子字符串在此字符串中第一次出现的索引

int hashCode()//返回此字符串的哈希码

int lastIndexOf(int c)//返回指定字符在字符串中最后一次出现处的索引

int lastIndexOf(String s)//同上

String replace(char old,char new)//返回一个新的字符串,通过new代替字符串中出现所有的old

String replaceAll(String regex,String replacement)//使用给定的replacement替换此字符串所有匹配的正则表达式的子字符串

String replaceFirst(String regex,String replacement)//使用给定的replacement替换此字符串第匹配的正则表达式的第一个子字符串

String split(String regex)//根据正则表达式拆分字符串

char[] toCharArray()//将此字符串转换成一个新的字符数组

String toLowerCase()//将此字符串全部转换为小写

String toUpperCase()//将此字符串全部转换成大写

String trim()//返回字符串的副本,忽略前空白和尾部空白

创建格式化字符串

format()//返回一个String对象

printf()//直接打印输出

当对字符串进行修改的时候,需要使用StringBuffer和StringBuilder类(String对象的改变不是改变原对象,而是生成一个新的对象)。StringBuffer和StringBuilder类的对象能够被多次修改。

有线程安全要求的情况下,必须使用StringBuffer类。StringBuilder比StringBuffer有速度优势。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章