Java基础语法--变量
变量
变量:就是可以变化的量;通过变量可以操纵内存中的数据;
怎么理解?
比如数学方程中1+x=3中的x为未知数,但占用了计算式中的一个项。先假设不知道x为多少。
换到java语言中,变量就是先占用一个内存空间,这个空间不确定存储什么数据,但是先把这个空间留出来;然后指定数据类型 变量名 值后就完成了变量的定义。
例子

int years = 20; //完整的一个变量
- java是一种强类型的语言,每个变量都必须声明其类型 如int,long;
- java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域;
注意
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
- 变量名必须是合法的标识符。
- 变量声明是一条完整的语句,因此每个声明都必须以分号结束;
变量作用域
-
类变量
-
实例变量
实例变量是从属于对象,在方法外面,类中使用。 -
局部变量
局部变量必须声明和初始化值,只在方法的括号内使用。
案例
public class Demo05 {
//类变量 static
static double salary = 2500;
String name;//实例变量
int age;//实例变量
public static void main(String[] args) {//main方法
int i = 10;//局部变量
System.out.println(i);
Demo05 demo05 = new Demo05();
System.out.println(demo05.age);
System.out.println(demo05.name);
//类变量使用
System.out.println(salary);
}
//--------------------------------
public void add(){
}
}
解释1
局部变量只能在方法的括号中使用
public class Demo05 {
//类变量 static
String name;//实例变量
int age;//实例变量
//main方法
public static void main(String[] args) {//局部变量开始使用
int i = 10;//局部变量
System.out.println(i);
//变量类型 变量名字 = new Demo05();
Demo05 demo05 = new Demo05();//实例变量的使用方法new Demo05();会自动返回=号前面的对象。
System.out.println(demo05.age);
System.out.println(demo05.name);
}//局部变量结束使用
//--------------------------------
public void add(){
System.out.println(i);
}
}

- 此时类add 报错
实例变量的使用方法见注释
输出结果

解释
- 实例变量如果不自行初始化,这个类型的默认值为0,0.0;
- 布尔值:默认是false;
- 除了基本类型,其余的默认值都是null;
常量
-
常量(Constant);初始化(initialize)后不能再改变的值!不会变动的值。
-
所谓常量可以理解成一种特殊的变量,它的值被设定后,再程序运行过程中不容许被改变。
![image]()
-
常量名一般使用大写字符
案例
public class Demo06 {
//static,final,println为修饰符,不存在先后顺序
static final double PI = 3.13; //常量的值用大写字母标识
public static void main(String[] args) {
System.out.println(PI);
}
}
-现实中使用案例,我的世界游戏开发中一个物理的长宽高是固定的。这个固定的量就是常量;
变量的命名规范
- 所有变量、方法、类名;见名知意
- 类成员变量:首字母小写和驼峰原则:monthSalary
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man,GoodMan
- 方法名:首字母小写和驼峰原则:run(),runRun()
运算符
java语言支持如下运算符

(模)%:取余,21/10余1,结果就为1
==:等于
!=:不等于
instanceof:
&&:and,和;
||:or,或者;
!:非;
package oper;
public class Demo01 {
public static void main(String[] args) {
//二元运算符
int a = 10;
int b = 20;
int c = 25;
int d = 25;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/(double)b);//结果为小数,所以如果不转换为浮点字符,结果不准确
System.out.println("===================================================");
long e = 123123123123123L;
int f = 123;
short g = 10;
byte h = 9;
double j = 22;
System.out.println(e+f+g+h);//结果为long,原因:一个变量定义为了long,结果就是long
System.out.println(f+g+h);//结果int,只要没有long,结果都为int
System.out.println(g+h);//结果int,只要没有long,结果都为int
System.out.println((double) g+h);//结果为double,,除非强制转换
System.out.println(g+j);//结果为double,只要有一个变量定义为了double,结果就是double
System.out.println(j+e);//遵循浮点数优先级最高
System.out.println("-------------------------------------------------");
//关系运算
System.out.println(a>b);
System.out.println(a<b);
System.out.println(a==b);
System.out.println(a!=b);
System.out.println("--------------------------------------------------");
//取模,模运算
System.out.println(c%a);
System.out.println("--------------------------------------------------");
}
}
++ --:自增,自减
这里可以参考博客园乘风起大哥的解释https://www.cnblogs.com/fwnboke/p/8525369.html
说的很详细
幂运算
2^3 = 222
package oper;
public class Demo02 {
public static void main(String[] args) {
double pow = Math.pow(2,3);/Math 数学运算
System.out.println(pow);
}
}


浙公网安备 33010602011771号