一、变量
1、变量的定义
变量要先定义后使用;只能声明一次,可以赋值多次;定义3要素(数据类型、变量名、初始化值),缺一不可。
- 方式一:数据类型 变量名=初始化值
int x=2; x=5;//只要声明过,就可以再次赋值
- 方式二:分开写(先声明,再赋值)
int x=2; x=5;//只要声明过,就可以再次赋值
2、变量的作用域
变量的作用域在一对离他最近的大括号,并且在声明之后有效;只有在变量的作用域里才可以访问变量,并且不能再次定义相同变量。
3、标识符
凡是可以自己起名字的地方都叫标识符,如:类名、方法名、变量名、接口名等
- 命名规则(一定要遵守,不遵守就会报错)
由26个英文字母大小写,0-9,_或$组成
数字不可以开头
Java中严格区分大小写
标识符不能包含空格
不可以使用关键字和保留字,但能包含关键字和保留字
- 命名规范(可以不遵守,也不会报错)
标识符一般采用驼峰命名法
类名:多单词组成时,所有单词的首字母大写:XxxYyyZzz
变量名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
包名:域名反写+项目名称(所有字母都小写)
4、变量的类型
- 基本数据类型(8种):byte、short、int、long、float、double、char、boolean
public class Test { public static void main(String[] args ) { //整数型:byte(1字节)、short(2字节)、int(4字节)、long(8字节) byte b = 6; short s = 6; int i = 6; long l = 6L;//long类型变量,值末尾要加L或l //上述整数的区别是存储时所占的位数不同,一般使用int类型表示整数 //浮点型(带小数):float(4字节)、double(8字节) float f = 12.4F; double d = 12.3; //一般使用double类型表示小数 //字符型:char(2字节):用''单引号括起来的单个字符 char c = 'a'; //c = '中'; //布尔类型boolean:true或false boolean bo = false; bo = true; } }
- 引用数据类型(除了8种基本数据类型,其他遇到的类型都是引用数据类型)
public class Test{ public static void main(String[] args ) { //字符串String,用双引号""括起来的0到多个字符 String str = "dbvjfvbdvs"; str = "";//空字符串 str = null;//对于所有引用数据类型,没有值的时候,可以赋值null //转义字符:需要使用\,把原本字符转义成其他意思 System.out.println("hellojava"); System.out.println("hello\njava");//\n换行(Enter键) System.out.println("hello\tjava");//\t制表符(Tab键) System.out.println("hello\"java");//\"输出双引号 } }
4、类型转换
除了boolean类型,还剩7种基本数据类型,容量从小到大:
-
public class Test6 { public static void main(String[] args ) { //强制类型转换:将容量大的转换为容量小的,可能会造成精度的丢失--溢出 long l = 5L; short s = (short)l; System.out.println(s); double d = 3.2; int i = (int)d; System.out.println(i);//3 //自动类型转换(隐式转换):容量小的数据类型自动转换为容量大的数据类型 //方式一:赋值运算 i = 2; float f = i; byte b = 1; i = b; char c = 'a'; i = c; System.out.println(i);//97 c = '中'; i = c; System.out.println(i);//20013 //方式二:算数运算 i = b + i; System.out.println(i); //补充:基本数据类型+字符串,结果都是字符串 int myInt = 12; String str = myInt + ""; //注意此字符串不一定是空字符串 System.out.println(str); System.out.println("1" + 1);//11 System.out.println("hello" + 1);//hello1 System.out.println(1 + "hello");//1hello } }
5、运算符
- 算数运算符
public class Test7 { public static void main(String[] args ) { //整数之间做除法,只保留整数部分,舍弃小数部分 int i = 13 / 5; System.out.println(i);//2 //取余% i = 13 % 5; System.out.println(i);//3 //++ i = 5; i++; System.out.println(i);//6 i = 5; ++i; System.out.println(i);//6 //i++与++i的区别:i在前面,先赋值;++在前面,先自家 i = 5; int k = i++; System.out.println(k + "," +i);//5,6 i = 5; k = ++i; System.out.println(k + "," +i);//6,6 //-- i = 6; i--; System.out.println(i);//5 i = 6; --i; System.out.println(i);//5 i = 6; k = i--; System.out.println(k + "," +i);//6,5 i = 6; k = --i; System.out.println(k + "," +i);//5,5 } }
- 赋值运算符