Java基础之基本运算

1. 常量

1.1 概述

  • 常量是指在Java程序中固定不变的数据

1.2 分类

类型 含义 数据举例
整数常量 所有的整数 5
小数常量 所有的小数 0.0, -0.1, 2.55
字符常量 单引号引起来,只能写一个字符,必须有内容 ‘a’, ’ ', ‘好’
字符串常量 双引号引起来,可以写多个字符,也可以不写 “好”, “Holle”, “你好”, " "
布尔常量 只有两个值 true, false
空常量 只有一个值 null

1.3 代码实现

public class ConstantDemo { 
	public static void main(String[] args){
	    System.out.println(123);  //输出整数常量
	    System.out.println(0.125);//输出小数常量 
	    System.out.println('A');  //输出字符常量
	    System.out.println(true); //输出布尔常量 
	    System.out.println("你好Java");//输出字符串常量
    }
}

2. 变量和数据类型

2.1 变量概述

  • 常量是固定不变的数据,那么在程序中可以变化的量称为变量

2.2数据类型

数据类型分类

Java的数据类型分为两大类:

  • 基本数据类型: 整数 、 浮点数 、 字符 、 布尔
  • 引用数据类型: 类 、 数组 、 接口

基本数据类型

数据类型 关键字 内存占用 取值范围
字节型 byte 1个字节 -128~127
短整型 short 2个字节 -32768~32767
整型 int(默认) 4个字节 -2的31次方~2的31次方-1
长整型 long 8个字节 -2的63次方~2的63次方-1
单精度浮点数 float 4个字节 1.4013E-45~3.4028E+38
双精度浮点数 double(默认) 8个字节 4.9E-324~1.7977E+308
字符型 char 2个字节 0-65535
布尔类型 boolean 1个字节 true,false

2.3 代码实现

public class Variable {
	public static void main(String[] args){
		byte b = 100; //定义字节型变量
		System.out.println(b); 	
		short s = 1000; //定义短整型变量
		System.out.println(s);
		int i = 12345;//定义整型变量
	    long l = 12345678900L;//定义长整型变量
        System.out.println(l); 
        float f = 5.5F;//定义单精度浮点型变量
        System.out.println(f);
        double d = 8.5;//定义双精度浮点型变量
        System.out.println(d);
        boolean bool = false;//定义布尔型变量
        System.out.println(bool);
        char c = 'A';//定义字符型变量 
        System.out.println(c);
       }
}

3. 数据类型转换

3.1 自动转换

  • 自动转换:**将 取值范围小的类型 自动提升为 取值范围大的类型。
public static void main(String[] args) { 
    int i = 1;     
    byte b = 2; 
    // byte x = b + i; // 报错      
	//int类型和byte类型运算,结果是int类型 
    int j = b + i; 
    System.out.println(j); 
}
  • 转换规则
    范围小的类型向范围大的类型提升, byte、short、char 运算时直接提升为 int 。
    byte、short、char‐‐>int‐‐>long‐‐>float‐‐>double

3.2 强制转换

  • 强制类型转换:将 取值范围大的类型 强制转换成 取值范围小的类型 。
    比较而言,自动转换是Java自动执行的,而强制转换需要我们自己手动执行。
  • 转换格式:
    数据类型 变量名 = (数据类型)被转数据值
public static void main(String[] args) {
    short s = 1;//short类型变量,内存中2个字节 
    /* 出现编译失败
    s和1做运算的时候,1是int类型,s会被提升为int类型
    s+1后的结果是int类型,将结果在赋值会short类型时发生错误
    short内存2个字节,int类型4个字节
    必须将int强制转成short才能完成赋值      */
    s = s + 1//编译失败
    s = (short)(s+1);//编译成功 
}

4. 运算符

4.1 算数运算符

算数运算符包括
+ 加法运算,字符串连接运算
- 减法运算
* 乘法运算
/ 除法运算
% 取模运算,两个数字相除取余数
++ 、 – 自增自减运算
  • ++ 运算,变量自己增长1。反之, – 运算,变量自己减少1,用法与 ++ 一致。
    • 独立运算: 变量在独立运算时, 前++ 和 后++ 没有区别 。
    • 变量 前++ :例如 ++i 。
    • 变量 后++ :例如 i++
  • 混合运算:
    • 和其他变量放在一起, 前++ 和 后++ 就产生了不同。
    • 变量 前++ :变量a自己加1,将加1后的结果赋值给b,也就是说a先计算。a和b的结果都是2
public static void main(String[] args) { 
    int a = 1; 
    int b = ++a; 
    System.out.println(a);//计算结果是2
    System.out.println(b);//计算结果是2 
}
  • 变量 前++ :变量a先把自己的值1,赋值给变量b,此时变量b的值就是1,变量a自己再加1。a的结果是2,b 的结果是1。
public static void main(String[] args) {
    int a = 1; 
    int b = ++a;
    System.out.println(a);//计算结果是2
    System.out.println(b);//计算结果是2 
}
  • +符号在字符串中的操作:
    • +符号在遇到字符串的时候,表示连接、拼接的含义。
    • “a”+"b"的结果是“ab”,连接含义
public static void main(String[] args){
    System.out.println("5+5="+5+5);//输出5+5=55
}

4.2 赋值运算符

赋值运算符包括:
= 等于号
+= 加等于
-= 减等于
*= 乘等于
/= 除等于
%= 取模等
  • 赋值运算符,就是将符号右边的值,赋给左边的变量。
public static void main(String[] args){
    int i = 5; 
    i+=5;//计算方式 i=i+5 变量i先加5,再赋值变量   
     System.out.println(i); //输出结果是10 
}

4.3 比较运算符

比较运算 符包括:
== 比较符号两边数据是否相等,相等结果是true。
< 比较符号左边的数据是否小于右边的数据,如果小于结果是true。
> 比较符号左边的数据是否大于右边的数据,如果大于结果是true。
<= 比较符号左边的数据是否小于或者等于右边的数据,如果小于结果是true。
>= 比较符号左边的数据是否大于或者等于右边的数据,如果小于结果是true。
!= 不等于符号 ,如果符号两边的数据不相等,结果是true。
  • 比较运算符,是两个数据之间进行比较的运算,运算结果都是布尔值 true 或者 false
public static void main(String[] args) {
    System.out.println(1==1);//true
    System.out.println(1<2);//true 
    System.out.println(3>4);//false
    System.out.println(3<=4);//true 
    System.out.println(3>=4);//false 
    System.out.println(3!=4);//true 
}

4.4 逻辑运算符

逻辑运算符包括
&& 短路与 1. 两边都是true,结果是true 2. 一边是false,结果是false 短路特点:符号左边是false,右边不再运算
短路或 1. 两边都是false,结果是false 2. 一边是true,结果是true 短路特点: 符号左边是true,右边不再运算
! 取反 1. ! true 结果是false 2. ! false结果是true
  • 逻辑运算符,是用来连接两个布尔类型结果的运算符,运算结果都是布尔值 true 或者 false
public static void main(String[] args)  {
    System.out.println(true && true);//true
    System.out.println(true && false);//false
    System.out.println(false && true);//false,右边不计算
    System.out.println(false || false);//falase
    System.out.println(false || true);//true
    System.out.println(true || false);//true,右边不计算  
    System.out.println(!false);//true 
}

4.5 三元运算符

  • 三元运算符格式:
    数据类型 变量名 = 布尔类型表达式?结果1:结果2
  • 三元运算符计算方式:
    • 布尔类型表达式结果是true,三元运算符整体结果为结果1,赋值给变量。
    • 布尔类型表达式结果是false,三元运算符整体结果为结果2,赋值给变量。
public static void main(String[] args) {
    int i = (1==2 ? 100 : 200);
    System.out.println(i);//200 
    int j = (3<=4 ? 500 : 600); 
    System.out.println(j);//500 
}
发布了24 篇原创文章 · 获赞 27 · 访问量 2055

猜你喜欢

转载自blog.csdn.net/weixin_45860268/article/details/103266741