黑马程序员——Java基础视频笔记(三)

------- android培训java培训、期待与您交流! ----------


Java视频基础笔记第三部分;

内容包括:String字符串的内存原理、StringBuffer、StringBuilder、数组和冒泡排序


28、String字符串
实例化String对象:
1、直接赋值 String ss = "Hello";
2、new开辟内存空间 String ss = new String("Hello");
使用第一种方式可以更节省空间

29、 字符串的比较
ss.equals(ss);
return true;

== 比较的是堆内存中的地址
equals 比较的是内容

30、获取字符串的长度
ss.lenght()
 
    字符串转数组
ss.toCharArray();

    从字符串中取出指定位置的字符
ss.charAt(1); //() 内可以写0、1、2、3等等

字符串与byte数组的转换: ss.getBytes();

    过滤字符串中存在的字符: indexOf();
    
    去掉空格: trim();

    从字符串中取出子字符串:subString()

    大小写转换:toLowerCase() toUpperCase()

    判断字符串的开头结尾字符:endsWidth()  startWith()

    替换String字符串中的一个字符:replace()

根据API查看各种方法;


31、StringBuffer

字符串缓冲区,本身也是操作字符串,但是StringBuffer是可以更改的;
StringBuffer是一个操作类,必须通过实例化进行操作;
StringBuffer可以加快字符串在循环追加时的计算速度,因为不用开辟新的内存空间

StringBuffer s = new StringBuffer();
s.append("极客");

常用方法:
append("A") //覆盖
insert(0,"A") //从哪个位置开始追加
replace(1,3,"A")//从第几位到第几位,用A替换
indexOf()

32、StringBuilder
1、用于字符串缓冲区被单个线程使用的时候;
  速度比StringBuffer更快;

2、如果涉及到线程安全方面的问题,还是使用StringBuffer
3、常用方法:
append();
insert();

33、多态性:
1、方法的重载与重写

2、对象的多态性:
向上转型:把子类数据传给父类(自动完成)

父类 对象 = new 子类实例

向下转型:把父类数据传给子类(需要进行强制类型转换)
父类 对象 = new 子类实例

子类 对象 = (子类)父类对象


34、数组:


数组的每个元素都用唯一的下标作为标识~  

int[] a = new int[100]; // 动态初始化

a[i] // i 就是数组 a 的下标

int[] a = {1,3,5,7,9};  // 静态初始化,直接指定数组元素     使用较多

冒泡排序:双层for循环

		int[] ar = {123,643,123,56,3234,56,34,12,2};
		int temp = 0;
		for(int i = 0; i < ar.length; i++){		//第一个循环从下标0 开始
			for(int j = i+1; j < ar.length; j++){   // 第二个循环,从下标 1 开始,所以+1
				if(ar[i] > ar[j]){		//从大到小排列,< 就是从小到大排列
					temp = ar[i];		//通过中间值 temp 进行交换操作
					ar[i] = ar[j];
					ar[j] = temp;
				}
			}
		}

35、翻转字符串:
	String st = "abcdefg";
	StringBuffer sbf = new StringBuffer(st);
	System.out.println(sbf.reverse());

36、ObjectOutputStream输出的类对象,必须先implements Serializable 这个接口,否则编译会报错。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值