学Java的第二天

一、常量

1.值不可以变化的量。
2. 分类:
字符串常量 用双引号括起来的多个字符,可以包含 0、1 或多个,例如 "a" "abc" " 中国 "
整数常量,例如: -10 0 88
小数常量,例如: -5.5 1.0 88.88
字符常量,用单引号括起来的一个字符,例如: 'a' '5' 'B' ' '
布尔常量,表示真假,只有两个值 true false
空常量, 一个特殊的值,空值,值为 null
除空常量外,其他常量都可以使用输出语句直接输出。
public class chang {
public static void main(String[] args) {
System.out.println(0); // 输出一个整数
System.out.println(2.2); // 输出一个小数
System.out.println('a'); // 输出一个字符
System.out.println(true); // 输出boolean值true
System.out.println("不要吵架"); // 输出字符串
}
}

二、类型转换

自动类型转换:

把一个范围小的数值或者变量赋值给另一个范围大的变量,这种转换方式是自动的,直接写就行。
double num = 1; // 将int类型的1直接赋值给double类型
System.out.println(num); // 输出1.0

强制类型转换:

格式:目标数据类型 变量名 = ( 目标数据类型 ) 值或者变量 ;
小数位直接舍弃!!
double num = 5.5;
int numm = (int) num; // 将double类型的num强制转换为int类型
System.out.println(numm); // 输出5(小数位直接舍弃)

这是数据范围从小到大的图。

整数默认是int类型,byteshortchar类型数据参与运算会自动转换为int类型。

char 类型的数据转换为 int类型是按照ASCII 码表中对应的int 值进行计算的。比如 'a' 对应 97。
boolean类型不能与其他基本数据类型相互转换。

三、算术运算符

1.
+
-
*
/
%取余
整数操作只能得到整数,要想得到小数,必须有浮点数参与运算。
2. 'a' -- 97 a-z 是连续的,所以 'b' 对应的数值是 98 'c' 99 ,依次递加
'A' -- 65 A-Z 是连续的,所以 'B' 对应的数值是 66 'C' 67 ,依次递加
'0' -- 48 0-9 是连续的,所以 '1' 对应的数值是 49 '2' 50 ,依次递加
// 可以通过使用字符与整数做算术运算,得出字符对应的数值是多少
char ch1 = 'a';
System.out.println(ch1 + 1); // 输出98,97 + 1 = 98
char ch2 = 'A';
System.out.println(ch2 + 1); // 输出66,65 + 1 = 66
char ch3 = '0';
System.out.println(ch3 + 1); // 输出49,48 + 1 = 49

3.算术表达式中包含不同的基本数据类型的值时,整个算术表达式的类型会自动提升。

byte b1 = 10;
byte b2 = 20;
// byte b3 = b1 + b2; // 该行报错,因为byte参与算术运算会自动变为int,int赋值给byte可能损失精度
int i3 = b1 + b2; // 应该使用int接收
byte b3 = (byte) (b1 + b2); // 或者将结果强制转换为byte类型int num1 = 10;
double num2 = 20.0;
double num3 = num1 + num2; // 使用double接收,因为num1会自动提升为double类型

 4.+操作中出现字符串时,这个+是字符串连接符,而不是算术运算。

当连续进行 +操作时,从左到右逐个执行 ,可以使用小括号改变运算的优先级。

四、赋值运算符

=赋值
+=先加再赋值
-=先减再赋值
*=先乘再赋值
/=先除再赋值
%=先取余再赋值
扩展的赋值运算符隐含了强制类型转换。
short s = 10;
s = s + 10; // 报错,因为s提升为int,赋值给short可能损失精度
s += 10; // 没问题,强制类型转换,相当于 s = (short) (s + 10);

祝大家圣诞节快乐!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/577809.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为路由器ACL操作SSH接口

ACL的定义 访问控制列表(Access Control Lists,ACL)是应用在路由器接口的指令列表。这些指令列表用来告诉路由器哪些数据包可以收、哪些数据包需要拒绝。至于数据包是被接收还是拒绝,可以由类似于源地址、目的地址、端口号等的特…

链表总结篇

链表的理论基础 链表的种类主要为:单链表,双链表,循环链表链表的存储方式:链表的节点在内存中是分散存储的,通过指针连在一起。链表是如何进行增删改查的。数组和链表在不同场景下的性能分析。 链表经典题目 虚拟头…

在x64上构建智能家居(home assistant) (六) 安装Node-RED Companion Integration

点击HACS 搜索node-red 右侧单击后点击安装 安装完成后, 选设备

分别使用OVP-UVP和OFP-UFP算法以及AFD检测算法实现反孤岛检测simulink建模与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 4.1 OVP-UVP算法 4.2 OFP-UFP算法 4.3 AFD检测算法 5.完整工程文件 1.课题概述 分别使用OVP-UVP和OFP-UFP算法以及AFD检测算法实现反孤岛检测simulink建模与仿真。 2.系统仿真结果 3.核心程序与模型…

Redis案例实战之Bitmap、Hyperloglog、GEO

👏作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家📕系列专栏:Spring源码、JUC源码、Kafka原理、分布式技术原理、数据库技术🔥如果感觉博主的文章还不错的…

【如何破坏单例模式(详解)】

✅如何破坏单例模式 💡典型解析✅拓展知识仓✅反射破坏单例✅反序列化破坏单例✅ObjectlnputStream ✅总结✅如何避免单例被破坏✅ 避免反射破坏单例✅ 避免反序列化破坏单例 💡典型解析 单例模式主要是通过把一个类的构造方法私有化,来避免重…

uniapp框架——vue3+uniFilePicker+fastapi实现文件上传(搭建ai项目第二步)

文章目录 ⭐前言💖 小程序系列文章 ⭐uni-file-picker 组件💖 绑定事件💖 uploadFile api💖 自定义上传 ⭐后端fastapi定义上传接口⭐uniapp开启本地请求代理devServer⭐前后端联调⭐总结⭐结束 ⭐前言 大家好,我是ym…

数据库原理及应用·关系数据库标准语言SQL

4.1 SQL概述 4.1.1 SQL的产生和发展 1.产生 1974年,SQL语言的雏形最早由美国IBM公司的Raymond F. Boyce和Donald D. Chamberlin提出 1975-1979年,在System R上首次实现,由IBM的San Jose研究室研制,称为SEQUEL 2.发展 1986年推…

猫头虎分享2023年12月17日博客之星候选--城市赛道博主文章数据

猫头虎分享2023年12月17日博客之星候选–城市赛道博主文章数据 博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开…

python哈希算法实现

以下是用Python实现SHA-256算法的示例代码: import hashlibdef sha256(message):# 创建SHA-256哈希对象sha256_hash hashlib.sha256()# 更新哈希对象的输入消息sha256_hash.update(message.encode(utf-8))# 计算哈希值并返回十六进制表示return sha256_hash.hexdi…

Web前端框架全景:流行选择与技术趋势

一、引言 随着互联网的飞速发展,Web应用已经渗透到我们生活的方方面面。为了满足用户对Web应用日益增长的需求,开发者们需要更加高效、灵活和可维护的开发工具。Web前端框架应运而生,它们为开发者提供了一套完整的解决方案,帮助开…

udp广播的例子

以下是一个使用C语言描述广播发送和接收的简单示例&#xff1a; 发送端&#xff08;广播发送&#xff09;&#xff1a; #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/socket.h> #include <netinet/in.h> #inclu…

Linux gdisk创建GPT分区

gdisk命令工具默认将磁盘划分为GPT格式的分区&#xff1a; lsblk 查看分区 创建GPT格式的分区&#xff1a; 列出磁盘分区表&#xff1a; fdisk -l 有一个新的磁盘sdc 下面将sdc进行GPT分区 输入gdisk /dev/sdc 输入&#xff1f;查看帮助文档&#xff1a; 输入n 创建新的分…

Java@RequestParam注解和@RequestBody注解接收参数

目录 Java后端接收数据 第一章、后端不写任何注解情况下接收参数1.1&#xff09;后端不写注解postman发出get请求1.2&#xff09;后端不写注解postman发出post请求 第二章、后端写RequestParam注解接收参数2.1&#xff09;postman发出post请求2.2&#xff09;postman发出get请求…

MySQL 中的 INSERT 是怎么加锁的?

在之前的博客中&#xff0c;我写了一系列的文章&#xff0c;比较系统的学习了 MySQL 的事务、隔离级别、加锁流程以及死锁&#xff0c;我自认为对常见 SQL 语句的加锁原理已经掌握的足够了&#xff0c;但看到热心网友在评论中提出的一个问题&#xff0c;我还是彻底被问蒙了。他…

【Image】GAN的超详细解释(以及奇怪的问题)

GAN原理 工作流程 下面是生成对抗网络&#xff08;GAN&#xff09;的基本工作原理 在GAN的架构中&#xff0c;有两个关键的组件&#xff1a;生成器&#xff08;Generator&#xff09;和鉴别器&#xff08;Discriminator&#xff09;。 生成器&#xff08;Generator&#xff0…

HTML5之 夜景放烟花

参考网址 https://blog.csdn.net/Gou_Hailong/article/details/122269931 https://blog.csdn.net/u013343616/article/details/122233674 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transi…

JavaScript(ES6)数据结构与算法之哈希表

5. 哈希表&#xff08;散列表/字典&#xff09; 文章目录 5. 哈希表&#xff08;散列表/字典&#xff09;5.1 概念5.2 哈希表的实现5.3 扩容 5.1 概念 基于数组实现&#xff0c;存放键值对&#xff1a;结构是数组&#xff0c;对输入的键进行变换&#xff08;哈希函数&#xff…

JavaScript 数组【详解】

Hi i,m JinXiang ⭐ 前言 ⭐ 本篇文章主要介绍JavaScript中数组详解 数组声明/基础操作以及部分理论知识 &#x1f349;欢迎点赞 &#x1f44d; 收藏 ⭐留言评论 &#x1f4dd;私信必回哟&#x1f601; &#x1f349;博主收将持续更新学习记录获&#xff0c;友友们有任何问题可…

C/C++ BM2链表内指定区间反转

文章目录 前言题目1. 解决方案一1.1 思路阐述1.2 源码 2. 解决方案二2.1 思路阐述2.2 源码 总结 前言 这题是BM1的升级版&#xff0c;不过是把完整的链表翻转变成了指定区间。 题目 描述 将一个节点数为 size 链表 m 位置到 n 位置之间的区间反转&#xff0c;要求时间复杂度 …