day02-变量和运算符

变量和运算符

变量的定义和使用

定义:

​ 没有固定的值

​ 可以重复使用

变量使用的语法:

方法一:先定义,后赋值
数据类型 变量名称;
变量名称 = 值;
方法二:定义的同时赋值
数据类型 变量名称 = 常量;
变量在同一作用域中不能重复定义
class VarDemo{
	public static void main(String[] args){
		int age;
		age = 17;
		System.out.println(age);
		
		int age2 = 10;	
		System.out.println(age2);
	}
}

特点:

  • ​ 占据内存一块存储区域

  • ​ 该区域有自己的名字(变量名)和类型(数据类型)

  • ​ 可以重复使用

定义变量常见错误:

  • 错误1: 可能尚未初始化变量age

不能未赋值直接使用

  • 错误2: 已在方法 main(String[])中定义了变量 age

不能重复定义相同的名字

基础数据类型的转换

转换规则:byte->short->char->int->long->float->double

转换分两种:

  • 自动类型转换:小->大(语法:范围大的数据类型 变量 = 范围小的数据类型值)
  • 强制类型转换:大->小(语法:范围小的数据类型 变量 = (范围小的数据类型)范围大的数据类型值)

注:boolean不能转换

class TypeConvertDemo{
	public static void main(String[] args){
		//自动转换
		int i = 127;
		long l = i;

		//强制转换
		byte b = (byte)i;

	}
}

为什么使用变量

使用变量来存储常量值,达到重复使用(修改值 获取值)的目的

自动类型提升

byte,short,char进行运算的时候会 自动转向int类型进行计算

在表达式中会自动转向 表达式最大的数据类型

算数运算符

运算符运算规则范例结果
+1+12
-1-10
*1*11
/除(取商)1/11
+正号+33
-负号-3-3
+连接字符串“中”+“国”“中国”
%取余5%21
++自增int a = 1;a++/++a2
自减int a = 1;a–/--a0

前置++:先加后使用

后置++:先使用后加

前置–:先减后使用

后置–:先使用后减

赋值运算符

运算符运算规则范例结果
=赋值int a = 22
+=加后赋值int a = 2,a+=24
-=减后赋值int a = 2,a-=20
*=乘后赋值int a = 2,a*=24
/=整除后赋值int a = 2,a/=21
%=取余后赋值int a = 2,a%=20

注:(除"="外所有赋值运算符有一个类型转换问题)

short s = 5;
//s+=2 等价于 s=(short)(s+2)
s+=2;
s=(short)(s+2);
Sysout.out.println(s);

比较运算符

运算符运算规则规范结果
==相等于4==3false
!=不等于4!=3true
<小于4<3false
>大于4>3true
<=小于等于4<=3false
>=大于等于4>=3true

三元运算符

语法:数据类型 变量 = 表达式 ? 结果1 : 结果2;

表达式为true,返回结果1

表达式为false,返回结果2

三元运算符等同于

public 数据类型 方法(boolean b){
    if(b) return 返回结果1;
    else return 返回结果2;
}

逻辑运算符

语法:boolean result = 表达式1 逻辑运算符 表达式2;

运算符运算规则范例结果
&false&truefalse
false|false|truetrue
^异或true^falsetrue
!!truefalse
&&短路与false&&truefalse
||短路或false||truetrue

&&与&的区别

&:先判断第一个boolean表达式,在判断第二个boolean表达式,然后判断最终结果

&:如果表达式有一个为false,整个结果为false

&:此时如果第一个表达式为false,还是会判断第二个表达式结果(判断多余)

&&:如果第一个表达式为false,第二个表达式不执行

||:如果第一个表达式为true,第二个表达式不执行

优先级

优先级最高的是()

名词解释

常量:程序中固定不变的量称为常量

变量:程序中会改变的量称为变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值