JavaSE_03_数据类型及运算符

《数据类型及运算符》

目录

  • Java基本元素(精通)
  • Java数据类型(熟练)
  • 运算符(熟练)

一、Java基本元素

标识符

释义:标识符是赋给类、方法或变量的名字。一个标识符可以是字母、数字、下划线、美元符号的任意顺序组合,但不能以一个数字开始。

  • 合法标识符

    ​ user1、$much、it_is_good、Alice

  • 非法标识符

    ​ 2a、good-luck、ab/cd

命名规范

  • 驼峰式命名:userName,userAge,userPhoneNumber
  • 项目名首字母大写
  • 包名全部小写
  • 类名首字母大写
  • 变量、方法名开头字母小写
  • 常量所有字母大写

字符集

java使用Unicode标准字符集,最多可以识别65536个字符,Unicode字符集的前128个字符是ASCII码表。

请添加图片描述

保留关键字(具有专门的意义和用途,不能当作一般的标识符使用)

释义:具有专门的意义和用途,不能当作一般的标识符使用,这些标识符称为保留关键字(reserved word)。

  • 关键字
abstract  break  byte  boolean  catch  case  class  char  const  continue  default  double  do  else  extends  false  final  float  for  finally  if  import  implements  int  interface  instanceof  long  native  new  null  package  private  protected  public  return  super  switch  synchronized  short  static  try  true  this  throw  throws  transient  void  while
  • 保留词(无含义但不能使用)
goto, const

二、Java数据类型

Java语言是强类型语言

  • 每个变量每个表达式都有类型
  • 参数传递都要进行类型相容性检查

分类

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

  • 复合数据类型(数组、类类型、接口类型、枚举类型等等)

八大基本数据类型

数据类型类型名称字节数取值范围
byte字节型1-27~27-1
short短整型2-215~215-1
int整型4-231~231-1
long长整型8-263~263-1
float浮点型(单精度)4-3.4E+38~3.4E+38
double小数型(双精度)8-1.7E-308~1.7E+308
boolean布尔型1true/false
char字符型20 ~65535

代码示例:

public class Main {
    public static void main(String[] args) {
        byte a = 1;
        short b = 12;
        int c = 123;
        long d = 1234;
        float e = 1.23f;
        double f = 3.14;
        boolean g = true;
        char h = '学';
    }
}

混合运算优先级(低——>高:byte, short, char > int > long > float > double)

  • 隐式转换(低——>高)
long i = 123;
float j = x;
  • 强制类型转换(高——>低)
long i = 123;
int k = (int) i;
  • 表达式类型转换(以最高精度为准)
byte+ short+ int= int;
int+ float+ double= double;

三、运算符

赋值运算符(=)

int x = 10;
int y = 3;
int z = x + y;

算数运算符(+,-,*,/,%,++,–)

  • 二元运算符(两个操作变量)
int x = 10;
int y = 3;
System.out.println("x+y=" + (x + y));   //x+y=13
System.out.println("x-y=" + (x - y));   //x-y=7
System.out.println("x*y=" + (x * y));   //x*y=30
System.out.println("x/y=" + (x / y));   //x/y=3
System.out.println("x%y=" + (x % y));   //x%y=1
  • 一元运算符(一个操作变量)
int x = 10;
int y = 3;
System.out.println("x=" + (x++));       //x=10
System.out.println("x=" + x);           //x=11
System.out.println("y=" + (++y));       //y=4
System.out.println("y=" + y);           //y=4

比较运算符(>,<,>=,<=,==,!=)

int x = 10;
int y = 3;
System.out.println(x > y);      //true
System.out.println(x < y);      //false
System.out.println(x >= y);     //true
System.out.println(x <= y);     //false
System.out.println(x == y);     //false
System.out.println(x != y);     //true

逻辑运算符(&,|,!,^,&&,||)

System.out.println(3 > 2 & 2 < 1);     //false
System.out.println(3 > 2 | 2 < 1);     //true
System.out.println(!(3 > 2));          //false
System.out.println(3 > 2 ^ 2 < 1);     //true
  • 短路与 &&:遇false停,不判断下一表达式;
  • 短路或 || :遇true停,不判断下一表达式。

复合赋值运算符(+=,-=,/=,%=)

运算符表达式计算结果(假设 X=10)
+=X += 5X = X + 515
-=X -= 5X = X - 55
*=X *= 5X = X * 550
/=X /= 5X = X / 52
%=X %= 5X = X % 50

注意:复合赋值运算为“右结合”,即从右往左依次计算。

int a1 = 10;
int a2 = 5;
int a3 = 2;
System.out.println(a1 += a2 -= a3 *= 3);	//9

位运算符(>>,<<)

System.out.println(10 >> 2);    //2
System.out.println(10 << 2);    //40

运算符优先级

算术运算符 > 比较运算符 > 逻辑运算符 > 赋值运算符。

总结

重点

  1. 合法标识符书写规则;
  2. ASCII码英文字母值范围;
  3. 运算符及结合顺序优先级。

难点

  1. 运算符及结合顺序优先级。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值