JavaSE - Day13 自动拆箱 与 自动装箱

包装类

基本数据类型 对应的 包装类

基本数据类型包装类
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
booleanBoolean
charCharacter

自动装箱

概念:
基本数据类型转换成包装类

自动拆箱

概念;
包装类转换成基本数据类型

字符串转换成基本数据类型的数字

int 变量名 = Integer.parseInt(要转换的字符串);
注意:
要转换的字符串必须是整形字符串
double 变量名 = Double.parseDouble(要转换的字符串);
注意:
要转换的字符串必须是纯数字组成的字符串
boolean 变量名 = Boolean.parseBoolean(要转换的字符串);
注意:
除了"true"字符串转换完是true ,其余的都是false

将十进制数字转换为十六进制

String str = Intrger.toHexString(十进制);

整数缓冲区

取值范围:
-128 ~ 127
概念:
因为jdk中存在-128 ~ 127 之间的对象,所以在自动装箱的过程中
如果被装箱的数据在此范围内,那么直接将jdk中创建的对象之间的赋值给栈中的引用,所以为true
否则,会重新创建包装类的对象,此时就是为false

字符串 * 重点

不可变字符串

常用方法:
	1.判断字符串是否一致
		语法:
			boolean boolean = 变量名.equals(字符串 或 变量名);
		注意:
			String 类中重写Object的方法
	2.获取子字符串第一次出现的位置
		语法:
			int 变量名 = 变量名.indexOf(子字符串);
		注意:
			若没有找到,则返回 -1;
	3.获取子字符串最后一次出现的位置
		语法:
			int 变量名 = 变量名.lastIndexOf(子字符串);
		注意:
			若没有找到,则返回 -1;
	4.判断字符串以什么开头
		语法:
			boolean 变量名 = 变量名.startsWith(字符串);
		注意:
			==变量名就是父字符串的变量名==
	5.判断字符串以什么结尾
		语法:
			boolean 变量名 = 变量名.endsWith(字符串);
		注意:
			返回值类型 布尔
			可以判断上传文件的类型是否匹配
	6.获取字符串的长度
		语法:
			int 变量名 = 字符串.length();
	7.以某个字符为分割点,分割字符串
		语法:
			String[] 变量名 = 变量名.split(字符串);
		注意:
			分割后的数组中不包会含分割分割点中的数据
	8.获取字符串中某个位置的字符
		语法:
			char 变量名 = 变量名.charAt(位置下标);
		注意:
			返回的类型是字符型
	9.判断字符中是否有字串
		语法:
			boolean 变量名 = 变量名.contains(字串);
	10.替换字符串中的内容
		语法:
			String 变量名 = 变量名.replace(被替换的字符,新字符串);
		注意:
			替换后,原来的数据保持不变
	11.将字符串中的字母全部转换成大写
		语法:
			String 变量名  = 变量名.toUpperCase();
	12.将字符串中所有字母全部转换成小写
		语法;
			String 变量名 = 变量名.toLow
	13.将字符串中首尾的空格删除
		语法:
			String 变量名 = 变量名.trim();
		注意:
			不能去除中间的空格
	14.忽略大小写比较字符串是否相等
		语法:
			boolean 变量名 = 变量名.equalsIgnoreCase(字符串);
	15.将字符串转换为字符数组
		语法:
			char[] 变量名 = 变量名.toCharArray();
	16.截取固定位置的字符串
		语法:
			String 变量名 = 变量名.subString(开始位置, 结束位置);
		注意:
			[开始位置能取到,结束位置取不到)
			即 左闭 右开的区间
	17.判断字符串是否为空
		语法:
			boolean 变量名 = 变量名.isEmpty();

可变字符串

StringBuffer
注意:
线程安全的
StringBuilder
注意:
线程不安全 的

注意:在大量操作字符串的时候,可变字符串执行时间短,执行效率高,占据内存少

精准计算

引用:
	在利用double 计算数据的时候,可能会出现精度损失的问题
关键字:
	BigDecimal
注意:
	对象传入的时候,参数必须是字符串
使用:
	BigDecimal num1 = new BigDecimal(参数);
	BigDecimal num2 = new BigDecimal(参数);
	
	//加法
	BigDecimal 变量名 = num1.add(num2);
	//减法
	BigDecimal 变量名 = num1.substract(num2);
	//乘法
	BigDecimal 变量名 = num1.multiply(num2);
	//除法
	BigDecimal 变量名 = num1.divide(num2);
	

时间相关

Date

Calendar

SimpleDateFormat (核心)

/**
	y:年
	M:月
	d:当月的第多少天
	h:12小时制
	H:24小时制
	m:分
	s:秒
*/
Date date2 = new Date();
		long time = date2.getTime();
		System.out.println(time);
		Calendar instance = Calendar.getInstance();
		Date time2 = instance.getTime();
		SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年 MM 月 dd 日 HH : mm : ss");
		String format = simpleDateFormat.format(time2);
		System.out.println(format);
		try {
			Date parse = simpleDateFormat.parse(format);
			System.out.println(parse);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值