目录
根据分类:
Java保留字:现有Java版本尚未使用,以后可能会作为关键字使用。命名【标识符】时要避免使用这些保留字goto、const
Java对各种变量,方法和类等要素命名时使用的字符串序列称为标识符
技巧:凡是自己可以 起名字的地方都叫标识符
由26个英文字母大小写,0-9,_或$组成
数字不能包含空格
不可以使用关键字和保留字,但能包含关键字个保留字
Java中严格区分大小写,长度无限制
包名:多单词组成时所有字母都小写:xxxxyyyy
类名:接口名:多单词组成时,所有单词首字母读大写 : XxxYyy
变量名:方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写:xxxYyyZzz
常量名:所有字母都大写,多单词时每个单词用下划线连接:XXX_YYY_AAA
注意点:
注意1:在起名字时,为了提高阅读性,要尽量有意义
注意2:Java采用Unicode字符集,因此标识符也可以使用汉字声明,但是不建议使用
变量的概念:
变量的作用:
使用变量的注意:
声明变量:
语法:数据类型 变量名称
int var;
变量的赋值:
var =10;
声明和赋值变量
语法:数据类型 变量名 =初始值
int var =10;
补充:变量的分类 按声明的位置的不同
在方法体外,类体内声明的变量称为成员变量
在方法体内,声明的变量称为局部变量
所有变量:成员变量、局部变量
成员变量和局部变量的区别:
成员变量:实例变量(不以static修饰);类变量(以static修饰)
局部变量:形参(方法、构造器中定义的变量);方法局部变量(在方法内定*义);代码块局部变量(在代码块内定义)
注意:二者在初始值方面的异同
异:局部变量除形参外,都需要显式初始化
同: 都有生命周期
对于每一种数据都定义了明确的具体数据类型(强类型语言),在内存中分配了不同大小的内存空间。
数据类型包括:基本数据类型和引用数据类型
bit 计算机中的最小存储单位,byte计算机中基本存储单位
下面一个小练习:
- class VariableTest1 {
- public static void main(String[] args) {
- //整型:byte(1字节=8bit) short(2字节) int(4字节) long(8字节)
- //byte 范围: -128~127
-
- byte b1 = 12;
- byte b2 = -128;
- //b2=128 编译不通过
- System.out.println(b1);
- System.out.println(b2);
- // ② 声明long型变量,必须以“1”或“L”结尾
- short s1 = 128;
- int i1 = 12345;
- long l1 = 345678586;
- System.out.println(l1);
- }
- }
与整数类型类似,Java浮点类型也有固定的表数范围和字段长度,不受具体的操作系统影响。
浮点型常量有两种表示形式:
float :单精度,尾数可以精确到7有效数字。很多情况下,精度很难满足需求。
double :双精度,精度是float 的两倍。通常采用此类型。
Java的浮点型常量默认为double 型,声明float 型常量,须后加“ f ”或“ F ”
例如:
char c1 = ‘a’; char c2 = ‘中’; char c3 = ‘9’;
例如:
char c3 = ‘\n’;
‘\n’ 表示换行符
小练习:编程就需要多动手,看会了理解了还需要多多动手
- class VariableTest1 {
- public static void main(String[] args) {
-
- double d1 = 12.3;
- System.out.println(d1 + 1);
-
- //定义float类型变量时,变量要以"f" 或"F"结尾
- float f1 = 12.3f;
- System.out.println(f1);
-
- //② 通常,定义浮点型变量时,使用double变量
- //3. 字符型:char(1字符=2字节)
- //① 定义char型变量,通常使用一对''
- char c1='a';
- System.out.println(c1);
-
- char c2 = '1';
- char c3 = '中';
- char c4 = '&';
- System.out.println(c2);
- System.out.println(c3);
- System.out.println(c4);
-
- //② 表示方式:1.声明一个字符;2.转义字符;3.直接使用Unicode值来表示字符型常量
- char c5='\n';//换行符
- c5='\t';//制表符
- System.out.println("hello"+c5);
- System.out.println("world");
-
- char c6= '\u0123';
- System.out.println(c6);
- char c7 = '\u0043';
- System.out.println(c7);
- }
- }
Boolean 类型用来判断逻辑条件,一般用于程序流程控制:
boolean类型数据只允许取值true 和 false ,这点和C语言 不同。
Java虚拟机中没有任何供Boolean值专用的字节码指令,Java语言表达所操作的Boolean 值,在编译之后都使用Java虚拟机中的int 类型数据类型代替:true 用1 表示,false 用0表示。
代码示例:
- class VariableTest2 {
- public static void main(String[] args) {
- //4. 布尔型:boolean
- //① 只能取两个值之一:true . false
- //② 常常在条件判断. 循环结构中使用
- boolean bb1 = true;
- System.out.println(bb1);
-
- boolean isMarried=false;
- if(isMarried){
- System.out.println("禁止入内!");
- }else {
- System.out.println("可以参观!");
- }
- }
- }
自动类型转换:容量小的类型自动转换为容量大的数据类型,数据类型按容量大小排序为:
代码示例:
- class VariableTest3{
- public static void main(String[] args) {
- byte b1=2;
- int i1=129;
-
- int i2=b1+i1;
- long l3=b1+i1;
- System.out.println(i2);
- System.out.println(l3);
-
- float f = b1 + i1;
- System.out.println(f);
- //***************特别的**************************
- char c1 = 'a'; //字符’a‘对应的数字是97
- int i3=10;
- int i4 = c1 + i3;
- System.out.println(i4);
- }
- }
String不是基本数据类型,属于引用数据类型
使用方式与基本数据类型一致。例如:String str= “abcd”;
一个字符串可以串接另一个字符串,也可以直接串接其它类型的数据。
代码示例:
String类型变量的使用 1. String属于引用数据类型 2. 声明String类型变量时,使用一对"" 3. String可以和8种基本数据类型变量做运算,且运算只能是连接运算;+ 4. 运算的结果依然是String类型
class StringTest{ public static void main(String[] args) { String s1="hello"; System.out.println(s1); String s2 = "a"; String s3 = ""; // char c = ''; //编译不通过 //******************************* int number = 1001; String numberStr = "学号:"; String info = numberStr + number; //连接运算 boolean b1 = true; String info1 = info + true; System.out.println(info1); } }
练习:
- String str1 = 4; //判断对错:no
- String str2 = 3.5f + “”; //判断str2对错:yes
- System.out.println(str2); //输出:”3.5”
- System.out.println(3+4+“Hello!”); //输出:7Hello!
- System.out.println(“Hello!”+3+4); //输出:Hello!34
- System.out.println(‘a’+1+“Hello!”); //输出:98Hello!
- System.out.println(“Hello”+‘a’+1); //输出:Helloa1
如:
String a = “43”; inti= Integer.parseInt(a);
练习:判断是否能通过编译
- short s = 5;
- s = s-2; //判断:no
- byte b = 3;
- b = b + 4;//判断:no
- b = (byte)(b+4);//判断:yes
- char c = ‘a’;
- int i = 5;
- float d = .314F;
- double result = c+i+d; //判断:yes
- byte b = 5;
- short s = 3;
- short t = s + b;//判断:no