第二天学java(随记)

一.变量的存储原理:

数字存储的原理:

转化为二进制进行存储

把十进制数字转化为二进制的方法——除二取余法

二进制转化十进制、八进制、十六进制——权值——禁止n-1次方

文字、图片、声音存储的原理:

文字——存储的是文字在码表中对应的编号

图片——像素点,RGB

声音——声波采集器采集的结果

计算机中存储数据的其他单位:

字节——b

1KB = 1024B

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

数据类型:

基本数据类型:
分类:

整数:可分为四种 :

byte 表示8位有符号整数,取值范围为-128到127

short 表示16位有符号整数,取值范围为-32768到32767

int 表示32位有符号整数,取值范围为-2147483648到2147483647

long 表示64位有符号整数,取值范围为-9223372036854775808到9223372036854775807

小数可分为两种:

float 的取值范围约为±1.4E-45到±3.4E+38,它可以表示大约6-7个有效数字 (一定要在小数后面加F)

double 的取值范围约为±4.9E-324到±1.7E+308,它可以表示大约15个有效数字(为小数的默认类型)

小数:float 或 double

字符:char

布尔:boolean

排序:

byte<short<int<long<float<double

char < int < long < float < double

数据类型一般是从小到大,当然也可用强制转换将数据转换成你想要的类型,不过可能会造成数据精度丢失,如图:

package csdnWeb.Code;

public class Test {
    public static void main(String[] args) {
        double a = 13.1;
        System.out.println((int)a);
    }
}

引用数据类型:

String:一般用作字符串的定义或对字符串的位置、长度等进行相关操作

二.类型转换:

自动类型转换:

概念:

把小范围的数据,直接存放入大范围的数据中

特点:

可以直接存放

表达式的类型提升:

规律:表达式的最终结果取决于当前表达式的最高数据类型

补充:byte short char 在运算的过程中,会直接提升为int

如:

byte a;

byte b;

byte c = a + b;

/这种写法是错误的,a + b后自动转换类型为 int ,而赋值类型只能由小到大,所以是错误的写法!/

三.运算符

运算符分为:算数运算符、自增自减运算符、赋值运算符、关系运算符、逻辑运算符、三元运算符.

算术运算符:

分类:

+:表示数学运算中的加法

补充:+ 号还能表示拼接,口诀为:串前运算,串后拼接

-:表示数学运算中的减法

*:表示数学运算中的乘法

/:表示数学运算中的除法

补充:在Java中,整数与整数相除,结果只能为整数;要想得到小数,在式子中就必须要有小数参与.

如: 10/10 = 1;10.0/5 = 2.0

%:表示数学运算中的取余

自增自减运算符:

自增自减运算符分为:自增运算符、自减运算符

自增 : 符号为 ++ ,可以放在变量的前面或者后面,让变量的值加一

自减 : 符号为 --,可以放在变量的前面或者后面,让变量的值减一

在自增自减中又有单独运算与参与运算,如:

a++; 表示变量a单独运算自加无其他运算语句

System.out.println("a++"); 表示的是变量a在参与运算中先输出a的值再进行自加,需要注意的是,其输出的是a在此运算之前的值,如下:

package csdnWeb.Code;

public class Test {
    public static void main(String[] args) {
        int a = 5;
        a+=1;
        System.out.println(a++);
        System.out.println(a);
    }
}

 

我们可以看到 System.out.println(a++); 中的输出结果却是6,这是因为a++语句在整个语句中是参与运算,且是先输出再进行自加;而后的语句 System.out.println(a); 才是输出了a++后的值;

若是 ++a 或者 a+=1 的话 ,这两个符号代表的意思都是先运算再进行输出,则其输出的值会是 7 ,如图:

package csdnWeb.Code;

public class Test {
    public static void main(String[] args) {
        int a = 5;
        a+=1;
        System.out.println(++a);
        System.out.println(a);
    }
}

因 ++a 与 a+=1 的结果相同,在此我就不演示两次了.

赋值运算符:

分类 :

= : 将等号后面的值赋给等号前面的变量

+= : 将等号后面的值加给自己

-= : 将等号后面的值减去再赋值给自己

*= : 乘以等号后面的值再赋值给自己

/= : 除以等号后面的值再赋值给自己

%= : 取余等号后面的数再赋值给自己

拓展赋值运算符的执行流程和特点 : 先运算,后强转,再赋值

加了赋值运算符的变量若参与运算一般是将自己运算后的值是作为输出对象

三元运算符:

作用:

格局条件判断,选择不同的结果

格式:

数据类型 变量名 = 关系表达式?值1 :值2;

如: int a = a%2==0? true:false

执行流程:

先执行关系表达式,如果判断结果为true,则返回值1,如果判断结果为false,则返回值2

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值