Java学习笔记day1___JavaBase

JavaBase

基本数据类型

  1. 整形 byte short int long
  2. 浮点型 float double
  3. 字符型 char
  4. 布尔型 boolean 默认值 false

进制转换

进制 二进制 八进制 十六进制
int i = 10 int i = 0b10 int i = 010 int i = 0x10
用十进制表示 2 6 16

短路运算

![短路运算]

当执行到c< 4时为false ,后面的就不再执行

字符串连接符


扩展

  1. boolean
boolean flag = true;
if(flag==true){}		//新手写法
if(flag){}				//老手写法,和上一个写法一样
//注意:
if(flag = false){}		 //这里括号里的内容表示给flag赋值为false
  1. 类型转换

    由低到高:byte➡short➡int➡long➡float➡double

    由低到高的类型转换会自动转换

    由高到低的类型转换要使用强制转换

    int i = 128;		//输出后显式128
    byte b = i;			//因为内存溢出,byte的范围是-128~127
    byte b = (byte)i;	//强制转换后 输出后显示-128 
    //自动转换
    int i = 128;
    double d = i;		//从低到高,自动转换
    

    高容量转为低容量需要强转,而且可能会出现丢失精度的问题

    1. char
    char c ='a';	//ASCII表中a=97
    int i = c + 1;	//这里会将char类型的c自动转换为int类型再进行运算,结果是98
    System.out.println((char)i);	//这里的输出结果是d,因为把i强制转换为了char,在对应ASCII表,输出的结果就是d 
    
    1. JDK7的新特性(数字之间可以用 _ 隔开)方便阅读
    int money = 10_0000_0000;	//这里就和1000000000是一样的效果,只是加上分隔符号更方便阅读。
    int years = 20;
    int total = money*years;	//这里得出的结果是-1474836489,溢出了无法用int来做接收可以换成long类型来接收。
    //但是这里不能直接写  long total = years*money, 因为两个int类型的乘积默认是int类型的,所以要再计算前将任意一个数据类型强转为long类型,如下
    long total = money*(long)years;	//这里得出的结果就是正确的200_0000_0000
    

变量

顾名思义就是可以变化的量。Java是一种强类型语言,所以每一个变量都必须声明其类型

定义格式:数据类型 变量名 = 值 ;//可以用逗号隔开声明多个变量,但是不建议这么做。

  1. 变量的作用域
  • 局部变量:存在于方法内,只能作用于方法的大括号内部,使用前必须声明
  • 类变量:有static修饰的变量,从属于类
  • 实例变量:没有static修饰,存在于类中方法外,从属于对象,创建对象,用对象来调用
  1. 常量(Constant)

    有final修饰的变量 :final 变量类型 变量名(一般大写,用下划线隔开) = 值;

    final double PI = 3.14;

  2. 命名规范

    ​ (驼峰命名)

    • 变量:首字母小写,后续单词首字母大写
    • 常量:全部大写,单词之间用下划线来隔开
    • 类名:首字母大写,驼峰命名规则
    • 方法名:首字母小写,后续单词首字母大写

三元运算符

![三元运算符]

逻辑运算符

![逻辑运算符]

左移右移

<<左移 >>右移

2*8=16怎么计算最快?

0000 0001 //1

0000 0010 //2 左移一位表示 *2

0000 0100 //4 左移一位

0000 1000 //8 左移一位

0001 0000 //16 左移一位

可以将2*8看成2 * 2 * 2 * 2 * 2,意思就是将这个1向左移动四位

字符串连接符 +

int a = 10;
int b = 20;
sout(" " + a + b);	//输出结果是1020
sout(a + b + " ");	//输出结果是30

​ 注意如果在一个运算中有字符串的连接,那么运算的部分最好加上个括号。

https://www.bilibili.com/video/BV12J41137hu?p=36

posted @ 2020-11-05 16:09  luo小布  阅读(40)  评论(0)    收藏  举报