javese-ideal快捷键&常用类String&Math

106 阅读4分钟

一、ideal快捷键

image.png

二、常用类的学习方式

1、常用类概念

  • JDk对于开发中常用工具,功能提前设计好了,对于开发人员直接使用
  • 常用类是开发中经常用,是慢慢积累的过程

2、如何学习

  • 简单了解这个类是做什么的
  • 快速浏览所有方法 查看有没有static修饰,【是否要关注当前类里面的构造方法】
  • 如果没有static修饰,【关注构造方法,创建对象,调用非静态方法】
  • 构造方法创建对象--优先关注无参(直接new 方法名),然后再是选少量参数
  • 调用形参列表:
    形参列表:使用方法要给他什么参数
    返回值类型:方法执行完功能后,给的什么内容

三、字符串相关类【重点】

  • String:字符串不可变,底层存储数据使用的是char[]
  • 调用方法如果是空对象null就会报错

1、String常用方法

方法描述
char charAt(int index)char charAt(int index)
boolean contains(CharSequence s)当且仅当此字符串包含指定的char值序列时才返回true
boolean endsWith(String suffix)测试此字符串是否以指定的后缀结尾
boolean equals(Object anObject)将此字符串与指定对象进行比较。
byte[] getBytes()使用平台的默认字符集将此 String编码为字节序列,将结果存储到新的字节数组中
byte[] getBytes(Charset charset)使用给定的charset将该String编码为字节序列,将结果存储到新的字节数组中。
int indexOf(String str)返回指定子字符串第一次出现的字符串内的索引。
boolean isEmpty()返回 true如果,且仅当 length()为 0 。
int length()返回此字符串的长度。
String replace(CharSequence target, CharSequence replacement)将与字面目标序列匹配的字符串的每个子字符串替换为指定的字面替换序列。
String[] split(String regex)将此字符串分割为给定的 regular expression的匹配。
boolean startsWith(String prefix)测试此字符串是否以指定的前缀开头。
String substring(int beginIndex)返回一个字符串,该字符串是此字符串的子字符串。
tring substring(int beginIndex, int endIndex)返回一个字符串,该字符串是此字符串的子字符串。
char[] toCharArray()将此字符串转换为新的字符数组。
String toLowerCase()将所有在此字符 String使用默认语言环境的规则,以小写。
String toUpperCase()将所有在此字符 String使用默认语言环境的规则大写。
String trim()返回一个字符串,其值为此字符串,并删除任何前导和尾随空格。

es:

对象名.方法名

image.png

输出为“王”

2、String构造方法

2、StringBuffer和Stringbuilder类

2.1、概述

  • 相同的点:线程安全,是一个可变的字符串,当定义个字符串,以后无论拼接多少次,字符串始终是同一个地址值
  • 不同点: StringBuffer:线程安全,StringBuilder:线程不安全

2、2用法

  • 创建一个对象
  • 进行拼接
  • 第一个对象和拼接对象都是一个地址值

image.png

3、常量池

(1) 当第一次使用String str = "A"; 的方式赋值,会将该字符串值【对象】放入到常量池

(2) 当再次使用String str1 = "A"; 的方式会先检查常量池是否有"A"值,

  • 如果存在直接引用

  • 如果不存在,会创建"A"放入常量池

(3) 字符串拼接

  • 常量方式拼接,先检查常量池是否有一样字符串,如果有就返回地址,如果没有就新增一个字符串

image.png

  • 变量方式拼接,不会检查常量池,去堆空间创建对象

image.png

使用方法

三、Math

数学的一些基本运算公式

1、BigDecimal

1、1使用场景

因为float和double都不能精确的表示一个小数,所以表示金钱类都必须使用BigDecimal

1、2加减乘除

ex:加法

image.png

1、3除数

除数要具体精确到小数位数和向上或向下取整需要使用的方法

image.png

2 BigIntegerTest

2、1概述

BigInteger是比long类型精度更高的类型,当有用到精度高于long需求的时候用。

image.png