Java基本语法(下)
java基本语法(下)
8. 变量
- 变量是什么?就是可以变化的量;
- Java是一种强类型语言,每个变量都必须声明其类型;
- Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域;
声明变量的语法:数据类型 变量名 =值;可以使用逗号隔开来声明多个同类型变量。(不建议)
注意事项:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型;
- 变量名必须是合法的标识符;
- 变量声明是一条完整的语句,因此每一个声明都必须以分号结束;
int a=1;
int b=2;
int c=3;
String name="lzl";
char x = 'X';
double pi=3.14;
- 局部变量
- 实例变量
- 类变量
public class Demo3 {
//实例变量 从属于对象,不自行初始化,则输出类型的默认值 0 0.0
//布尔值:默认为false,除了基本类型,其他全是null
String name;
int age;
//类变量 static
static double salary=2500;
//主程序方法
public static void main(String[] args) {
//局部变量 必须声明和初始化值
int i=10;
System.out.println(i);
//变量类型 变量名字=new Demo3;
Demo3 demo3 = new Demo3();
System.out.println(demo3.age);
System.out.println(demo3.name);
System.out.println(salary);
}
//其他方法
public void add(){
//System.out.println(i);其他地方输出i无效
}
}
变量的命名规范
- 所有变量、方法、类名:见名知意
- 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母大写
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man,GoodMan
- 方法名:首字母小写和驼峰原则:run(),runRun()
9. 常量
常量:初始化后不能再改变值!不会变动的值;
所谓常量可以理解为一种特殊的变量,它的值被设定之后,在程序运行过程中不允许再改变;
常量名一般使用大写字符;
语法:final 常量名=常量值;
10. 运算符
Java语言支持如下运算符
- 算术运算符: +,-,*,/,%,++,--
- 赋值运算符: =
- 关系运算符: >,<,>=,<=,==,!=,instanceof
- 逻辑运算符: &&,||,!
- 位运算符: &,|,^,~,>>,<<,>>>(了解)
- 条件运算符: ? :
- 扩展赋值运算符: +=,-=,*=,/=
package operator;
public class Demo1 {
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);
long e=1322222222L;
int f=123;
short g=10;
byte h=8;
System.out.println(e+f+g+h);//long类型
System.out.println(f+g+h);//int类型
System.out.println(g+h);//int类型
//没有long时,未指定特殊情况,所有非int类型默认int类型
//关系运算符返回的结果:正确 错误 布尔值
int i=10;
int j=20;
int k=21;
System.out.println(i==j);//false
System.out.println(i<j);//true
System.out.println(i>j);//false
System.out.println(i!=j);//true
//取余,模运算
System.out.println(k%i);//取余数 21/10=2...1 结果为1
//++ -- 自增自减 一元运算符 ++a 先+1再输出 a++ 先输出再+1;--a与a--同理
int l=3;
int m=l++;
int n=++l;
System.out.println(l);
System.out.println(m);
System.out.println(n);
//幂运算 2^3=2*2*2=8 会使用工具类来操作
double pow=Math.pow(3,3);
System.out.println(pow);
//逻辑运算符 与或非
boolean o=true;
boolean p=false;
System.out.println(o&&p);//逻辑与运算,两个变量都为真,结果才为true
System.out.println(o||p);//逻辑或运算,两个变量有一个为真,则结果才为true
System.out.println(!(o&&p));//如果为真则为假,如果为假则为真
//短路运算
int q=5;
boolean r=(q<4)&&(q++<4);//前半句已经错误,若不执行q++,代表只需判断前半部分后面直接不进行判断
System.out.println(q);//5
System.out.println(r);//false
/*
位运算
S=0011 1100
T=0000 1101
S&T=0000 1100 同一为一,其余为零
S|T=0011 1101 同零为零,其余为一
S^T=0011 0001 异或 相同为零,不同为一
~T=1111 0010 取反,与原数相反
效率极高:<<代表*2,>>代表/2 内存向左向右位移一位,二进制的计算方式 2<<3 2*2*2*2 0010->1 0000
*/
//字符串连接符
int u = 10;
int v = 20;
u+=v;//u=u+v -= *= /=同理
System.out.println(u);
System.out.println(""+u+v);//字符串连接符 + 如果内部需要加法,可以括号连接
// 输出结果内有一个String类型,所有都转为String再进行连接
//注意:字符串在前面,后面进行拼接。在后面则前面进行运算,后面拼接
//三元运算符
//a?b:c a为真,结果输出b,a为假,结果输出c;
int score = 80;
String type = score<60?"不及格":"及格";
System.out.println(type);
}
}
浙公网安备 33010602011771号