2.9Java基础学习笔记

面向对象+面向过程

对比:

面向过程 面向对象
设计思路 自顶向下、层次化、分解 自底向上、对象化、综合
程序单元 函数模块 对象
设计方式 程序=算法+数据结构 程序=对象=数据+方法
优点 相互独立,代码共享,性能相对较高 接近人的思维方式, 使用灵活,易维护、易复用、易扩展
缺点 修改、维护困难 性能相对较低

string

类型:Java中的数据类型分为两大类,基本数据类型和引用数据类型,而string就属于引用数据类型。

比较字符串大小:

1、compareTo比较数据的大小

String a="a",b="b";
System.out.println(a.compareTo(b));

2、使用equals()和==,区别在于equals比较的是内容是否相等、==比较的是引用的变量地址是否相等。

String s1,s2,s3 = "abc", s4 ="abc" ;
s1 = new String("abc");
s2 = new String("abc");

s1==s2   是 false      //两个变量的内存地址不一样,也就是说它们指向的对象不 一样,

s1.equals(s2) 是 true    //两个变量的所包含的内容是abc,故相等。

String内容不能改变的理解:String类是final类故不可以继承,也就意味着String引用的字符串内容是不能被修改。

2.9Java基础学习笔记_第1张图片

可知,String对象内容的改变实际上是通过内存地址“断开-连接”变化来完成的,而原字符串中的内容并没有任何的改变。String str = "Hello";和str = str + " World";实质上是开辟了三个内存空间,str只是由原来指向"hello"变为指向“hello world”而已,而其原来的指向内容,是没有改变的。

你可能感兴趣的:(学习,笔记)