暑期Java第二次课程-变量与运算符
标识符
- 以数字为开头不可行,只能以字母为开头
- Java中的字母包含了$_以及在任何语言中使用的字母,如Πθ等
- 但是不包含符号,比如说+=?,等等
- 是一个以字母为开头并由字母或数字组成的序列
数据类型
分类
整型
缺省为int
浮点型
缺省为double
字符型
注意,不可以直接使用char类型运算,需要类型转换
布尔型
变量
可以同时定义多个变量(C++亦同)
局部变量
在if语句中定义的变量也是属于if代码块的局部变量!!!(C++亦同)
必须要赋初始值,否则会报错。可以是一开始就初始化,也可以是先声明再赋值,(C++不会)
//局部变量,注意,是局部变量(变量b)
//需要赋初始值,否则对其操作会报错
//但是类变量则不用。类变量,即在类中,(与方法并行的地位),定义的变量(变量a),会被自动初始化
public class Hello {
static int a;
public static void main(String[] args) {
int b;
b += 1;
a += 1;
}
}
错误例子:
可以连等(C++也可)
常量的定义
运算符
类型高低表
需要注意的!!!!!
不同于C++的是,Java中对于上表逆着箭头来会直接报错,除非进行强制转换
所以上表需要额外注意!
//然而,并不保证所有顺着箭头来的都是不丢失精度的
如上面的例子,虽然int可以隐式转换为float类型(不报错),但是依然会丢失精度
public class Hello {
static float a;
public static void main(String[] args) {
a = (float)1.0;//可行
System.out.println(a);
a = 1.0;//直接报错
System.out.println(a);
}
}
不同的数据类型运算时候的规则
这里需要特别注意第二条规则(见下例)
第三条规则,指的是字面量整数赋值的情况
c = (short)a + b;//也是错的,加了和没加没什么区别
浮点数运算存在偏差
输入
补充
-
类的名字的首字母一定是大写的
-
基本数据类型
整型四个 浮点型两个 布尔型一个 字符型一个
原因:s+1被隐式转换为int,s被int赋值,错误
1+2+“aa"+3 这就会形成一个字符串,(数字等等任何东西,都可以被拼接,被转换成为字符串)
-
记住这个例子