07-16总结

1、类


类和对象的理解

    类:类是对现实生活中一类具有共同属性和行为的事物的抽象

    对象:是能够看得到摸的着的真实存在的实体

    简单理解:类是对事物的一种描述,对象则为具体存在的事物

成员变量和局部变量的区别

                                成员变量                                          局部变量

类中的位置             类中,方法外                                    方法中或方法声明上


内存中的位置         堆内存(成员变量属于对象)            栈内存(局部变量属于方法)


初始化值                 有初始化值                                        无初始化值,必须先赋值后使用


生命周期                  随着对象的创建而存在,随              随着方法的入栈而存在,随着方法

                                着对象的销毁而消失                         的出栈而消失


作用范围                  整个类中                                           所处的大括号中


2、类的构造方法


构造方法的创建

    如果没有定义构造方法,系统将给出一个默认的无参数构造方法 如果定义了构造方法,系统将不再提供默认的构造方法

构造方法的重载

    如果自定义了带参构造方法,还要使用无参数构造方法,就必须再写一个无参数构造方法

推荐的使用方式

    *无论是否使用,都手工书写无参数构造方法

重要功能

    可以使用带参构造,为成员变量进行初始化


3、String类


String类概述

    String 类代表字符串,Java 程序中的所有字符串文字(例如“abc”)都被实现为此类的实例。也就是说,Java 程序中所有的双引号字符串,都是 String 类的对象。*String 类在 java.lang 包下,所以使用的时候不需要导包!

String类的特点

    *字符串不可变,它们的值在创建后不能被更改

    虽然 String 的值是不可变的,但是它们可以被共享

    字符串效果上相当于字符数组( char[] ),但是底层原理是字节数组( byte[] )

String类的构造方法

方法名                                        说明


public String()                            创建一个空白字符串对象,不含有任何内容


public String(char[] chs)             根据字符数组的内容,来创建字符串对象


public String(byte[] bys)             根据字节数组的内容,来创建字符串对象


String s = “abc”;                         直接赋值的方式创建字符串对象,内容就是abc


创建字符串对象两种方式的区别

通过构造方法创建

    通过 new 创建的字符串对象,每一次 new 都会申请一个内存空间,虽然内容相同,但是地址值不同

直接赋值方式创建

    以“”方式给出的字符串,只要字符序列相同(顺序和大小写),无论在程序代码中出现几次,JVM 都只会建立一个 String 对象,并在字符串池中维护

字符串的比较

==号的作用

    比较基本数据类型:比较的是具体的值

    比较引用数据类型:比较的是对象地址值

equals方法的作用

    比较两个字符串内容是否相同、区分大小写

String常用方法

*      char charAt​(int index)                                         获取指定位置的字符

*      boolean contains​(CharSequence s)                      判断是否包含某个子串

*      boolean startsWith​(String prefix)                      是否以某个子串开头

*      boolean endsWith​(String suffix)                        是否以某个子串结尾

*      boolean equals​(Object anObject)                        判断两个字符串内容是否相同

*      boolean equalsIgnoreCase​(String anotherString)        判断两个字符串内容是否相同,忽略大小写

*      static String format​(String format, Object... args)    格式化

*      int indexOf​(String str)                                查找某个子串第一次出现的位置

*      int lastIndexOf​(String str)                            查找某个子串最后一次出现的位置

*      boolean isEmpty​()                                      判断字符串是否为空字符串

*      int length​()                                          获取字符串的长度

*      String replace​(char oldChar, char newChar)            将某个子串替换成另一个子串

*      String replaceAll​(String regex, String replacement)        将符合条件的字串全部替换

*      String[] split​(String regex)                          切割字符串

*      String substring​(int beginIndex)                      截取字符串

*      String toLowerCase​()                                  将字符串中所有的字母转换成小写

*      String toUpperCase​()                                  将字符串中所有的字母转换成大写

*      String trim​()                                          去掉字符串两端的空格


4、StringBuilder类


StringBuilder类和String类的区别

    StringBuilder 是一个可变的字符串类,我们可以把它看成是一个容器,这里的可变指的是 StringBuilder 对象中的内容是可变的。由于字符串的不可变性,在拼接字符串时,会产生大量的内存垃圾,使用 StringBuilder 类就可以解决这个问题。

StringBuilder类的构造方法

    public StringBuilder()                            创建一个空白可变字符串对象,不含有任何内容

    public StringBuilder(String str)              根据字符串的内容,来创建可变字符串对象

StringBuilder类添加和反转方法

    public StringBuilder append(任意类型)            添加数据,并返回对象本身

    public StringBuilder reverse()                          返回相反的字符序列

StringBuilder和String相互转换

StringBuilder转换为String

    public String toString():通过 toString() 就可以实现把 StringBuilder 转换为 String

String转换为StringBuilder

    public StringBuilder(String s):通过构造方法就可以实现把 String 转换为 StringBuilder

StringBuilder常用方法

public StringBuilder append(任意类型)                添加数据,并返回对象本身

public StringBuilder reverse()                              返回相反的字符序列

public int length()                                                 返回长度,实际存储值

public String toString()                                         把StringBuilder转换为String


5、ArrayList

什么是集合

    提供一种存储空间可变的存储模型,存储的数据容量可以发生改变

ArrayList集合的特点

    底层是数组实现的,长度可以变化

泛型的使用

    用于约束集合中存储元素的数据类型,格式如下:

    ArrayList<Student> array = new ArrayList<Student>();

包装类型

    由于泛型不支持基本数据类型,Java 为基本数据类型都提供了对应的包装类型

byte    -->      Byte

short    -->      Short

int    -->      *Integer

long    -->      Long

float   -->      Float

double   -->      Double

char    -->      *Character

boolean   -->    Boolean

    要在集合中存储基本数据类型的数据,我们可以将泛型设置为对应的包装类型

ArrayList类常用方法

构造方法

    public ArrayList()         创建一个空的集合对象

成员方法

    public boolean remove(Object o)             删除指定的元素,返回删除是否成功

    public E remove(int index)            删除指定索引处的元素,返回被删除的元素

    public E set(int index,E element)            修改指定索引处的元素,返回被修改的元素

    public E get(int index)            返回指定索引处的元素

    public int size()            返回集合中的元素的个数

    public boolean add(E e)            将指定的元素追加到此集合的末尾

    public void add(int index,E element)            在此集合中的指定位置插入指定的元素

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容