常用工具类
2023-07-24 16:57:33 6 举报
AI智能生成
Java
作者其他创作
大纲/内容
Object类
1.getclass()方法:返回返回该对象的真实类型(运行时的类型)
2.hashcode()方法:返回该对象的十进制的哈希码值(哈希码值相同对象可能大致相同,可能有哈希冲突的情况)
3.equals()方法:
==和equals的区别
1.==比较的是内存地址,但是在基本数据类型中比较的是值
2.父类Object中的equals方法比较的也是内存地址
3.通常如果子类中希望比较内容(数据)可以重写equals方法
4.通常重写equals方法时也得重写hashcode方法
4.toString()方法:用于输出对象信息。直接使用快捷方法生成。默认返回内存地址,如果需要得到对象的属性信息就需要重新toString方法
包装类
1.作用:因为基本数据类型不具有方法和属性。而引用数据类型可以拥有属性和方法
2.基本数据类型
除了int类型和char类型对应的包装类是Integer和Character,其他基本类型的包装类都是首字母大写
3.装箱和拆箱:装箱就是将基本类型转换成包装类,拆箱就是将包装类型转换成基本类型
4.Number类:Byte、Short、Integer、Long、Float、Double六个子类
提供一组方法,用于将其中某一种类型转换成其他类型 xxxValue()方法
比如:Interger a=10; Double d = a.doubleValue(); 将interger类型转换为Double类型
5.常用包装类(Integer,Double)
常用方法:
1.Integer.parseInt(将前端传入的数字类型的字符串转换成数字类型)
2.Double.parseDouble(将前端传入的引用数据类型转换成double类型)
6.缓冲区(面试题):整数型的包装类定义缓冲区(-128~127),如果定义的数在这个范围之内,那么直接从缓存数组中获取,否则重新new新的对象
String类(常用方法)
1.获取的方法
1.charAt(下标):获取指定下标对应的字符,返回char类型
2.indexOf(“str类型”):获取指定字符串对应的下标,返回int类型,如果不存在就返回-1
应用场景:常用于模糊查询
3.lastIndexOf(“str类型”):和indexOf()方法一样,区别在于该方法是从后往前找
4.length():获取字符串的长度
2.判断的方法
1.equals(): 判断两个字符是否相等
2.equalsIgnorecase()判断两个字符是否相等,忽略大小写
应用场景:可以用于登录时验证码忽略大小写的功能
3.isEmpty():判断字符串是否是空串
4.startsWith("str"):判断字符串是否以指定的字符串开头
5.startsWith("str",下标)判断字符串是否从指定的开始位置以指定的字符串开头
6.endWith("str"):判断字符串是否以指定的字符串结尾
7.contains("str"):判断字符串中是否包含自定的字符串
3.其他方法
1.concat("str"):字符串与指定的字符串进行拼接(记得重新赋值)
2.replace("str1","str2"):字符串替换:将字符串中指定的字符串替换成指定的字符串
3.substring(起始下标,结束下标):字符串截取,从指定的下标开始和结束(范围是左闭右开)
4.substring(起始下标):字符串截取,从指定的下标开始一直到最后
5.split("指定字符"):字符串切割,按照指定的字符串对原字符串进行切割(返回切割的字符串)
6.trim():去除字符串前后的空格
7.getBytes():将字符串变成字节数组
8.toCharArray():将字符串变为字符数组
9.toUpperCase():将字符串中的字母变为大写
10.toLowerCase():将字符串中的字母变为小写
StringBuffer类和StringBuilder类(可变字符串):缓冲区初始容量为16个字符
常用方法
1.append("str"):用于拼接字符串
2.delete(开始下标,结束下标):删除字符串,从指定下标开始和结束
3.insert(指定下标,"指定字符串"):从指定下标位置添加指定的字符串
4.reverse():将该字符串倒置
5.toString():将StringBuffer类型转换成String类型(定义一个string类型接收)
Date类(日期类)
表示特定时间
1.创建Date类的对象(默认是系统当前时间):Date date=new Date(年,月,日),此时date输出的是系统当前时间(默认从1900年开始),精确到毫秒
2.date.getTime():返回当前date日期对应的时间的毫秒数 从1970年开始计算的毫秒数
可以通过获取的时间/1000/60/60/24转换成天数
3.d1.before(d2)/d1.after(d2): 判断d1时间是在d2时间之后还是之前的方法
SimpleDateFormat类(日期格式化类)
获取当前系统时间转换成年/月/日的格式
1.创建一个date类,Date date=new Date()
2..创建日期格式化对象(年/月/日:y/M/d 时/分/秒: H/m/s):SimpleDateFormat sdf=new SimpleDateFormat("yyyy/MM/dd HH/mm/ss")
3.调用日期格式化对象的format方法:String time=sdf.format(date); 此时得到的time就是系统年/月/日 时/分/秒的时间
将字符串格式的时间转换成Date类型:String time="2021/1/1 12:01:01";
调用日期格式化对象的parse方法:Date date=sdf.parse(time);
Calendar类(日历类)
创建日历类对象: Calendar calendar=Calendar.getInstance();默认表示的系统当前时间
1.get()方法(获取年月日时分秒数据)
获取年份:calendar.get(Calendar.YEAR)
2.set()方法(设定一个自己需要的时间)
设定年份:calendar.set(Calendar.YEAR,年份);
3.ad()方法(在指定的字段添加或者减去指定的值)
增加1个月:calendar.add(Calendar.MONTH,+1);
System类(系统类)
1.currentTimeMillis()方法:返回当前系统时间的毫秒数 从1970年开始计算
可以使用日期格式化将当前时间转换成年/月/日的格式
2.exit()方法:用于终止JVM的运行,参数表示终止的状态 0表示正常退出
常用于死循环中执行某个操作结束循环
Math类(数学计算工具类)
1.Math.pow(a,b):a的b次方
2.Math.sqrt(a)/Math.cbrt(a):求a的平方根/立方根
3.Math.ceil(a)/Math.floor(a):对a向上/向下取整
4.Math.round(a):对a四舍五入
5.Math.random():随机数:默认范围[0,1)
//案例:随机生成一个三位数的随机数
int num=(int)(Math.random()*900)+100;
//强制类型转换,将double类型转换为int类型,这里需注意需要先乘900后再强转
int num=(int)(Math.random()*900)+100;
//强制类型转换,将double类型转换为int类型,这里需注意需要先乘900后再强转
BigDeicmal类(精确计算浮点数,doubler保存的是近似值)
BigDecimal bd1=new BigDecimal("1.0");
BigDecimal bd2=new BigDecimal("0.9");
BigDecimal bd2=new BigDecimal("0.9");
1.bd1.add(bd2):加法运算
2.bd1.subtract(bd2):减法运算
3.bd1.multiply(bd2):乘法运算
4.divide(被除数,保留小数位数,舍入模式):
1.ROUND_CEILING 向上取整;
2.ROUND_FLOOR 向下取整;
3.ROUND_HALF_UP 四舍五入
2.ROUND_FLOOR 向下取整;
3.ROUND_HALF_UP 四舍五入
2023.07.12
0 条评论
下一页