Java入门基础(变量、操作符与表达式)
Java入门基础
1、 第一个程序
2、变量(命名、运算、整数/小数/字符串、布尔类型)
3、操作符与表达式(算术/逻辑/关系/赋值/自增/类型转换操作符)
HelloWorld!
public class HelloWorld { public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("Hello,World"); }
1、变量
定义:“可以变化的量”。
命名规则:数字、字母和下划线组成;不能以数字开头;大写字母与小写字母代表不同的变量名称。
变量组成要素:类型,名称,值
2、变量的表示方法:
类型有 整数(int)、小数(double)、字符串(String),注意此处的S是大写;布尔值(boolean)等~
//整数(int)、小数(double)、字符串(String) int a = 256; int b = -256;//可以表示为负数 //使用double表示小数 double c = 123.456; double d = -349; //相当于-349.0 //String表示字符串 String name = "旺哈哈"; String name1 = "康师傅";
3、变量的基本运算
- 加法:使用 +
-减法:使用 -
-乘法:使用 *
-除法:使用 /
-取模:使用%,求余
e.g.1
int b1 = 123; int b2 = b1 + 10; int b3 = (b1+b2)*999; System.out.println("b3等于:" + b3);
e.g.2
System.out.println("乘积:" + (123*456)); System.out.println("数值:" + 12); System.out.println("12的平方:" + (12*12)); System.out.println("12的立方:" + (12*12*12)); //求22的平方及立方 System.out.println("22的平方:" + (22*22)); System.out.println("22的平方:" + (22*22*22));
4、变量的赋值
定义:变量是可变的量,那么就是可以改变的,例如: int a = 0 ; int a = 10 ;使用 “ = ”,等号称为赋值操作符。先将a赋值为0,再赋值为10,最终a 的值是10.
5、布尔类型
boolean在Java语言中被称为布尔类型,表示“是”或“否”,注意:布尔的值只有这两种,其他写法都是错误的。true和false是值,不是字符串,用双引号括起来的才是字符串。
boolean a = true;
boolean b = false;
操作符与表达式
定义:操作符(Operator) ,也称为运算符,比如 + - * / 这些符号都是操作符;表达式(Expression) ,是一个由数值和操作符组成的式子。
1、int 型的算术运算
int型进行运算符运算后,结果还是int型。
需要解释下,除法与模运算
1)除法:取小数点之前的部分:
14/5 结果为 2
2)模运算,取余数 :
14%5 结果为4
2、浮点型的算术运算
浮点型的算术运算规则也是一样,还是重点看下除法与模运算。
1)浮点型的除法运算,结果保留小数部分
14.0/5.0 结果是2.8
2)浮点型的取模运算,结果为余数
14.0/5.0 结果是4.0
3、类型提升
当整型int 与浮点型double进行运算时,将int型视为double型,这样称为类型的提升。因为double型是可以兼容整型来表示的,为了防止数据丢失。
例:14/5.0 = 2.8
int a = 5; double b = 14.0; System.out.println("结果为:" + (b/a)); System.out.println("结果为:" + (b%a));
4、混合运算与优先级
原则:先乘除 后 加减
例:5*9 +9/8 -9*8 ---> (5*9) + (9/8) - (9*8)
5、关系操作符
6、逻辑操作符
- 逻辑与:只有两个都成立才成立(为true),只要有一个不成立就是false。
- 逻辑或:两个中只要有一个成立就为true;false || true 结果为true。
- 逻辑非:表示“否”的意思。!true = false,!false = true
7、区分初始值与赋值
int a = 2 //初始值 int b = 9 //初始值 a = 100+b //重新赋值
8、组合赋值操作符
组合赋值操作: a+=b;相当于 a = a + b a-=b; a/=b; a*=b; a%=b;
9、自增/自减操作符(前置自增与后置自增)
//自增操作符 ++ 表示;a++ 理解为a = a+1 //自减操作符 -- 表示;b--理解为b = b - 1 //前置自增与后置自增 /*后置自增 * int b = 10; * a = b++ * * 注意理解,这里最终a =10;b = 11 * * 后置自增 * int b = 10; * a = ++b; * * 以上内容不是重点,无需多套太多时间 * * 为了增加代码可读性,可以分开写 * a = b; * b ++ */
10、操作符的优先级
关系操作符必逻辑操作符优先级高,逻辑非比逻辑与的优先级高。
例子:a > 10 && !ok,优先级换算为:((a>10) &&(!10))
11、类型转换操作符
整型与浮点型之间,容许类型转换,例如:
double a = 12.77; int b = (int) a ; // 将double类型转换为int型
其中,a 是double型,b是int 型 ,b = a 时,要求两边的类型一样,所以进行转型操作,double型可以转换为int型,反之也是可以转换。
注意double型向int 型时,会产生数据丢失。int型向double型转换不会产生数据丢失。
例:
double a = 12.2 int b = (int) a //此时b转型为12,小数部分被截掉 int a = 12 double b = double(b) //此时a 为12,没有数据丢失
显示转换与隐式转换
int c = 10; double d = c ;//省略了(double)转换符
语句
int[] a = {11,11,11,11}; a = null; a[0] = 11;
失去引用对象
//失去引用对象 int[] a = {2,2,2}; // 创建一个数组对象,内容是{8,8,8} a = new int[4]; //创建另一组数组对象,内容是{0,0,0,0} //创建完成后,第一个对象就没有任何引用它,这成为“失去引用”对象 a[0] = a[1] =a[2] = a[3] = 17;
当一个对象失去引用后,就不会再被使用,会由系统自动地回收和销毁这个对象,此过程称为垃圾回收。