The Second Day!常量 变量 运算符

本文深入讲解Java中的字面值常量、基本数据类型与运算符等核心概念,并通过实例演示了不同类型的操作与转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第二天,字面值常量、基本数据类型、运算符。

先补充一点关于进制的问题

 public static void main(String[] args) {
        System.out.println(0b100);
  //0b 表示二进制
  System.out.println(0100);
  //0表示八进制
  System.out.println(100);
  //没有标记 就是十进制
  System.out.println(0x100);
  //0x表示十六进制
  System.out.println("0x100");
  //""中是字符串 直接打印
  System.out.println("Hello World!");
 }
}

常量

啥叫常量呢?就是在执行一段程序过程中,值不发生变化的量。常量分为字面值常量和自定义常量。字面值常量包括:整数常量、小数常量、字符常量、字符串常量、布尔常量、空常量。整数常量和小数常量对应的就是指整数和小数。***字符常量指单引号括起来的单个数字、字母或者符号。***字符串常量指双引号括起来的内容。布尔常量包括true、false。空常量为null,它不能进行输出。

 public static void main(String[] args){
  //输出字面值常量
        System.out.println(1000);
        System.out.println(3.14);
        System.out.println('A');
        System.out.println('1');
  //''中是字符常量,能是单个。   ""字符串常量
        System.out.println("1");
        System.out.println(true);
        System.out.println(false);
        System.out.println("Hello World!");
 }

变量

何为变量?
即在一段程序中,值发生变化的量。定义变量其实就是内存中开辟一小块区域。定义变量的目的是为了不断的存放同一类型的变量并可以重复使用。定义变量的格式: 数据类型 变量名=变量值;
为什么引入数据类型呢?因为定义一个变量就是内存中开辟一点空间,那么我们每次开辟多大的空间呢,为了解决这个问题,Java提供了不同的数据类型,针对不同的数据类型,在内存中分配了不同的内存空间。数据类型又分为:基本数据类型和引用数据类型。

基本数据类型包括四类八种,它的详细信息见下表:

数据类型字符字节数范围
整数型byte1(8bit)-128~127
整数型short2(16bit)-2^15 ~ 2^15-1
整数型int4(32bit)-2^31 ~ 2^31-1
整数型long8(64bit)-2^63 ~2^63-1
浮点型float4(32bit)\
浮点型double8(64bit)\
字符型char2(16bit)0~2^16-1=65535
布尔型boolean1(8bit)\

使用变量的注意事项

  • 变量命名一小写字母开头。
  • 变量必须先赋值后使用。
  • 一个作用域内不能命名同一名称的变量。

自动类型提升

byte short char 在参与数学运算时,会自动提升为int类型,如果还有long ,float double 参与运算
则会相应的提升为 long float double ,布尔类型不参与数学运算,byte short char 之间不发生转换。

强制类型提升

强制将一个数据,转换成我们要的数据类型,强制类型转换,有可能会发生精度损失的问题。
格式:目标数据类型 变量名=(目标数据类型)(被转换的数据);

byte a=10;
byte b=20;
short r=a+b;
//报错,byte,short,char运算时会转换为int类型,byte(2字节)不能装下int(4字节)。
a=a+1;
//报错,
byte c=1;
short d=127;
short e=(short)(a+b);
//运算时虽然强制转换为int类型,但强制转换为short类型,128在short数据范围内,不会发生精度损失。
byte r=r+1;
// 报错,byte不能装下int。
byte rr=3+4;
// 不会报错,常量优化机制,多个常量相加时,它会先算出结果,看结果是否在数据类型范围内,在就不报错,否则就报错。
char ch='a';
char ch2=ch+1;
//报错,int转换为char可能会发生精度损失。
int r=ch+1;
//不报错,输出98.ASCII码表中:'a'  97,'A' 65,'0' 48.

运算符

运算符:对常量和变量进行操作的符号称为运算符。
运算符的分类:

  • 算术运算符
  • 赋值运算符
  • 比较运算符
  • 逻辑运算符
  • 位运算符
  • 三目运算符

算术运算符有:+,-,,/,%,–,++
/:整数相除只能取整数,要得到小数需要用浮点数
++:自加,对原有的数据进行+1,
–:自减,对原有数据进行-1
–,++运算符单独使用时放在操作数前面和后面效果一样。参与运算时使用,++,–在操作数前面,先自加或自减,再参与运算;放在操作数后面,先参与运算,再自加或者自减。例:

int a=3;
a++; 
//此处a为4
++a;
//此处a为5
int num=a++;
//num=5,a=6
int num2=++a;
//num2=6,a=6

赋值运算符:=,+=,-,=,*=,/=,%=
比较运算符:==,!=,<,>,<=,>=,比较运算符结果为boolean型
逻辑运算符:&(并且),|(或者),!(非),^(异或),&&(短路与),||(短路或)
逻辑运算符结果是boolean型。&,|,&&,||在运算结果上没有区别,区别在运算效率上,&,运算符两端都会计算,而&&,||只要左端能得出计算结果,则不会执行右端。

int a=1;
int b=2;
boolean flag =a==2&&(a>b);
//&&左端已经为false,右端不会再判断。

三元运算符
语法:表达式?结果1:结果2
案例:求两个数最大值

int a=1;
int b=2;
int max=a>b?a:b;

位运算符
位运算符:&(与),|(或),^(异或) , ~(按位取反) , <<(左移) ,>>(右移) ,>>>(无符号右移)
&:有0则0
|:有1则1
^:相同则0,不同则1。 ^ 特点 一个数被另外一个数位异或两次该数不变
~:按位取反 0变1 1变0
<< : 把<<左边的数据乘以2的移动次幂 例如 10<<3 结果 10*2^3=80

int flag =1&2;    //0
int flag2=1|2;    //3
int flag3=~3;    //4
int num =3>>2;   //3/2^2=0
int num2 =3<<2;   //3*2^2=12

位运算是直接对二进制补码进行运算,效率高。

资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 在当今的软件开发领域,自动化构建与发布是提升开发效率和项目质量的关键环节。Jenkins Pipeline作为一种强大的自动化工具,能够有效助力Java项目的快速构建、测试及部署。本文将详细介绍如何利用Jenkins Pipeline实现Java项目的自动化构建与发布。 Jenkins Pipeline简介 Jenkins Pipeline是运行在Jenkins上的一套工作流框架,它将原本分散在单个或多个节点上独立运行的任务串联起来,实现复杂流程的编排与可视化。它是Jenkins 2.X的核心特性之一,推动了Jenkins从持续集成(CI)向持续交付(CD)及DevOps的转变。 创建Pipeline项目 要使用Jenkins Pipeline自动化构建发布Java项目,首先需要创建Pipeline项目。具体步骤如下: 登录Jenkins,点击“新建项”,选择“Pipeline”。 输入项目名称和描述,点击“确定”。 在Pipeline脚本中定义项目字典、发版脚本和预发布脚本。 编写Pipeline脚本 Pipeline脚本是Jenkins Pipeline的核心,用于定义自动化构建和发布的流程。以下是一个简单的Pipeline脚本示例: 在上述脚本中,定义了四个阶段:Checkout、Build、Push package和Deploy/Rollback。每个阶段都可以根据实际需求进行配置和调整。 通过Jenkins Pipeline自动化构建发布Java项目,可以显著提升开发效率和项目质量。借助Pipeline,我们能够轻松实现自动化构建、测试和部署,从而提高项目的整体质量和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值