2022-07-20 第十组 Myy 学习笔记_面向对象

面向对象

类中可以用哪些结构?

属性、方法、构造器

 

·String一旦声明不可改变

 

String既然是一个类,s1应该叫做String类的对象。类如果要创建对象用new,s1并没有用new也可以叫做对象。

 

·创建对象是要调用构造器

s2、s3是通过new创建出来的String类的对象

 

s1指向的abcdefg和s2指向的abcdefg不在同一个区域内

 

双等号比较的是虚地址。

 

虚地址:对象在内存中的存储位置

 

比较字符串的内容

 

equals方法:

  1. 需要传参:传String类型的参数
  2. 有返回值,返回值是boolean类型
  3. 访问权限public

 

Length方法:

  1. 不需要传参
  2. 有返回值,返回值类型int
  3. 访问权限public

 

面试题:字符串获取长度的方法和数组获取长度有什么区别?

数组的length是属性,字符串的length( )是方法

 

取出指定位置的字符:

 

判断指定字符是否存在,返回值为字符串在s1的下标

  1. 从前往后找

 

  1. 从后往前找

 

实例:统计a在s1中出现了多少次

 

 

字符串的截取

如果传一个参数,从指定位置开始截取,直到字符串的末尾(考虑一下包不包括1位置的字符)

 

实例:键盘输入身份证号,计算出生日和性别

(注:倒数第二位的数字,奇数是男,偶数是女)

 

 

 

转大写

 

 

 

转小写

 

 

 

判断是否以xxxx开头

 

 

 

判断是否以xxxx结尾

 

 

 

验证码

 

 

 

去掉字符串前后的空格

 

 

 

 

字符串的替换

 

 

 

 

数组转字符串

 

 

 

字符串转成字符型的数组

 

 

 

字符串转成字节型的数组(一般情况下,字节型数组是在操作文件时常用(IO流))

 

 

 

字符串和其它数据类型的转换

·任何数据类型和字符串类型做加法,结果都是字符串

 

 

 

包装类型

 

 

 

原理:

(自动)装箱:把int类型包装成了包装器Integer类型。基本数据类型转换成对应的包装器类型

(自动)拆箱:把Integer类型转换成int类型。包装器类型转换成对应的基本数据类型

 

JDK5以后的新功能

  1. 自动装箱和自动拆箱
  2. 增强for循环(foreach)
  3. 枚举(switch case)

JDK7以后的新功能:

Switch...case可以用String

 

装箱:

 

 

 

拆箱:

 

 

 

 

异常:

  1. 数组下标越界
  2. 内存溢出(错误)
  3. 空指针
  4. 字符串下标越界
  5. 数字格式化
posted @ 2022-07-20 21:35  Myy蒋  阅读(28)  评论(0)    收藏  举报