day08-API String-StringBuilder

昨日内容回顾

面向对象

面向对象

偷懒,有事找别人完成;我们只指挥;

面向过程

自己干活;强调的是每一个步骤;

概述

模板,图纸,描述事物;

格式

public class 类名{
    
}

组成部分

  1. 成员变量
  2. 成员方法
  3. 构造方法

对象

概述

具体的事物;(个体)

创建对象

类名 对象名 = new 类名(实参);

使用对象

私有的成员变量,只能通过调用setter方法或构造方法存值;通过getter方法取值;
对象名.setXxx(实参);

关系

一个类可以创建出很多对象,(类是描述对象的)

每个对象都一定是来自于某个类;(对象是类的具体体现)

private

私有的,可以修饰成员变量,成员方法,构造方法;一般用于修饰成员变量;
外界不能直接使用了,需要提供对应的getter和setter方法;

this

概述

当前对象;谁调用方法,谁就是当前对象;

作用

主要用于区分局部变量和成员变量重名;

构造方法

概述

用来创建对象的方法就是构造方法;

格式

public  类名(形参){
    给成员变量赋值;
}

作用

  1. 创建对象
  2. 创建对象的过程中,给成员变量赋值

执行时机

  • 每次创建对象的时候,都会执行;

套路

  1. 编写模型类(图纸类)
    1. 成员变量
    2. 成员方法
    3. 构造方法
  2. 编写测试类
    1. 写main方法
    2. 根据模型类创建对象;(利用的是模型类中的构造方法)
    3. 面向对象,调用方法,一旦方法执行了,我们就能得到方法执行的结果;

今日内容


API(了解)

API概述

在这里插入图片描述

API文档

描述java写好的类的一个对应的文档;(参考手册)

如何查询API文档(会用)

在这里插入图片描述
day08-API String-StringBuilder_第1张图片
day08-API String-StringBuilder_第2张图片

day08-API String-StringBuilder_第3张图片
day08-API String-StringBuilder_第4张图片
day08-API String-StringBuilder_第5张图片

关于Scanner的next和nextLine方法对比(了解)

在这里插入图片描述

String

概述

java中所有的字符串都可以看成是String类的对象;将来就可以面向对象,调用方法;

特点

day08-API String-StringBuilder_第6张图片

字符串对象一旦创建成功,内容不可改变;(常量)

构造方法

day08-API String-StringBuilder_第7张图片

构造方法创建的字符串对象与双引号创建的字符串对象有什么区别?

day08-API String-StringBuilder_第8张图片

字符串拼接相关的操作

拼接结论

day08-API String-StringBuilder_第9张图片

拼接原理图

day08-API String-StringBuilder_第10张图片

常用方法(重点)

比较相关

  1. equals(“要比的字符串”) 比较内容是否相同;
  2. equalsIgnoreCase(“忽略大小写的字符串”) 忽略大小写比较内容是否相同;

例如:
day08-API String-StringBuilder_第11张图片

字符串遍历的方法

  1. length() 可以获取字符串的长度
  2. charAt(索引); 可以根据指定的索引获取对应位置的字符;
  3. toCharArray(); 直接把字符串转成字符数组;

例如:

day08-API String-StringBuilder_第12张图片

day08-API String-StringBuilder_第13张图片

字符串的截取

在这里插入图片描述

day08-API String-StringBuilder_第14张图片

字符串的内容替换

在这里插入图片描述

字符串的切分

String[] split(字符串b);

使用一个字符串对象a,调用split方法,传递另一个字符串b,会使用字符串b对字符串a进行切分,最终会返回切出来的字符串数组;

特殊情况:

1. 如果被切分的字符串a的头部符合切分条件,切分后,头部会保留一个长度为0的空字符串;
2. 如果被切分的字符串a的尾部符合切分条件,切分后,尾部会舍弃这个长度为0的空字符串;
3. 如果被切分的字符串a中包含".",并且希望使用"."进行切分,需要写成:"\\."的形式,才能正确的切分;

注意

字符串中所有的方法都不会改变字符串的值,运算后会得到一个新的结果,必须使用变量接收才能看到方法执行的效果,否则原来的字符串变量是不会改变的;

StringBuilder类

概述

可以看成是java编写的一个专门用于解决字符串拼接效率的类;(容器)
StringBuilder类的对象的内容可以随便改变;

作用

专门用于解决字符串拼接效率;

构造方法

在这里插入图片描述

常用方法(重点)

day08-API String-StringBuilder_第15张图片

注意事项

append为了让我们调用的时候,能传递任意数据类型的参数,所以java设计了大量的重载;

append为了让我们调用的时候,能够批量的添加数据,所以这个方法设计的返回值是返回本身;

返回本身可以使用链式编程;

链式编程(难点)

使用一个方法返回的对象,继续调用方法,这就是链式编程;

使用链式编程的前提

  1. 方法必须返回的是一个对象,才能使用链式编程;

String与StringBuilder的区别

在这里插入图片描述

String与StringBuilder的相互转换

  1. 为什么要把String转成StringBuilder?
因为有时候需要进行拼接,反转的操作,直接以字符串类型进行拼接效率低,字符串类型不具备反转的能力,所以我们需要将String转成StringBuilder;
  1. 为什么要把StringBuilder转成String?
如果涉及到字符串内容的比较时,需要将StringBuilder转成String,因为STringBuilder里面没有equals方法;String类的equals("要比的字符串")方法可以比较内容,设置还有忽略大小写比较的方法;

如何转

String --> StringBuilder 利用StringBuilder 类的带参数构造方法即可;
StringBuilder --> String 利用StringBuilder 类的toString()方法即可;

你可能感兴趣的:(javase,java,eclipse)