2.java常用类
2020-09-04 10:22:22 1 举报
AI智能生成
Java常用类
作者其他创作
大纲/内容
Object
类库
如何打jar包
jar的分类
第一方: jdk的开发者
每次创建工程默认就会导入类库 JRE System Library jdk的常用类库
第二方: 我们程序员
我们写的代码本来工程中
第三方:开源的组织和社区
如何导入第三方jar包
奶瓶门存储在Referencs Libraries
Attach Source
extral Location
file
floder
构造方法
Object()空参构造方法
成员方法
getClass():获取一个类的运行时类
hashCode()
返回一个对象的hashCode值.如果两个对象的equals结果是true ,则hashCode值需要相同
equals()
比较两个对象是否相等.默认只比较地址.所以子类继承过去之后要重写.重写之后都是用来比较对象属性.如果属性一致也认为两个对象相等,返回true
重写快捷键: alt+shift+s h
toString()
将一个对象以字符串的形式返回: 全类名+@+ Integer.toHexString(hashCode())
重写的快捷键: alt+shift+s s
作用:当直接打印某个对象的引用,则自动调用该对象的toString方法
==和equals区别
比较的范围
equals只能比较引用类型
比较的内容
Scanner
以正则表达完成数据扫描的扫描器.只能扫面基本数据类型和字符串
Scanner(File file)
文件录入
Scanner(Inputstream in)
键盘录入
Scanner(String path)
基本数据类型录入方法
nextByte()
nextShort()
nextInt()
nextLong()
nextFloat()
nextDouble()
nextBoolean()
没有nextChar().因为录入内容都被看做String类
录入float类型不要加f
字符串录入
next()
录入空格之前的内容.看到一个空格就把空格前的内容取走
nextLine()
Scanner使用小问题
怎么解决:
nextInt(); nextLine(); 先把换行符吃掉 nextLine()
写两个Scanner() 一个让用户输入nextInt(); 另一个让输入nextLine();
把录入的数据都是用nextLine()接口;把读去的到数字字符串解析. Integer.parseInt(String str);
String
常量池的特点:
没有重复元素
元素不可以更改,只能新建
String的本质就是一个char[]数组.数组不可变.所以String类型也不可以变.
String的构造方法
String()
\"\"
String(String str)将传入的字面常量字符串初始值相同的内容字符串对象
new String(\"abc\") != \"abc\" true
\"a\"+\"b\" == \"ab\"; true
new String(\"a\")+\"b\" == \"ab\"; false
String(byte[] byte) 将比特数组的数字转为字符串.称之为解码
String(char[] char) 将char数组转为字符串
String判断功能方法
equals(Object o)
比较两个字符内容是否相同
equalsIgnoreCase(String o);
忽略大小写的基础上比较两个字符串是否相同
contains(String o)
是否包含子字符串
startsWith(String 前缀)
是否以参数字符串开头
endsWith(Stirng 后缀)
是否以参数字符串结尾
isEmpty()
String的获取功能
length()
字符串的长度
charAt(int index)
根据参数的索引值来获取对应的字符
subString(int beginIndex)
根据参数的索引值对字符串进行截取,一直到字符串结束为止
从索引为beginIndex开始,到endIndex结束(不包括)截取字符串
indexOf(int ch)
获取指定字符第一次出现的索引
获取从fromIndex开始,ch第一次出现的索引
indexOf(String str)
获取指定字符串在本字符串中第一次出现的索引
获取从fromIndex开始,参数字符串str第一次出现的索引
lastIndexOf(String str)
获取str在字符串中最后一次出现的索引
String转换功能
getBytes()
将字符串转换 byte类型的数组
toCharArray()
将字符串转换为 char 类型的数组
toUpperCase()
将字符串全部转换为大写
toLowerCase()
将字符串全部转换为小写
static valueOf()
静态方法使用String类名调用
将各种类型的值转化为String 类型
待转数据+\"\"
String其他方法
使用newChar 替换所有的 oldChar
trim()
去除字符串两边的空白
正则表达式
好处:可以使用极其简单的方式完成字符串校验
难处: 不好写出正确的正则
原子
1.所有打印(所有可以在屏幕上输出的字符)和非打印字符(看不到的 例如 回车,空格)
2. . * + ? _ ( <> ) 如果所有有意义的字符,想作为原子使用,统统使用“\\”转义字符转义
3.在正则表达式中可以直接使用一些代表范围的原子
\\\\d
[0-9]
\\\\D
0-9之外任何一个字符
\\\\s
空白
\\\\S
除了空白
\\\\w
[0-9A-Za-z]
\\\\W
5.自定义原子表
使用[原子表],可以匹配方括号中的任何一个原子
[13579]
[1-5p-z]
使用[^原子表],可以匹配除方括号中的之外任何一个原子
[^0-9]
任意一个非数字
6. .符号
可以匹配一个任意字符
元字符
元字符是一种特殊的字符,是用来修饰原子用的,不可以单独出现;
包括
* : 表示其前面的原子可以出现 0次 1次 或多次
? :表示其前面的原子可以出现 0次 或 1次 ,有只能出现一次,要么没有出现
{}:用于自己定义前面原子出现的次数
{m} m 表示一个整数,表示其前面的原子出现的次数
| :表示或的关系,它的优先级别是最低的,最后考虑它的功能;
(com|cn|org)
^ :直接在一个正则表达式的第一个字符出现,则表示必须以这个正则表达式开始
$ : 直接在一个正则表达式的最后一个字符出现,则表示必须以这个正则表达式结束
():提高优先级;
String和正则相关的方法
boolean matches(String regex)
当前字符串和正则表达式的匹配
String[] split(String regex)
匹配到的正则当作分隔符,将字符串分隔为字符串类型的数组
将regex匹配的所有字符串 使用 replacement参数类进行替代
StringBuilder(字符串缓冲区)
是一个可变字符序列
StringBuilder() 初始容量16个
添加方法
append(任意类型); 拼接字符串
删除方法
deleteCharAt(int index); 删除指定位置的字符
替换方法
reverse() 反转字符串
String和StringBuilder拼接的区别
System.currentTimeMills(); 获取指定到这一行代码的时间
StringBuffer和StringBuilder的区别
相同点:都是可变字符串
不同点:
String和StringBuilder或者StringBuffer作为方法参数
String作为方法参数
StringBuffer或者StringBuilder字符串作为方法参数
String和StringBuilder的互转
StringBuilder转String
StringBuilder的成员方法: toString()方法
常用
String的构造方法: String(StringBuilder sb)
sb+\"\"
String转StringBuilder
StringBuilder 的构造方法: StringBuilder(String str)
基本数据类型包装类
包装类有哪些
Boolean 有三个值 null ,true,false
boolean 有两个值 true,false
每个包装类中属性和方法都差不多.
Integer的构造方法
Integer()
Integer(int i)
Integer(String numStr)
Integer的常用属性
MAX_VAULE
MIN_VALUE
SIZE
TYPE
int-->int.class
Integer方法
***Value()
Integer转为其他类型
Integer 静态方法
toHexString(整型) 转为16进制字符串
toOctalString(整型)转为8进制字符串
toBinaryString(整型)转为二进制字符串
Integer转为int: 自动拆箱
int转Integer: 自动装箱
int转String:
静态方法: String 中 public static String valueOf(int i)
int 类型 + “”
String转int
静态方法: Integer 中的 public static int parseInt(String s) throws NumberFormatException
Integer转String:
成员方法:Integer中public String toString()
Integer类型的对象 + “”
String转Integer
构造方法: Integer(String s)
工厂方法: Integer中 public static Integer valueOf(String s) throws NumberFormatException
自动装箱和拆箱
装箱:将基本数据类型转为对应包装类型
拆箱:把包装类型转为基本数据类型
jdk1.5之后
自动装箱: 基本数据类型可以直接给包装类型赋值
自动拆箱: 包装类型可以直接给基本数据类型赋值
Math
Math构造方法被封装,类用final修饰 杜绝被子类继承,里面所有的方法和属性都是静态的
随机数:random()
绝对值:abs()
静态导入: import static 包名.类名.* 表示将该类中所有静态方法导入到当前类中
System
系统类
属性
public static final InputStream in
标准输入流
public static final PrintStream out
标准输出流
静态方法
public static long currentTimeMillis()
返回以毫秒为单位的当前时间。
public static long nanoTime()
返回最准确的可用系统计时器的当前值,以毫微秒为单位。用作计时器
public static void gc()
运行垃圾回收器。
在回收垃圾的时候自动调用Object中的finalize()方法
public static void exit(int status)
终止当前正在运行的 Java 虚拟机。
java.util
Random
设定随机数
种子
种子相同,执行相同的方法,则随机数的结果相同
日期和时间相关类(重点)
Date
Date(): 当前的时间对象
Date(long milliSecond): 代表指定毫秒值相对于时间原点1970.1.1 00:00:00的时间对象
Date的对象方法
long getTime(): 返回当前时间对象代表的毫秒值
setTime(long m): 设置时间对象的毫秒值
DateFormat 抽象类
SimpleDateFormat类
SimpleDateFormat(String pattern)
以指定的时间格式创建SimpleDateFormat
时间格式符号:
y:年 M:月 d:日 am 上午下午 H:24小时格式 h十二进制小时格式 m:分钟 s:秒
对象方法
String format(Date e); 将时间对象格式化为字符串
Date parse(String str): 以指定的时间格式把字符串解析为时间对象. str的格式一定要和SimpleDateFormat设置时间格式一样
Calendar
常用的方法
get(int field)
get(1):使用数字获取字段下的值不好记忆
使用Calendar提供代表字段的常量获取字段下的值
get(Calendar.YEAR)
需要注意的字段:
set方法
getTimeMillis():获取当前Calendar代表毫秒数
Calendar和Date互转
Date转Calendar
调用 Calendar 的 setTime(Date date)
Calendar转Date
调用 Calendar 的 getTime()
Calendar和 毫秒数 的转换
Calendar 转 毫秒数
毫秒数 转 Calendar
调用Calendar的setTimeMillis(毫秒数)
Date 和 毫秒数 的转换
Date 转 毫秒数
通过 Date 中的 getTime() 获取Date的毫秒数
毫秒数 转 Date
调用Date构造方法: Date(long millis)
大数字和大浮点数
大数字整数
BigInteger
常用构造方法 BigInteger(String str)
加,减,乘,除,取余 运算
大数字浮点数
BigDecimal
同上
Arrays?
Collectioins?
常用类
0 条评论
回复 删除
下一页