变量、常量、作用域
变量
变量是什么:就是可以变化的量!
Java是一种强类型语言,每个变量都必须声明其类型
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
注意事项:
每个变量都有类型,类型可以是基本类型,也可以是引用类型(String)
变量名必须是合法的标识符
变量声明是一条完整的语句,因此每一个声明都必须以分号结束
//int a,b,c;
//int a = 1,b = 2, c= 3;//尽量每一行定义一个变量,程序可读性
String name = "dahaiya";
char x = 'X';
double pi = 3.14;
变量作用域
类变量
实例变量
局部变量
public class Demo06 {
//类变量 static
static double salary = 2500;
//实例变量:从属于对象;如果不自行初始化,这个类型的默认值 0 0.0
//布尔值:默认false
//除了基本类型,其余都是null
String name;
int age;//不用初始化
//属性:变量
//main方法
public static void main(String[] args) {
//局部变量;使用之前必须声明和初始化值
//int i;
//System.out.println(i);//没有初始化,输出不了
int i = 10;
System.out.println(i);
//变量类型 变量名字=demo06
Demo06 demo06 = new Demo06();
System.out.println(demo06.age);
System.out.println(demo06.name);
//类变量 static
System.out.println(salary);
}
//其他方法
public void add(){
}
}
常量 final
初始化后不能在改变值,不会变动的值
可以理解为一个特殊的变量
final 常量名=值;
final double PI=3.14;
public class Demo07 {
//修饰符不存在先后顺序final
static final double PI = 3.14;
//final static double PI = 3.14;
public static void main(String[] args) {
System.out.println(PI);
}
}
变量的命名规范
1.所有的变量、方法、类名:见名知意
2.类成员变量:首字母小写和驼峰原则:monthSalary、onlyYou…
3.局部变量:首字母小写和驼峰原则
4.常量:大写字母和下划线MAX_VALUE
5.类名:首字母大写和驼峰原则GodMan
6.方法名:首字母小写和驼峰原则。run()
基本运算符
运算符
Java 语言支持的如下运算符:
算术运算符:+,-,*,/,%(取余),++,–
赋值运算符:=
关系运算符:>,<,>=,<=,==,!=instanceof
逻辑运算符:&&(与),||(或), !(非)
位运算符:&,|,^,~,>>,<<,>>>
条件运算符:?:
扩展赋值运算符:+=,-=,*=,/=
示例代码如下:
//二元运算符
int a = 10;
int b = 20;
int c = 30;
int d = 40;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);//o.5 四舍五入
System.out.println(a/(double)b);
long a = 1234565432L;
int b = 233;
short c = 10;
byte d = 8;
System.out.println(a+b+c+d);//Long操作数有一个是long,都是long
System.out.println(b+c+d);//Int 没有long,都为int
System.out.println(c+d);//Int
System.out.println((double)c+d);//如果有一个是double,结果是double
//关系运算符:正确,错误 布尔值
//if
int a= 10;
int b= 20;
int c= 21;
//取余,模运算
System.out.println(c%a);//1 21/10 余数为1
System.out.println(a>b);//false
System.out.println(a<b);//true
System.out.println(a==b);//false
System.out.println(a!=b);//true
自增自减运算符
//++ -- 自增 自建
//一元运算符
int a = 3;
int b = a++;//执行完代码后,先给b赋值,在自增
//a = a + 1
System.out.println(a);//4
//a = a + 1
int c = ++a;//zhi执行代码前,先自增 ,再给c赋值
System.out.println(a);
System.out.println(b);
System.out.println(c);
//幂运算 2^3 2*2*2=8 很多运算 使用工具类操作
double pow = Math.pow(2,3);
System.out.println(pow);
位运算
/*
A = 0011 1100
B = 0000 1101
--------------------------
A&B = 0000 1100与
A|B = 0011 1101或
A^B = 0011 0001异或
~B = 1111 0010
2*8 = 16 2*2*2*2
位运算效率极高!
<<左移: *2
>>右移: /2
128 64 32 16 8421
0 0 0 0 0000
---------------------
0000 0000 0
0000 0001 1
0000 0010 2
0000 0011 2+1=3
0000 0101 4+1=5
0001 0000 16
*/
System.out.println(2<<3); //16
赋值运算符
//赋值运算符
int a = 10;
int b = 20;
a+=b;//a=a+b
a-=b;//a=a-b
System.out.println(a);
//字符串连接符 + ,String
System.out.println(a+b);//30
System.out.println(""+a+b);//1020
System.out.println(a+b+"");//30
条件运算符
//条件运算符
// x ? y : z
//如果x==true,则结果为y,负责结果为z
int score = 80;
String type = score < 60?"不及格":"及格";//必须掌握,精简代码
//if
System.out.println(type);
继续努力,持续更新 对了我的自学网址是 kuangstudy