1.标识符命名规则:
1. 变量名由字母、数字、下划线、$组成(现在有汉字命名但是不建议)
2. 不能使用数字作为开头、不建议、$开头
3. 采用小驼峰命名法
4. 尽量做到见命知意
5. 区分大小写
6. 不能用关键词做变量名
2.变量:
从本质上看,变量代表了一段可操作的内存,也可以认为变量是内存的符号化表示。
当程序中需要使用内存时,可以定义某种类型的变量。
此时编译器根据变量的数据类型分配一定大小的内存空间。
程序就可以通过变量名来访问对应的内存了
概念:
1 变量代表一个有名字的、具有特定属性的一个存储单元;
2 变量用来存放数据,也就是存放变量的值;
3 变量的值可以改变;
4 变量有特定的类型,类型决定了存储单元的大小和变量值的范围,运算符可应用于变量上。
3.变量的类型:
byte(1字节):字节
int(4字节):整形
short(2字节):短整型
long(8字节):长整形 //整数类型默认为int用l或者L来标识long类型如:long i=400L;
float(4字节):单精度浮点数 //整数类型默认为double用f或者F来标识float类型如:float i=12.5F;
double(8字节):双精度浮点数
char(1字节):字符
boolean(true,false):布尔
4.变量的使用:
1)申请空间/定义变量(同一个变量名在同一个作用域只能申请一次)
如:int a;
2)赋值(
注:
1. 该行为可以重复多次操作
2. 1和2是可以合并的即int a=100;
3. 赋的值要小于变量的范围即byte型范围是-128~127如果超出就报错
)
如:a=100;
3)使用变量(直接调用变量名)
如:System.out.println(a);
5.字符串:
String 用双引号将内容包起来,字符长度不限
6.常量:
关键词:final 使用形式: final int I =300;
这样的操作使I的值固定为300不能更改。
注:常量命名时,变量名全大写,如果多单词用下划线分隔如:final String STUDENT_NAME="张三";
只能赋值一次,声明与定义可以分离但是不建议。
7.输入:
关键词:Scanner 使用形式:import java.util.Scanner;
//in是变量名可以改变其它是模板不能改变
Scanner in=new Scanner(System.in);
//如果是整形方法就是nextInt()运行就可以输入数据
类型 变量名=in.方法();
注:输入的类型要与方法匹配如果不匹配就报错。
8.自动类型转换:
自动将小范围的类型赋值给大范围的 如:short 赋值给 int
但是反过来就不可以,除非强制类型转换 如:byte a=(byte)b; 但是这样的操作会丢失精度,谨慎使用。
9.运算符
1. 赋值运算符 = //将后面的变量存储的数据赋值给前面的变量
使用形式: 变量 = 变量
2. 基本运算符 + - * / (除法)% (求余)++(自增) -- (自减)
3. 逻辑运算符 &&(逻辑与 即两边表示式同时为真,则为真,否则为假)
||(逻辑或 即两边表示式同时为假,则为假,否则为真)
4. 按位运算符 (运算的都是用二进制的形式)
&(按位与) 如果相对应位都是1,则结果为1,否则为0
|(按位或) 如果相对应位都是 0,则结果为 0,否则为 1
^(按位异或) 如果相对应位值相同,则结果为0,否则为1
~ 按位取反运算符翻转操作数的每一位,即0变成1,1变成0。
<< 按位左移运算符。左操作数按位左移右操作数指定的位数。
>> 按位右移运算符。左操作数按位右移右操作数指定的位数。
>>> 按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。
5.关系运算符:
== 检查如果两个操作数的值是否相等,如果相等则条件为真。
!= 检查如果两个操作数的值是否相等,如果值不相等则条件为真。
> 检查左操作数的值是否大于右操作数的值,如果是那么条件为真。
< 检查左操作数的值是否小于右操作数的值,如果是那么条件为真。
>= 检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。
<= 检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。
6.条件运算符:
如: 表达式1?表达式2:表达式3; 意思是如果表达式1为真,执行表达式2,为假,执行表达式3