java svgbase64转byte_Java成长孵化园---认识java(day02)

e29c53b23a84f7bfcd832ba63eb8dfdf.png

1、回顾

环境:JDK(JAVA_HOME,PATH),Eclipse(workspace)

数据类型(基本类型,引用类型)

基本类型(byte、short、int、long、float、double、char、boolean)

2、八种基本类型(续)

97005d7dc0fafebdfcb9b1a24c56e94f.png

6d742da36df1c0035841d3391c6f268c.png

2.1)char

表示字符或字符的整数数字编码

5c2ba164563bbc368d0855e2ff310163.png

5f341034fdbbe8b816ed65e0ffd7942f.png

2.2)基本类型的字面值(五条)

2.2.1)整数字面值是int类型

int a = 67567; //错,右边字面值是int,但超出int范围(-231到231-1)

2.2.2)byte,short,char三种比int小的整数,允许用范围内的值直接赋值

byte a = 127; //右侧是byte类型

byte b = 128; //右侧是int类型(byte范围-128到127)

2.2.3)浮点数字字面值是double

double d = 3.14;

float g = 3.14; //错,右侧是double类型。可以改为float g = (float)3.14;

2.2.4)字面值的后缀

L - long --> long a = 999999L;

F - float --> flaot f = 3.14F;

D - double --> double a = 3.0; double b = 3D;

2.2.5)进制前缀

0x - 16进制 --> 0xff 255

0 - 8进制 --> 0377 255

u - char类型16进制 --> 必须完整表示char类型的两个字节值。 'u0061' 97 'a'

2.3)16进制

用二进制4位可以表示任意一个16进制字符,用两个16进制数字字符可以方便的表示二进制8位,一个字节值。

2.3)基本类型的运算规则(5条)

2.3.1)运算结果的类型,与最大的类型一致

3/2 得 1(两个类型都是整数int) 3d/2 得 1.5(一个int整数,一个double)

2.3.2)byte,short,char三个比int小的整数,运算时会先自动转成int

byte a = 3; byte b = 4;

byte c = a + b; //错,右侧是int+int,结果是int类型

2.3.3)整数运算溢出

类似时钟,从最小加到最大,再加回到最小

8bad28f41ffe039487ca0912803927b7.png

Integer.MAX_VALUE + 1 是负数最小值(最大值+1变成最小数)

2.3.4)浮点数运算不精确

2 - 1.9 得 0.1000000000000009。 4.35 * 100 得 434.9999999999999994

根据IEEE754规范,做某些浮点数运算时,会产生不精确结果(Java提供了精确运算的方法,后面会提到)

2.3.5)浮点数的特殊值

Infinnty - 无穷大 - 2.14/0 NaN - Not a Number - Math.sqrt(-4)

fe69eab105e1f17bee6502c0e47de704.png

*可以自己多试验一些计算

2.5)基本类型转换

2.5.1)小 --> 大

自动转换,整数转浮点数可能会不精确。 byte a = 127; int b = a;

9469a3f658d554132b43a987ce632bd4.png

2.5.2)大 --> 小

会有数据损失,必须要强制转型,浮点数转成整数直接舍弃小数位。

int a = 222; byte b = (byte)a;

int a = 356; byte b = (byte)a;//结果为100(溢出)

3、基本类型小结

要记住八种基本类型字节量和基本类型的运算规则(5条),可以多练习一下。

4、方法

命名的代码块,方便重复调用,方法参数

ce2d1cae4a6ccb4ad0219bc9be763daf.png

5、运算符

+-*/
+数学运算字符串连接运算
%取余,求模判断a能否被4整除,看a%4 余数是否是0
==!=是否相等是否不相等
> >= < <=
&&逻辑与左边是真,并且右边是真,结果才是真短路与,左边是假,右边被忽略不执行
||逻辑或左边是真,或者右边是真,结果都是真短路或,左边是真,右边被忽略不执行
!非非真是假,非假是真用来做相反的条件判断//如果"非a"是真,即a是假if(!a) {}
&位与上边是1并且下边是1,结果是1
|位或上边是1,或者下边是1,结果都是1
^异或不同是1对同一个值异或两次,得到原值
~求反1变0,0变1
>>带符号右移位符号位是1,左边补1右移1位相当于除2
>>>不带符号右移位符号位是1,左边补0
<<左移位左移1位相当于乘2
++--自增、自减a = 5;print(a++);//先取值再自增1. 先取原值5,等待打印2. a自增变成63. 打印原值5 a = 5;print(++a);//先自增再取值1. 先自增变成62. 取新值6,等待打印3. 打印新值6

840f5943c2e3b10d22609b8d4a36fe00.png

5.1)位运算

c3ca1a581a59201dde84acddf4b18983.png

d28cd06d0fb3ccd8fa920f65610b0ee8.png

0397ffe230a971a1b1bef032f7f0341d.png

如果对此文章有什么不明白或疑惑的欢迎留言一起探讨,如果有什么问题欢迎批评指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值