12.01_常见对象(Scanner的概述和方法介绍)(掌握)

  • A:Scanner的概述
  • B:Scanner的构造方法

    • Scanner(InputStream source)
    • System.in
  • C:一般方法

    • hasNextXxx() 判断是否有下一个输入项,其中Xxx可以是Int、Double等,如果需要判断是否包含下一个字符串,则可以省略Xxx
    • nextXxx() 获取下一个输入项。Xxx的含义和上个方法的相同,默认情况下,Scanner使用空格、回车等作为分隔符

12.02_常见对象(Scanner获取数据出现的小问题及解决方案)(掌握)

  • A:连个常用的方法:
    • public int nextInt();获取一个int类型的值
    • public String nextLine();获取一个String类型的值
  • B:案例演示
    • 先演示获取多个int值,多个String值得情况
    • 再演示先获取int值再获取String值出现的情况
    • 解决方法:
      • 第一种:先获取一个数值后,再创建一个新的键盘录入对象获取字符串
      • 第二种:把所有的数据都先按照字符串获取,然后想要什么就转换成什么

12.03_常见对象(String类的概述)(掌握)

  • A:String类的概述
    • 通过API查看String类的说明
    • 可以看到这两句话:
      • 字符串字面值"abc"也可以看成是一个字符串对象
      • 字符串是常量,一旦被赋值,就不能被改变

12.04_常见对象(String类的构造方法)(掌握)

  • A:常见构造方法
    • public String();空构造
    • public String(byte[] bytes);把字节数组转成字符串,要进行解码
    • public String(byte[] bytes,int index,int length);将字节数组的一部分给转换为字符串
    • public String(char[] value);把字符数组转换成字符串
    • public String(char[] bytes,int index,int count);将字符数组的一部分给转换为字符串

12.05_String类的判断功能

  • A:String类的判断功能
    • boolean equals(Object obj); 比较字符串的内容是否相同,区分大小写
    • boolean equalsIgnoreCase(String str);比较字符串的内容是够相同,忽略大小写
    • boolean contains(String str);判断大字符串中是否包含小字符串
    • boolean startsWith(String str);判断字符串是否以某个指定的字符串开头
    • boolean endsWith(String str);判断字符串是否以某个指定的字符串结尾
    • boolean isEmpty();判断字符串是否为空
      • ""是字符串常量,同时也是一个String 类的对象,既然是对象就可以调用String类的方法
      • null是空常量,不能调用任何的方法,否则会出现空指针异常,null常量可以给任意的引用数据类型赋值

12.06_练习(模拟登录)

  • 案例演示
    • 需求:模拟登录,三次机会,并提示还有几次
    • 用户名密码都为admin
    • 分析
      • 1、模拟登录,需要键盘录入
      • 2、三次机会,需要for循环
      • 3、提示几次,需要进行if判断

12.07_String类的获取功能

  • int length();获取字符串的长度(每一个字符的个数)
  • char charAt(int index);获取指定索引位置的字符
  • int indexOf(int ch); 返回指定字符在此字符串中第一次出现处的索引(接收的是int类型,传递char类型的会自动转换)
  • int indexOf(String str);返回指定字符串在此字符串中第一次出现处的索引
  • int indexOf(int ch,int fromIndex);返回指定字符在此字符串中从指定位置后第一次出现处的索引
  • lastIndexOf();从后向前找
  • String substring(int start);从指定位置开始截取字符串,默认到末尾
  • String substring(int start,int end);从指定位置开始指定位置结束

12.08_练习(遍历字符串)

12.09_练习(统计一个字符串中各种字符出现的次数)

  • 字符串:DISNGdsddm&^*)^1245
  • 分析:字符串由字符组成,而字符是有范围的,通过范围判断是否包含该字符,如果包含计数器变量自增

12.10_String类的转换功能

  • byte[] getBytes();把字符串转换为字节数组
  • char[] toCharArray);把字符串转换为字符数组
  • valueOf();把任意类型的数据转换为字符串

  • String toLowerCase();把字符串转换成小写

  • String toUpperCase();把字符串转换成大写
  • String concat(String str);拼接字符串

12.11_练习(转化大小写,链式编程)

  • 把一个字符串的首字母转成大写,其余为小写(只考虑英文大小写字母字符)
  • 链式编程:只要保证每次调用完方法返回的是对象,就可以继续调用

12.12_练习(把数组转换成字符串)

  • 需求:把数组中的数据按照指定格式拼接成一个字符串
    • 例:
      • int[] arr = {1,2,3};
    • 输出结果:
      • "[1, 2, 3]"

12.13_String类的其他功能

  • A:String的替换功能
    • String replace(char old,char new);
    • String replace(String old,String new);
  • B:String的去处字符串空格
    • String trim();去除开头结尾的空格

12.14_练习(字符串反转)

  • 需求:字符串反转
  • 分析:
    • 1、键盘录入获取字符串 Scanner
    • 2、将字符串转换成字符数组
    • 3、倒着遍历字符数组,并再次拼接成字符串
    • 4、打印