Java基础02—变量、运算符和数据类型转换
2021-01-20 17:13
标签:优先级 程序开发 区分大小写 char 指定 head _id 排列 strong 参考资料:《Java从入门到精通》/明日科技编著. 4版. 北京:清华大学出版社,2016 注意:Java语言中的标识符严格区分大小写,如Good和good是不同的标识符。 变量的命名不是随意的,应该遵循如下准则: 在声明一个常量时,除了要指定数据类型外,还需要final关键词进行限定。 由于变量被定义出来后只是暂存于内存中,等程序执行到某一个点,该变量会被释放掉,也就是说变量有它的生命周期。因此,变量的有效范围是指程序代码能够访问的区域,若超出该区域,则在编译时就会出错。在程序中,一般根据变量的有效范围,将变量分为“成员变量”和“局部变量”。 运算符是一些特殊的符号,主要用于数学函数、一些类型的赋值运算和逻辑比较等方面。 赋值运算符以等号“=”表示,是程序开发中最常见的操作,它是一个二元运算符(对两个操作数作处理),其功能是将右方的数值赋予个左方。例如: 赋值运算会先取得右方表达式处理的结果,因此,一个表示式中若含有两个及以上的“=”运算符,会从最右的“=”开始处理。 比较运算符总有6个,如下所示: 逻辑与符号“&&”与“&”之间的区别: 整型数据在内存中以二进制的形式表示,如int型变量7的二进制表示为00000000 00000000 00000000 00000111(32位)。左边最高位是符号位,0表示正数,1表示负数。在内存中,负数采用补码的形式表示,如-8的二进制表示为11111111 11111111 11111111 11111000(32位)。 移位符有三种: 注意:移位操作符适合的数据类型有byte、int、short、long和char。 技巧:移位操作可以实现整数乘以2或除以2的效果,向左移一位就是乘以2,左移两位就是乘以4。 运算符的优先级决定了表达式中运算执行的先后顺序,通常优先级由高到底的顺序依次是: 类型转换是将一个值从一种类型变更为另一种类型的过程。 隐式类型转换是指从低级类型到高级类型的转换,系统将自动进行,程序员无须进行任何操作。 注意:Java中涉及到Byte,char和short类型的运算时,都会把这些类型提升为int类型,然后对int类型数值进行运算,最后得到int类型的结果。因此。两个byte型的运算最终得到int型。 当把高精度的变量的值赋给低精度的变量时,必须使用显示类型转换运算,又称强制类型转换。 说明:当把一个整数赋值给byte、short、int、long型变量时,不可以超过这些变量的取值范围,否则必须进行强制类型转换。 在代码中适当地添加注释可以提高程序的可读性和可维护性,好的编码规范可以时程序更加容易理解。 Java语言提供了三种添加注释的方法,分别是单行注释、多行注释和文档注释。 “//”为单行注释的符号,从“//”开始到换行为止的所有内容均作为注释信息。 “/**/”为多行注释的符号,符号“/*”和“*/”之间的所有内容均为注释信息,注释信息可以换行。 “/** */”为文档注释的符号,符号“/**”与“*/”之间的内为文档注释内容。当文档注释出现在声明之前时,如类的声明、成员变量的声明、成员方法的声明等,会被javadoc文档工具读取作为javadoc文档的内容。 Java基础02—变量、运算符和数据类型转换 标签:优先级 程序开发 区分大小写 char 指定 head _id 排列 strong 原文地址:https://www.cnblogs.com/xuliang-daydayup/p/12900864.html
一、变量与常量
1、标识符与关键字
(1)标识符
//合法的标识符
name
user_id
$age
//非法的标识符
5userid
class
user name
(2)关键字
2、声明变量
int age; //定义变量,但不赋予初始值
char c1 = ‘a‘;
3、声明常量
final double PI = 3.1415926D; //声明常量
final boolean results = true;
public class Part {
static final double PI = 3.14D; //必须定义初始值
static int age ;
public static void main(String[] args) {
final int number;
number = 12345;
age = 12;
//number = 2345; //错误代码,常量只能被赋予一次
System.out.println(PI);
System.out.println(number);
System.out.println(age);
}
}
3、 变量的有效范围
(1)成员变量
class var{
int x = 45; //实例变量
static int y = 34; //静态变量
}
(2)局部变量
public class Val {
static int times = 3; //成员变量
public static void main(String[] args) {
int times =123; //局部变量
System.out.println(times); //输出123
}
}
二、运算符
1、赋值运算符
int a = 10; //赋值操作
int a = b = c =15;
2、算数运算符
public class Arith {
public static void main(String[] args) {
int num1 = 12;
float num2 = 2.4f;
double num3 = 2.4;
System.out.println(num1 + num2); //加
System.out.println(num1 - num2); //减
System.out.println(num1 * num2); //乘
System.out.println(num1 / num2); //除
}
}
3、自增和自减运算符
int a = 5;
b = ++a //先将变量a的值加1,然后赋予b,此时a=6,b=6
b = a++ //先将变量a的值赋给b,然后a的值加1,此时a=6,b=5
4、比较运算符
运算符
作用
>
是否大于
是否小于
==
是否等于
>=
是否大于等于
是否小于等于
!=
是否不等于
public class Compare {
public static void main(String[] args) {
int num1 = 4;
int num2 = 5;
System.out.println(num1 > num2); //输出false
System.out.println(num1
5、逻辑运算符
运算符
含义
用法
结合方向
&&、&
逻辑与
a && b
从左到右
||
逻辑或
a || b
从左到右
!
逻辑非
!a
从右到左
表达式1 & 表达式2 //会判断两个表达式的boolean值
表达式1 && 表达式2 //当表达式1的boolean值为false,则直接输出结果
public class Calculation {
public static void main(String[] args) {
int a = 2;
int b = 5;
boolean result1 = (a > b) && (a != b);
boolean result2 = (a > b) || (a != b);
System.out.println(result1); //输出为false
System.out.println(result2); //输出为true
}
}
6、位运算
(1)按位与运算
int result3 = 5 & -4;
System.out.println(result3); //输出为4
(2)按位或运算
int result4 = 3 | 6;
System.out.println(result4); //输出为7
(3)按位取反运算
int result5 = ~7;
System.out.println(result5); //输出为-8
(4)按位异或运算
int result6 = 10 ^ 3;
System.out.println(result6); //输出为9
(5)移位操作
int x, y;
int n = 2;
x = n
(6)三元运算符
boolean b1 = 4
(7)运算优先级
二、数据类型转换
1、隐式类型转换
int x = 50;
float y = x; //int型隐式转换为float型
System.out.println(y); //输出为50.0
public class Conver {
public static void main(String[] args) {
byte mybyte = 12;
int myint = 150;
float myfloat = 234.34f;
char mychar = 33;
double mydouble = 21.2331234;
System.out.println(mybyte + myfloat); //转换为float型
System.out.println(mybyte + myint); //转换为int型
System.out.println(mybyte + mychar); //转换为int型
System.out.println(mybyte + mydouble); //转换为double型
}
}
2、显示类型转换
int a = (int)43.23;
System.out.println(a); //输出为43
long b = (long)424.2313F;
System.out.println(b); //输出为424
int c = (int)‘c‘;
System.out.println(c); //输出为99
byte b = (byte)129;
System.out.println(b); //输出为-127
三、代码注释与编码规范
1、代码注释
(1)单行注释
int age =12; //定义一个age变量
(2)多行注释
/*
注释信息1
注释信息2
注释信息3
*/
(3)文档注释
下一篇:Spring事务传播机制详解
文章标题:Java基础02—变量、运算符和数据类型转换
文章链接:http://soscw.com/index.php/essay/44629.html