Java学习 - 黑马 - 随堂笔记 - 14_字符串
1. API
1.1 API概述
API(Application Programming Interface):应用程序编程接口
编写一个机器人变成去控制机器人踢足球,程序需要向机器人发出向前跑、向后跑、射门、抢球等各种命令。机器人厂商一定会提供一些用于控制机器人的接口类,这些类中定义好了操作机器人各种动作的方法。其实,这些接口类就是机器人厂商提供给应用程序编程的接口,大家把这些类称为API。
Java API:自的就是JDK中提供的各种功能的Java类
这些类将底层的实现封装了起来,我们不需要关心这些类是如何实现的,只需要学习这些类如何使用即可,我们可以通过帮助文档来学习这些API如何使用。
1.2 如何使用帮助文档
①右键打开该文档
②找到索引选项卡中的输入框
③在输入框中输入Random
④看类在哪个包下
⑤看类的描述
⑥看构造方法
⑦看成员方法
1.3 API使用练习
需求:按照帮助文档的使用步骤学习Scanner类的使用,并实现键盘录入一个字符串,最后输出在控制台
package com.itheima_01;
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) {
//创建对象
Scanner sc = new Scanner(System.in);//Scanner(System.in)是调用构造方法
//接收数据
System.out.println("请输入一个字符串数据:");
// String line = sc.nextLine();
String line = sc.nextLine();
//应该先用sc.nextLine(),对象调用方法,然后用String类型的line接收
//可以先打出sc.nextLine();然后Alt+Ctrl+V快捷键生成左边的内容
//输出结果
System.out.println("你输入的数据是:" + line);
}
}
注意:
调用方法的时候,如果方法有明确的返回值,我们用变量接收
可以手动完成,也可以使用快捷键的方式完成(Ctrl+Alt+V)
2. String
2.1 String 概述
String类在java.lang包下,所以使用的时候不需要导包
String类代表字符串,Java程序中的所有字符串文字(例如"abc")都被实现为此类的实例
也就是说,Java程序中所有的双引号字符串,都是String类的对象
字符串的特点
- 字符串不可变,它们的值在创建后不能被更改
- 虽然String的值是不可变的,但是它们可以被共享
- 字符串效果上相当于字符数组(char[]),但是底层原理是字节数组(byte[])
(JDK8及以前是字符数组,JDK9及以后是字节数组)
2.2 String 构造方法
package com.itheima_02;
//更推荐使用直接赋值的方式得到字符串对象
public class StringDemo01 {
public static void main(String[] args) {
//public String();创建一个空白字符串对象,不含有任何内容
String s1 = new String();
System.out.println("s1:" + s1);
//public String(char[] chs);根据字符数组的内容,来创建字符串对象
char[] chs = {'a', 'b', 'c'};
String s2 = new String(chs);
System.out.println("s2:" + s2);
//public String(byte[] bys);根据字节数组的内容,来创建字符串对象
byte[] bys = {97, 98, 99};
String s3 = new String(bys);
System.out.pri