.net byte转java byte_两个小时摆脱Java小白--java编程基础(1)

news/2024/9/15 22:47:11/

点击左上方上方的轩轩吖,右上角选择“设为星标

每天早上九点,我们不见不散

公众号后台回复“程序员简历模板”,即可获取精美简历模板

589b3b9fa188d015fba3b585a4be4275.png

往期文章

两个小时摆脱java小白

两个小时摆脱Java小白--环境搭建

两个小时摆脱Java小白--手撕HelloWorld

两个小时摆脱Java小白--javadoc与跨平台原理

两个小时摆脱Java小白--开发工具配置与反编译

1545c4f9d78d1b77074a77b76e282303.png

摘要

前几期文章我们学习了,java的发展史,java的环境搭建以及javadoc跨平台原理,配置了Notepad++,介绍了反编译,熟悉了HelloWorld程序! 我们从这一期开始就进入java编程基础了! 你们要扶好坐好! 马上开车!

1、变量与标识符

数学名词:

变数或变量,是指没有固定的值,可以改变的数。变量以非数字的符号来表达,一般用拉丁字母。变量是常数的相反。变量的用处在于能一般化描述指令的方式。

这个描述有点抽象,咱们举个生活中的例子,在生活中有哪些东西是变化的呢!速度,年龄,轩轩吖的饭量,你们的薪资,努力工作,肯定会变得!那么这些东西,一般化描述的东西就是变量!

计算机解释:

变量就是系统为程序分配的一块内存单元,用来存储各种类型的数据。根据所存储的数据类型的不同,有各种不同类型的变量。变量名代表这块内存中的数据 。

变量分类:

按所属的数据类型划分: 基本数据类型变量 引用数据类型变量 (自定义的数据类型)

按被声明的位置划分局部变量:方法或语句块内部定义的变量 成员变量:方法外部、类的内部定义的变量(全局变量)

标识符

Java对包、类、方法、参数和变量等要素命名时使用的字符序列称为标识符。

Java标识符命名规则: 由字母、数字、下划线(_)和美元符号($)组成。不能以数字开头。区分大小。长度无限制。不能是Java中的关键字和保留关键字

标识符命名习惯:驼峰命名法、见名知意。以单词或单词组合来命名

合法标识符:password、xuanxuanya、user_name、_userName、$abc_123

非法标识符:2UserName(不能以数字开头 )、user#Name(#号不能当标识符)、Hello 轩轩(轩轩是没问题的但是我们不建议用中文来命名,有问题的是空格)、class(这个class是java中的关键字 对于关键字 这个坑 我是深受其害 记得 我的数据库订单表 名字叫做order 坑大发了)

2、八种基本数据类型

字节(Byte)是:计算机文件大小的基本计算单位。最小的是位 但是计算机中 1位也是按一个字节存储的

1个字节(Byte) = 8个位(Bit)

Bit意为“位”或“比特”,是计算机运算的基础;二进制中的一位,是二进制最小信息单位.二进位可以用来表示一个简单的正/负的判断,有两种状态的开关(如电灯开关) .简单换算结果:

1个字节(Byte) = 8个位(Bit)

2个字节(Byte) = 16个位(Bit)

4个字节(Byte) = 32个位(Bit)

8个字节(Byte) = 64个位(Bit)

单位换算:

1byte = 8bit

1KB = 1024byte

1MB = 1024KB

1GB = 1024MB

1TB=1024G

1PB=1024TB

所以1024对于程序员来说 意义还是很大的!

在内存计算过程中, 字节少的数据运算速度更快; 在硬盘存储中, 字节少的数据类型也可充分存入更多的数据。

这个怎么理解呢!相对而言的,比如你存一个表格里边存了一个G的数据,和你存一个电影1个G,这个表格的数据就比1个G的电影要多!

所以字节少的类型可以充分存入更多的数据!

下面这个表格是八种基本类型:

数据类型

关键字

占用字节

取值范围

默认值

布尔型

boolean

不定值

true,false

false

字节型

byte

1

-128~127

0

短整型

short

2

-32768~32767

0

整型

int

4

-2147483648~2147483647

0

长整型

long

8

-9223372036854775808~9223372036854775807

0

字符型

char

2

0~65535

‘ ’

单精度浮点型

float

4

1.4E-45~3.4028235E38

0.0F

双精度浮点型

double

8

4.9E-324~1.7976931348623157E308

0.0D

取值范围呢记住简单的就行了,占用字节数,和关键字,默认值都得记住,考试要考!

这里解释一下,为什么boolean类型为什么占用一个字节呢!

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html(官方文档了解一下)

c890d131db8e294134e87c60e6143ef8.png

他是什么意思呢?

布尔类型:布尔数据类型只有两个可能的值:真和假。使用此数据类型为跟踪真/假条件的简单标记。这种数据类型就表示这一点信息,但是它的“大小”并不是精确定义的。

可以看出,boolean类型没有给出精确的定义,《Java虚拟机规范》给出了4个字节,和boolean数组1个字节的定义,具体还要看虚拟机实现是否按照规范来,所以1个字节、4个字节都是有可能的。这其实是运算效率和存储空间之间的博弈,两者都非常的重要。

short类型呢,在开发中是很少使用的,short的出现呢是为了兼容以前老的机器进行运算的.

char 可以用ascll码值来表示一个字符,对应关系如下:

3f51445d4d865bf6ad2978b05ecff942.png

3、基本数据类型的声明

(1)声明变量 类型 变量名; int number;

(2)声明的同时给变量赋值 类型 变量名 = 值; number=10;

(3)给已声明过的变量赋值 变量名 = 值; number=20;

4、进制与转换

十进制:人们计算通常用的是十进制,可能是因为 我们有十个手指头吧!手动滑稽!

二进制:计算机中的数据都以二进制数字保存。二进制:逢二进一。即只有0、1两个值。如:十进制的10在计算机内保存为二进制的1010

位(Bit):表示一个二进制数码0或1,是计算机存储处理信息的最基本的单位。字节(Byte):一个字节由8个位组成。它表示作为一个完整处理单位的8个二进制数码。

八进制:基数为八。Java中八进制数据要以0开头。如:0123 八进制转换成二进制:只需将每个八进制数字替换为相对应的三个二进制位即可。现在的计算机系统很少用八进制的了。

二进制

八进制

000

0

001

1

010

2

011

3

100

4

101

5

110

6

111

7

十六进制:二进制表示法太冗长,所以在程序中一般喜欢用十六进制 十六进制:基数为十六,逢十六进一。它用abcdef表示从0-9之上的值 Java中十六进制数据要以0x或0X开头。如:0x23D 十六进制转换成二进制只需将每个十六进制数字替换为相对应的四个二进制位即可

二进制

十六进制

二进制

十六进制

0000

0

1001

9

0001

1

1010

A

0010

2

1011

B

0011

3

1100

C

0100

4

1101

D

0101

5

1110

E

0110

6

1111

F

0111

7

1000

8

补码:事实上,计算机内的二进制数值是以补码形式表示的。补码:一个正数的补码和其原码的形式是相同的。负数的补码是:将该数的绝对值的二进制形式,按位取反再加1。 由此可知,二进制补码数值的最高位(最左位)是符号位:该位为0,表示数值为正数;该位为1,表示数值为负数。主要原因:使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。另外,两个用补码表示的数相加时, 如果最高位(符号位)有进位, 则进位被舍弃。

二进制数转换成十进制数 :按权相加:把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。

例:原码1011.01 = 1×2^3+0×2^2+1×2^1+1×2^0+0×2^-1+1×2^-2 = 8+0+2+1+0+0.25 =11.25

十进制转换成二进制 整数部分:"除2取余,逆序排列"法 小数部分:"乘2取整,顺序排列"法

78cada856f4a91559215cb76ba4370c6.png

5、基本数据类型转换

自动类型转换:容量小的类型自动转换成容量大的数据类型

af4386f45fcb93e61597916eaf0da210.png

byte,short,int,它们三者在计算时会转换成int类型 如果把int值转换为float值,或者long转换为double值,不需要强制转换,但可能丢失精度

面试题

b8cffde2721afa5b810321601a7d7742.png因为byte,short,int,它们三者在计算时会转换成int类型,所以这样写会报错的!

231e9dc6ed0c2feaa34266b751b039e5.png这样加一个强制转换符就可以了,手动滑稽!但是这样会丢失精度!

容量大的转换为容量小的,会丢失精度,但是 为什么int转float 或double 也会丢失精度呢?

这是因为float和double 在存储的时候,存储的是近似值,int long 啥的是精确值,因为是精确值转近似值所以会有精度丢失!

废话不多说 直接上代码

0be08afcbc306c13b163c648afc37406.png

这个的输出结果是科学计数法,2.01978912 10的8次方 201978912 貌似变大了,,手动滑稽!所以表示货币值不能用float或者double

强制类型转换:

容量大的类型转换成容量小的数据类型时,要加上强制转换符。long n = 100L; int i = (int)n; 有可能造成精度降低或数据溢出,使用时要小心。boolean 类型不能转换成任何其它数据类型。

System.out.println("点个在看吧");

1ef3403e611672b51969262b4c3e07fb.png

学到东西了就关注我哦!安排!


http://www.ppmy.cn/news/943161.html

相关文章

给深度学习入门者的Python快速教程 - numpy和Matplotlib篇

转载自:https://zhuanlan.zhihu.com/p/24309547 本篇部分代码的下载地址: https://github.com/frombeijingwithlove/dlcv_for_beginners/tree/master/chap5 上篇:给深度学习入门者的Python快速教程 - 基础篇 5.3 Python的科学计算包 - Num…

欧拉公式ejwt_欧拉公式

欧拉公式ejwt In this post we will explore Euler’s Formula, explain what it is, where it comes from, and reveal its magic properties. 在这篇文章中,我们将探索欧拉公式,解释其含义,来源以及揭示其神奇的特性。 什么是欧拉公式? (What is Euler’s Formula?) Eu…

我用3000元,买了2只“JPG”的猫……

你买过JGP图片吗?几万美金一张那种。 今年6月10日,在苏富比举行的NFT艺术品展览及在线拍卖活动中,CryptoPunk#7523以1175.4万美元成交。 而过去一周,CryptoPunk销量TOP10合计价值约5059ETH,约合1387万美元。其中最贵的…

【开源毕设】一款精美的家校互动APP分享——爱吖校推 [你关注的,我们才推](持续开源更新3)附高效动态压缩Bitmap...

一、写在前面 爱吖校推如同它的名字一样,是一款校园类信息推送交流平台,这么多的家校互动类软件,你选择了我,这是我的幸运。从第一次在博客园上写博客到现在,我一次一次地提高博文的质量和代码的可读性,都是…

reggie优化06-项目部署

1、部署架构 2、部署环境 3、部署前端 4、部署后端 修改图片位置,并push至仓库

numpy和Matplotlib篇---2

原创博文,转载请标明出处--周学伟 http://www.cnblogs.com/zxouxuewei/ 5.3 Python的科学计算包 - Numpy numpy(Numerical Python extensions)是一个第三方的Python包,用于科学计算。这个库的前身是1995年就开始开发的一个用于数组运算的库。经过了长时间…

量子计算机科技革命,量子计算机引发第二次科技革命!?

原标题:量子计算机引发第二次科技革命!? 在不久前的CES2018上,英特尔keynote演讲时拿出49量子比特(qubits)超导量子计算测试芯片“Tangle Lake”,震撼全场。其后于洛杉矶举行的美国物理学年会上,谷歌量子AI…

使用红孩儿工具箱完成基于Cocos2d-x的简单游戏动画界面

[Cocos2d-x相关教程来源于红孩儿的游戏编程之路CSDN博客地址:http://blog.csdn.net/honghaier 红孩儿Cocos2d-X学习园地QQ3群:205100149,47870848 使用红孩儿工具箱完成基于Cocos2d-x的简单游戏动画界面 游戏的UI界面编程是一个既重要,又麻烦…

四大顶级专家谈AlphaFold2:关于技术细节、局限与意义

2020-12-16 03:25:07 AlphaFold2的胜利就像是一场接力赛,往往是跑到最后一棒的人会有更多的高光时刻。但是,我们依然要记住为这门学科贡献智慧的人。 来源 | 医健AI掘金志 作者 | 李雨晨、刘海涛 尽管,距离Deepmind公司AlphaFold2的横空出世…

简洁精美源于分析透彻,构思明确、求精,逻辑练达。(1)

/*用户输入100~999999范围之内的任意数(如果不是此范围,则报错),判断是否是自方幂数,用户可以反复输入判断直到不需要为止。自方幂数: 一个n位正整数如果等于它的n个数字的n次方和,该数称为n位自…

Altium Designer V23介绍、下载、安装、注册(激活)与汉化

一、Altium Designer简介 Altium Designer 是一款简单易用、原生3D设计增强的一体化设计环境,结合了原理图、ECAD库、规则和限制条件、BoM、供应链管理、ECO流程和世界一流的PCB设计工具。通过原理图设计、电路仿真、PCB绘制编辑、拓扑逻辑自动布线、信号完整性分析…

每日打卡day8——差分练习

输入一个长度为 n 的整数序列。 接下来输入 m 个操作,每个操作包含三个整数 l,r,c,表示将序列中 [l,r] 之间的每个数加上 c。 请你输出进行完所有操作后的序列。 输入格式 第一行包含两个整数 n 和 m。 第二行包含 n 个整数,表示整数序列…

acer台式计算机如何拆硬盘,原件 Acer V5471G拆卸与更换固态硬盘的详细说明

这次,我用固态驱动器替换了V5-471G笔记本电脑. 尽管有很多关于这种拆卸的图片v5471g键盘外框怎么拆,但这并不是什么新鲜事. 但是,我们对每个需要注意的地方做了一些解释,希望能帮助需要自行拆卸和重新安装的朋友 首先,…

关于笔记本电脑散热不佳且噪音很大的维修记录随想

小生一本子,09年2月份购买的,三星R458机型,前年手贱自己看网上的图解,自己拆过一次,没拆好,把屏幕与机身交接处的机架拆坏了。当时一直以为官方维修点维修放心,最后的结果是等了三天时间&#x…

解放研究者:GPT自动化科研

GPT Researcher 是一个自主代理程序,旨在进行多种任务的全面在线研究。 该代理能够生成详细、事实性和公正的研究报告,并提供个性化选项,以便关注相关资源、大纲和教训。受到AutoGPT和最近的Plan-and-Solve论文的启发,GPT Researc…

.net 浅复制

你可以使用C#编程语言来编写一个通用的扩展方法&#xff0c;用于将一个对象的值复制到另一个对象&#xff0c;并且修改目标对象的属性时原始对象不受影响。 以下是一个示例代码&#xff1a; public static T ShallowCopy<T>(this T original) where T : class{if (origi…

在LLM的支持下使游戏NPC具有记忆化的方法

问题 使用GPT这样的LLM去处理游戏中的NPC和玩家的对话是个很好的点子&#xff0c;那么如何处理记忆化的问题呢。 因为LLM的输入tokens是有限制的&#xff0c;所以伴随着问题的记忆context是有窗口大小限制的&#xff0c;将所有的记忆输入LLM并不现实。 所以这里看到了stanfo…

【Python】简单计算器实现(四)

解决思路&#xff1a;最后&#xff0c;我们来看看最简单的运算函数和判断运算符函数。 定义函数&#xff1a;def calculate(n1, n2, operator) param n1: floatparam n2: floatparam operator: - * /return: float def calculate(n1, n2, operator):result 0if operator …

win7,win10下删除HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\报错

在调试虚拟网卡驱动时&#xff0c;由于修改错误&#xff0c;导致枚举顺序错乱&#xff0c;因此通过删除HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\Root\WINTUN下的所有项&#xff0c;即可&#xff0c;win10可用。 1、下载PStools&#xff1a; http://technet.microsoft.c…

【懒人版】labview 软件加密+试用期限制+绑定硬件

labview编译的软件如何在无加密狗的情况下绑定系统硬件生成机器码和注册码&#xff0c;增加试用期功能。获取硬件序列号&#xff0c;对序列号加密&#xff0c;通用密钥生成机器码&#xff0c;在客户端生成机器码&#xff0c;在服务器端生成注册码。 该例程实现如下功能&#xf…