您的位置:首页 > 职场人生

黑马程序员--第十三天:String类

2013-06-18 17:05 162 查看
---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

 

//13-1
class  Demo
{
public static void main(String[] args)
{
String s1 = "abc";//s1是一个类类型变量,"abc"是一个对象。
//字符串最大的特点:一旦被初始化就不可以被改变。

String s2 = new String("abc");//"abc" 是一个对象, new 又产生一个对象。
//s1 和 s2 的区别?
//s1在内存中有一个对象。
//s2在内存中有二个对象。

//String 复写 了Object类中equals方法,
//该方法用于判断字符串是否相同。
System.out.println(s1.equals(s2));
Object obj1 = new Object ();
Object obj2 = new Object();
System.out.println(obj1.equals(obj2));
}
}
/*13-2_4
获取:
int length();
char charAt(int index);
int indexOf(int ch);
int indexOf(int ch, int formIndex);
int indexOf(String str);
int indexOf(String str, int formIndex);
int lastIndexOf(int ch);

判断:
boolean contains(str);
boolean isEmpty();
boolean startsWith(str);
boolean endsWith(str);
boolean equals(str);
boolean equalsIgnoreCase();

转换:
3.1		将字符数组转换成字符串
构造函数	String(char[]);
String(char[],offset,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[],offset,count);
3.4		将字符串转换成字节数组。
byte[] = getBytes();
3.5		将基本数据类型转换成字符串。
static String valueOf(int)
static String valueOf(double)

3+"" = String.valueOf(3);

字符串和字节数组在转换过程中,是可以指定编码表的。

替换:
4		String replace(oldchar,newchar);//s.replace("java","world");

5		String[] split(regex);

6		String substring(begin);
String substring(begin,end);包含begin,不包含end。

转换,去除空格,比较
7.1		将字符串转成大写或小写。
String toUpperCase();
String toLowerCase();

7.2		将字符串两端的多个空格去除。
String trim();
7.3		对2个字符串进行自然排序的比较。
int comparaTo(string);
*/

class
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
/*13-10_12
StringBuffer 是字符缓冲区
是一个容器。
1.长度是可变化的。
2.可以直接操作多个数据类型。
3.最终会通过toString方法变成字符串。

1.存储:(create)
StringBuffer append(); 将指定的数据作为参数加到已有数据结尾处。
StringBuffer insert(insert,data);可以将数据插入到指定index位置。

2.删除。(delete)
StringBuffer delete(start,end);删除缓冲区数据,包含start,不包含end。
StringBuffer deleteCharAt(index);删除指定位置的字符。

3.获取(read)
char charAt(int index);
int indexOf(String str);
int lastIndexOf(String str);
int length();
String substring(int start,int end);

4.修改(update)
String replace(start,end,data);
void setCharAt(int index,char ch);

5.反转
reverse();
6.
将缓冲区中指定数据存储到指定字符数组中(copy String 的指定部分 到 指定 的 char[]);
void getChars(int srcBegin,int srcEnd,char[]dst,int dstBegin);

JDK1.5 之后出现了StringBuilder

StringBuffer 是线程同步。(判断锁)
StringBuilder 是线程同步。(不判断锁,可以提高效率)(可以自己加锁)

java 升级三方面因素
提高效率(机器运行效率),简化书写(人工作效率),提高安全性(可靠性)。
*/

class
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
/*13-13
基本数据类型对象包装类。

作用:
基本数据类型和字符串的转换。

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

基本数据类型.toString(数值);

如:Integer.toString(34);//将34整数变成"34";

字符串转成基本数据类型。
int a = Integer.parseInt("123");

boolean b = Boolean.parseBoolean("true");

Integer i = new Integer("123");
int num = i.intValue();

十进制转成其他进制。
toBinaryString();
toHexString();
toOctalString();

其他进制转成十进制。
int x = Integer.parseInt(data,radix);
*/

class
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}


---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ---------------------- 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  黑马程序员