---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! -----------------------
class StringDemo
{
publicstatic void main(String[] args)
{
String s1 ="ava";//s1是一个类类型变量,“ava”是一个对象
//字符串最大的特点,一旦被初始化就不可以被改变。
//s1="kk";//s1现在指向了“kk”
Strings2 = new String("ava");
//s1和s2有什么区别
//s1在内存中有一个对象
//s2在内存中有两个对象。
Strings3 = "ava";
//System.out.println(s1 == s3);
//System.out.println(s1== s2);
//System.out.println(s1.equals(s2));//String类复写了Object类中的equals方法
//该方法用于判断字符串是否相同
//method_1();
//method_is();
//method_trans();
//method_replace();
//method_split();
//method_sub();
method_7();
//System.out.println("HelloWorld!");
}
publicstatic void sop(Object obj)
{
System.out.println(obj);
}
//------------------------------------------------
publicstatic void method_1()
{
Stringstr = "abcdef";
//获取长度
sop(str.length());
//获取指定位置上的字符
sop(str.charAt(1));
//根据字符获取该字符在字符串中的位置
sop(str.indexOf("b"));//如果没有找到,返回-1
sop(str.indexOf("de",1));
}
//------------------------------------------------
publicstatic void method_is()
{
Stringstr = "ArrayDemo.java";
Stringstr1 = "arrayDemo.JAVA";
sop(str.startsWith("Array"));
sop(str.endsWith(".java"));
sop(str.contains("Demo"));
sop(str.equals(str1));
sop(str.equalsIgnoreCase(str1));
}
//---------------------------------------------------
public static void method_trans()
{
char[] arr = {'a','A','C','b','e','g','d'};
//构造函数法
String str = new String(arr);
sop("str="+str);
String str1 = new String(arr,3,3);
sop("str1="+str1);
//静态方法
String str2 = String.copyValueOf(arr);
sop("str2="+str2);
String str3 = String.copyValueOf(arr,3,3);
sop("str3="+str3);
String str4 = String.valueOf(arr);
sop("str4="+str4);
//转换为字符数组
String str5 = "1234567";
char[] arr1 = str.toCharArray();
byte[] bt = str.getBytes();
for(int x = 0;x<arr1.length;x++)
{
sop("arr1"+"["+x+"]="+arr[x]);
}
for(int x = 0;x<bt.length;x++)
{
sop("bt"+"["+x+"]="+bt[x]);
}
}
//--------------------------------------------
public static void method_replace()
{
String s= "hello.java";
String s1 =s.replace("java","world");
String s2 = s.replace('a','A');
sop("s1="+s1);
sop("s2="+s2);
}
//---------------------------------------------
public static void method_split()
{
String s = "name,age,length";
String[] str = s.split(",");
for(int x=0;x<str.length;x++)
{
sop("str"+"["+x+"]="+str[x]);
}
}
//-------------------------------------------------
public static void method_sub()
{
String str = "adafafaf";
String s1 = str.substring(2);
String s2 = str.substring(1,4);//包含头,不包含尾。
//str.substring(0,str.length());全部选取
sop(s1);
sop(s2);
}
//----------------------------------------------------
public static void method_7()
{
String s = " Hello.Java ";
sop(s.toUpperCase());
sop(s.toLowerCase());
sop(s.trim());
String s1 = "abc";
String s2 = "ABC";
sop(s1.compareTo(s2));
}
}
/*
String类适用与描述字符串事物
那么它就提供了多个方法对字符串进行操作
常见的操作有哪些?
1.获取
1.1字符串中获得字符串的长度
int length():获取长度
1.2根据位置获取位置上某个字符
char charAt(int index)
1.3根据字符获取该字符在字符串中的位置
int indexOf(int ch):返回的是ch在字符串中第一次出现的位置。 int ch:传的的是ASC码,但是输入字符串也没问题
int indexOf(int ch,int fromIndex):从指定位置开始查找,ch在字符串中的位置
int lastIndexOf(int ch)
2.判断
2.1字符串中是否包含一个字串
boolean contains(CharSequence e) CharSequence:接口 字符序列
特殊之处:indexOf(str):可以索引str第一次出现位置,如果返回-1,表示str不在字符串中存在,
所以,也可以用于指定判断是否包含。
if(str.indexOf("aa")!=-1)//为true则表示包含。
而且该方法即可以判断,又可以获取出现的位置。
2.2字符中欧冠是否有内容
boolean isEmpty():原理就是判断长度是否为零。
2.3字符串是否以指定内容开头
boolean startsWith()
2.4字符串是否是以指定内容结尾
boolean endsWith()
2.5判断字符串的内容是否相同,复习了Object类中的equals方法
boolean equals(str)
2.6判断内容是否相同,并忽略大小写
boolean equalsIgnoreCase(str);
3.转换
3.1将字符数组转成字符串
构造函数:
String(char[])
String(char[],offset,count)//将字符数组中的一部分转化为字符串。
静态方法:
static String copyValueOf(char[]);
static String copyValueOf(char[],int offset,int count);
static String valueOf(char[]);
3.2将字符串转成字符数组
char[] toCharArray();
3.3将字节数组转成字符串
构造函数:
String(byte[])
String(byte[],offset,count)//将字符数组中的一部分转化为字符串。
静态方法:
static String copyValueOf(byte[]);
static String copyValueOf(byte[],int offset,int count);
static String valueOf(byte[]);
3.4将字符串转成字节数组
byte[] getBytes();
3.5将基本数据类型转换为字符串
static String valueOf(int)
static String valueOf(double)
3+"";//String.valueOf(3);
特殊:字符串和字节数组在转换过程中,是可以指定编码表的。
4.替换
String replace(oldchar,newchar);
5.切割
String[] split(regex);
6.字串:获取字符串中的一部分。
String substring(begin);
String substring(begin,end);
7.转换:去除空格,比较
7.1将字符串转成大写或小写
String toUpperCase();
String toLowerCase();
7.2将字符串两端的多个空格去除
String trim();
7.3对两个字符串进行自然循序比较
int compareTO(string);
--------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------详细请查看:www.itheima.com