String类的复习文档格式.docx
- 文档编号:20910759
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:9
- 大小:18.60KB
String类的复习文档格式.docx
《String类的复习文档格式.docx》由会员分享,可在线阅读,更多相关《String类的复习文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
for(inte:
System.out.println(e);
//123
}
数组里面存放的不是原生数据类型的话,而存放的就是引用类型,而不是在未给元素指定对象时里面存放的仅仅是引用默认值为null。
有关“==”和equals()方法小结:
1:
在Object类中它们是等价的,都是判断对象地址是否相同,要想判断对象内容是否相同必须要重写equals()方法。
2:
String类中重写了equals()方法,所以可以直接使用它来判断字符串的内容是否一样。
publicstaticbooleanisEquals(int[]a,int[]b){
if(a==null||b==null){
returnfalse;
if(a.length!
=b.length){
returnfalse;
for(inti=0;
i<
a.length;
i++){
if(a[i]!
=b[i]){
returnfalse;
}}
returntrue;
字符串学学习
Stringstr="
a0-g-4=5-2,3+1@3"
;
//循环打印所有的数字
char[]cs=str.toCharArray();
for(charc:
cs){
if(c>
='
0'
&
&
c<
9'
){
System.out.println(c);
}}
打印字符串中的数字-123745235612
-1-23-7=45=&
230))((5-%6%12"
String[]ary=newString[str.length()];
length()方法是获取字符串的长度
StringcountStr="
"
char[]cs=str.toCharArray();
for(inti=0;
cs.length;
i++){
charc=cs[i];
if(c>
countStr=countStr+c;
if(i==cs.length-1){
System.out.println(countStr);
}}
else{
if(!
.equals(countStr)){
}
countStr="
}
//Stringstr="
abc你好def"
////lenght()
//System.out.println(str.length());
//字符的长度
//System.out.println(str.getBytes().length);
//字符所占的字节数
//
//char[]cs=str.toCharArray();
//for(charc:
//System.out.println((c+"
).getBytes().length);
//字符中每个字符所占的字节数
//}
/**
*文子池内存:
会共用文子池中的对象
*/
//equals判断两个字符串的内容是否相等
//Stringstr1="
abcd"
//Stringstr2="
//System.out.println(str1==str2);
//true
//
////这段代码创建了两个对象(之前没有在池中创建过“abcd”)
//Stringstr3=newString("
);
//1.new必在堆里开辟空间;
2.在文子池中创建等值对象
//System.out.println(str1==str3);
//false
字符串是final类,当使用引用进行‘+’拼接时,他不会在一个字符串后面拼接,而是生成新的字符串对象。
//Stringstr4="
//Stringstr5="
+str1;
//System.out.println(str1.equals(str5));
//string类中重写了equals()方法,可以直接使用他判断内容一样不。
。
//
//Stringa="
abc"
//Stringb="
d"
//b=a+b;
//通过引用去拼接的话相当于newString("
//b="
+"
//此时的b不是通过引用拼接的所以没有生成对象的。
//Stringk="
//System.out.println(b==k);
//StringBuilder练习
//StringBuilderbuilder=newStringBuilder();
//for(inti=0;
i<
5;
i++){
//builder.append(i).append("
|"
//System.out.println(builder);
a,b,c,e,d,f,2,a"
cs.length;
//builder.append(cs[i]).append("
'
//builder.insert(0,"
//
//char[]charAry=newchar[str.length()];
//定义最后装载的数组
//将字符串转换成为字符数组
//intindex=0;
//for(charc:
cs){
//if(c!
'
){
//charAry[index++]=c;
//char[]resultAry=newchar[index];
//System.arraycopy(charAry,0,resultAry,0,index);
//StringBuilderbuffer=newStringBuilder();
resultAry.length;
//if(i!
=0){
//buffer.append("
"
).append(resultAry[i]).append("
//buffer.deleteCharAt
(2);
//buffer.delete(1,4);
//[)
//System.out.println(buffer);
//StringBuilderstr=newStringBuilder("
abcdefghijk"
//str.delete(2,5);
//2,5是索引,遵循前闭后开的原则
//System.out.println(str);
//str=str.substring
(2);
//[从索引为2的开始往后截取
//str=str.substring(2,5);
//[)
当调用intern方法时,如果池已经包含一个等于此String的字符串(用equals(Object)方法确定),则返回池中的字符串。
(通过引用后调用此方法也是一样的噢)否则,
Stringstr1="
a"
Stringstr2="
b"
Stringstr3="
ab"
Stringstr4=(str1+str2).intern();
//直接返回池中的字符串
System.out.println(str3==str4);
*split()方法根据给定正则表达式的匹配拆分此字符串,返回一个字符串数组。
replaceAll()方法,publicString
*replaceAll(Stringregex,Stringreplacement)使用给定的replacement
*替换此字符串所有匹配给定的正则表达式的子字符串。
matches()调用此方法的str.matches(regex)
*形式与以下表达式产生的结果完全相同:
Pattern.matches(regex,str)参数:
regex-
*用来匹配此字符串的正则表达式返回:
当且仅当此字符串匹配给定的正则表达式时,返回true
//Stringstr="
dsf,'
sd,f'
s,2,4,r,gg,7,6,332344,eee"
//String[]ary=str.split("
//for(Strings:
ary){
//System.out.println(s);
//}
//System.out.println(str.replaceAll("
"
%"
));
//System.out.println("
.matches("
.+"
publicvoidtest04(){
Stringa="
Stringb="
b=a+b;
b="
//不是通过引用拼接的,由智能的jvm自动在池中默认“abcd”和“abc”+“d”拼接后的结果一样。
Stringk="
System.out.println(b==k);
//在池中创建的
Stringb=newString("
//现在堆里创建一个对象,如果池里没有这个字符串,jvm会自动在池里面也要创建,如果有了,就不创建了。
Stringc="
c"
System.out.println(a==b);
System.out.println(a==c);
System.out.println(a=b);
//abc
System.out.println(b=c);
System.out.println(a.equals(b));
System.out.println(b.equals(c));
System.out.println(a.equals(c));
String类中intern():
当调用intern方法时,如果池已经包含一个等于此String对象的字符串(用equals(Object)方法确定),则返回池中的字符串。
(通过引用后调用此方法也是一样的噢)否则,将此String对象添加到池中,并返回此String对象的引用。
它遵循以下规则:
对于任意两个字符串s和t,当且仅当s.equals(t)为true时,s.intern()==t.intern()才为true。
注意哦:
Int[]][]array=newint[7][];
内存中仅仅创建一个对象。
Int[][]array=newint[7][0];
内存在创建了八个对象
自动装箱,拆箱
publicvoidtest01(){
123"
longlz=Long.parseLong(str);
//把仅含有数字的字符串转化为数据要求该字符串必须都为数字才可以
System.out.println(lz);
tringstr="
12s3"
System.out.println(Double.parseDouble(str));
//不能转换了将报告java.lang.NumberFormatException
Objecto=1;
自动装箱成为Integer对象Integer.valueOf
(1)--->
newInteger
(1)
Stringstr=(String)o;
inta=1;
Integeraa=Integer.valueOf(a);
//手动装箱newInteger(a)
手动拆箱a=aa.intValue();
自动装箱如果取值为-128~127之间对象会重用
integera=134;
//1newInteger(134);
Integerb=134;
System.out.println(a==b);
publicclassObjectTest2
{
publicstaticvoidmain(String[]args)
{
Objectobject=newObject();
Objectobject2=newObject();
System.out.println(object==object2);
System.out.println("
----------------"
Stringstr=newString("
aaa"
Stringstr2=newString("
System.out.println(str==str2);
Stringstr3="
bbb"
Stringstr4="
System.out.println(str3==str4);
Stringstr5=newString("
ccc"
Stringstr6="
System.out.println(str5==str6);
Strings="
hello"
Strings1="
hel"
Strings2="
lo"
System.out.println(s==s1+s2);
System.out.println(s=="
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- String 复习