黑马程序员---String学习笔记
来源:互联网 发布:小米5突然没有网络 编辑:程序博客网 时间:2024/04/29 03:14
String学习笔记
(一)String 一旦初始化就不可被改变;
package cn.cx.string.study;
publicclass Demo01 {
publicstaticvoid main(String[] args) {
String s1 = "asd";//s1是一个类类型变量,"asd"是一个对象。
//s1 = "as";//"asd"没变,s1这个引用变了
String s2 = new String("asd");
System.out.println(s1==s2);//false,比较地址值
System.out.println(s1.equals(s2));//true,String类覆写了equals方 法,定义了自身独特的
//内容,并未再去比较地址值。
//s1与s2的区别:s1代表一个对象,s2有两个
}
package cn.cx.string.study;
publicclass Demo02 {
publicstaticvoid main(String[] args) {
String s1 = "abc";
String s2 = "abc";
String s3 = new String("abc");
System.out.println(s1==s2);//true,指向同一对象
System.out.println(s1==s3);//false
}
}
(二)四道练习:
package cn.cx.string.study;
publicclass MyTrim {
publicstaticvoid main(String[] args) {
/*String s = " dfg jh ";
System.out.println(myTrim(s));
System.out.println(myTrim(s).length());*/
//System.out.println(myReverse("asdfrth"));
/*String ori = "aaffgsgaaghdaafraalaak";
String myStr = "aa";
System.out.println(myNum2(ori,myStr));*/
String l = "asdfgjavajdch";
String s = "asjavappoub";
System.out.println(getMaxSubStr(l,s));
}
//自定义trim
publicstatic String myTrim(String str) {
int start = 0;
int end = str.length()-1;
while(start<end && str.charAt(start)==' ') {
start ++;
}
while(start<end && str.charAt(end)==' ') {
end --;
}
return str.substring(start, end+1);
}
//反转
publicstatic String myReverse(String str) {
char[] chs = str.toCharArray();
for(int i=0; i<chs.length/2; i++) {
char temp = chs[i];
chs[i] = chs[chs.length-i-1];
chs[chs.length-i-1] = temp;
}
returnnew String(chs);
}
//获取一个字符串在另一个字符串的次数
publicstaticint myNum(String oriStr, String myStr) {
int num = 0;
int index = 0;
while((index = oriStr.indexOf(myStr)) != -1) {
num ++;
oriStr = oriStr.substring(index+myStr.length(), oriStr.length());
System.out.println(oriStr);
}
return num;
}
publicstaticint myNum2(String oriStr, String myStr) {
int num = 0;
int index = 0;
while ((index=oriStr.indexOf(myStr, index))!= -1) {
num ++;
index = index + myStr.length();
}
return num;
}
//获取两字符串中最大相同子串
publicstatic String getMaxSubStr(String l, String s) {
String temp = null;
for(int i=0; i<s.length(); i++) {
for(int j=0,z=s.length()-i; z!=s.length()+1; j++,z++) {
temp = s.substring(j, z);
if(l.contains(temp)) {
return temp;
}
}
}
returnnull;
}
(三)StringBuffer是字符串缓冲区,是容器,且长度可变,线程同步。StringBuilder是线程不同步的,单线程时使用效率高。
- 黑马程序员--------String学习笔记
- 黑马程序员---String学习笔记
- 黑马程序员--String基础学习笔记
- 【黑马程序员】string,StringBuilder(学习笔记)
- 黑马程序员-java学习笔记-String
- 黑马程序员_学习笔记String类
- 黑马程序员------java学习笔记之String类
- 黑马程序员-Java基础-String和StringBuffer学习笔记
- 黑马程序员_JAVA中String类学习笔记
- 黑马程序员_学习笔记第13天 String类
- (黑马程序员)学习笔记,javaAPI之String
- 黑马程序员——String类学习笔记
- 黑马程序员 JAVA基础学习笔记 字符串String
- 黑马程序员Java学习笔记之字符串String
- 黑马程序员_java学习笔记 7.String类总结
- 黑马程序员 java String 笔记
- 黑马程序员---String的学习
- 黑马程序员---学习笔记
- 线性表中头结点的作用
- intent.putExtra()方法参数详解
- 打包压缩命令tar
- 下载Moquette工程
- Android开发技术点(持续更新)
- 黑马程序员---String学习笔记
- 栈
- sax解析xml
- JAVA学习第三天(6)对象转型
- 异常处理
- android自定义控件(TopBar的实现)
- Ruby On Rails开发中关于jQuery-datetimepicker-rails的一些使用心得
- 第四单元 4.20
- 从网络上获取一张图片,然后显示在手机上