java短除法获取二进制_Java十四天零基础入门-Java的数据类型介绍

18432ca20cd8ef3183662c81c81dce65.png

不闲聊!!!不扯淡!!!小UP只分享Java相关的资源干货

本章节目标:

理解数据类型的作用。Java中包括哪些数据类型?常见的八种基本数据类型都有哪些?会用八种基本数据类型声明变量?什么是二进制?原码反码补码是什么?什么是字节?byte类型取值范围?什么是字符编码方式?每种数据类型在使用时的注意事项?基本数据类型之间的转换?

知识框架:

8839577fddd432371a40e3e4915f6f8b.png

Java的数据类型概述

几乎所有的编程语言中都会有数据类型,什么是数据类型呢?软件的存在主要是进行数据的处理,现实生活中的数据会有很多,所以编程语言对其进行了分门别类,然后不同的数据类型的数据会给其分配不同大小的空间进行存储。换句话说,java中的数据类型作用就是指导java虚拟机在程序运行阶段到底应该给该变量分配多大的内存空间。

Java中的数据类型包括两种,分别是:

● 基本数据类型

● 引用数据类型

Java中的基本数据类型又包括四类8种:

● 整数型(不带小数的数字):byte,short,int,long

● 浮点型(带小数的数字):float,double

● 字符型(文字,单个字符):char

● 布尔型(真和假):boolean

java中除了以上的8种基本数据类型之外,其它的数据类型均属于引用数据类型,也就是说字符串在java中不属于基本数据类型,而属于引用数据类型。请看八种基本数据类型对照表:

data-draft-type="table" data-size="normal" data-row-style="normal">

数据类型占用bit位取值范围缺省默认值byte(字节型)1[-128~127]0short(短整型)2[-32768~32767]0int(整型)4[-2147483648~2147483647]0long(长整型)80Lfloat(单精度)40.0fdouble(双精度)80.0boolean(布尔型)1true、falsefalsechar(字符型)2[0~65535]‘u0000’

接下来我们普及一下计算机基本知识,计算机在任何情况下都只能识别二进制,因为计算机毕竟是一台通电的机器,电流只有正极、负极,所以只能表示两种情况,也就是1和0。什么是二进制呢?满2进一位,请看对照表

十进制01234567891011
二进制0110111001011101111000100110101011

十进制和二进制之间的转换规则:

● 十进制转换成二进制:比方说十进制数65转换成二进制代码,我们可以使用短除法,65对2整除商32余数为1,把1写在旁边,接着32对2整除商16余数为0,把0写在旁边,用16整除2商0余数为0,把0写在旁边,这样进行下去直至商为0时为止。然后把余数逆序排列就得到了65的二进制代码。

● 二进制转换成十进制:比方说二进制代码为1000001的十进制数是多少呢?可以采用按权相加的方法,对于二进制代码1000001首先从右边第一位起对应2的零次方,第二位对应2的一次方,以此类推,把相应的数位与权值相乘得到的积相加即可,即2^0*1+0*2^1+0*2^2+0*2^3+0*2^4+0*2^5+1*2^6=65

接下来我们来看一下byte类型的取值范围:首先byte属于字节型,占用空间大小是1个字节byte,1个byte是8个bit位,二进制位中的一个1或者一个0就是一个bit位,而java中的数字有正负之分,二进制位中最左边的数字表示符号位,0表示正数,1表示负数,所以byte类型最大值是:01111111,将这个二进制位转换为十进制是:127。byte类型最小值是-128,也就是说1个字节可以表示256种不同形式。另外还需要给大家普及一下计算机的容量换算单位:

1byte = 8bit

1KB = 1024byte

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

对于以上的八种基本数据类型来说,其中七种类型byte,short,int,long,float,double,boolean计算机表示起来是很容易的,因为这七种类型底层直接就是数字,十进制的数字和二进制之间有固定的转换规则,其中boolean类型只有true和false,而true底层实际上是1,false底层实际上是0。除了以上的七种数据类型之外,还有一种类型叫做字符型char,这个对于计算机来说表示起来就不是那么容易了,因为字符毕竟是现实世界当中的文字,计算机是如何表示文字的呢?

起初的计算机实际上只支持数字的,因为计算机起初就是为了科学计算,随着计算机的发展,为了让计算机起到更大的作用,因此我们需要让计算机支持现实世界当中的文字,这个时候某个标准协会就制定了字符编码(字符集),字符编码就是一张对照表,在这个对照表上描述了某个文字与二进制之间的转换关系。

最初的时候美国标准协会制定了ASCII码,ASCII码采用1个字节编码,大家是否还记得1个字节可以表示256种不同的形式,对于美国来说这个足够了,因为英文单词就是由26个英文字母拼凑而成,大小写全部才52个,再加上标点符号也不会超过256个。ASCII码中规定’a’对应97,’b’对应98,以此类推,’A’对应65,’B’对应66,以此类推,’0’字符对应48,’1’字符对应49,以此类推,这些常见的编码还是需要大家记住的。

什么是编码?什么是解码?我们拿’a’来解释:

● ‘a’ ----(以ASCII字符集进行编码)----> 01100001

● 01100001----(以ASCII字符集进行解码)----> ‘a’

大家一定要注意:编码和解码要采用同一种字符编码方式(要采用同一个对照表),不然会出现乱码。

随着计算机的不断发展,为了让计算机支持更多国家的语言,国际标准组织又制定了ISO-8859-1字符集,又被称为latin-1,向上兼容ASCII码,仍不支持中文,主要支持西欧语言。

当计算机发展到亚洲的时候,计算机开始支持简体中文、繁体中文、日本语、朝鲜语等,其中支持简体中文的字符集包括:GB2312 < GBK < GB18030,它们的容量大小不同。支持繁体中文的大五码Big5等。

后来,国际组织制定了一种字符编码方式,叫做Unicode编码,这种编码方式统一了全球所有国家的文字,具体的实现包括:UTF-8,UTF-16,UTF-32等。

java为了国际化,为了支持所有国家的语言,所以java采用的编码方式为Unicode编码。例如’中’对应的Unicode码是’u4e2d’。在实际开发中几乎所有的团队都会使用Unicode编码方式,因为这种方式更通用,兼容性更好。

学习本文之前建议先看:

Java十四天零基础入门-Java变量的作用域​zhuanlan.zhihu.com
zhihu-card-default.svg

下一篇文章学习地址:

Java十四天零基础入门-Java字符类型​zhuanlan.zhihu.com
zhihu-card-default.svg

更多相关Java视频教程资料:

2020最新版Java视频学习路线图-学习Java独孤九剑总纲篇​zhuanlan.zhihu.com
0f5b6503f037750b405bbf2edbcd6dec.png

你的素质五连就是小UP的动力

6ef246e1228155634f136679abed717a.png

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

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

相关文章

vs怎么把textbox输入的实数放置变量里_方程的计算机处理96(3)_C++vs

计算机语言运用--数值计算9-方程的计算机处理96(3)_Cvs计算机&#xff1a;电子线路组成的计算机器。人与计算机则是通过计算机语言-符号系统说给计算机听而交流。计算机语言有低级语言-机器语言、汇编、高级语言-C/C/C#/VB/PASCAL/LISP/JAVA/PYTHON/……成百上千种之多。作为一…

2008r装mysql_mysql5.7.17在win2008R2的64位系统安装与配置实例

安装MySql操作系统&#xff1a;Windows Server 2008 R2 StandardMySql版本&#xff1a;mysql-5.7.17-winx64第一步&#xff1a;解压mysql-5.7.17-winx64.zip到指定位置第二步&#xff1a;安装文件根目录下添加data文件夹&#xff0c;将my-default.ini重命名为my.ini第三步&…

【HDU - 5187】zhx's contest (快速幂+ 快速乘,模板)

题干&#xff1a; 2018百度之星复赛晋级名单出炉&#xff08;增加20%晋级名额&#xff09;~ zhxs contest Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 3779 Accepted Submission(s): 1226 Problem Desc…

【牛客 - 283E】贪心只能过样例(模拟)

题干&#xff1a; 小西是单身狗&#xff0c;所以她不喜欢看到有CP在秀恩爱&#xff01; 有一天&#xff0c;小西出来闲逛&#xff0c;发现街上的行人都排成了一排&#xff0c;并且可以用这种形式表示&#xff1a; MMFMMFFFMMM 其中M表示男孩子&#xff0c;F表示女装的男孩…

apmserver导入MySQL_mysql数据库导入导出

window下1.导出整个数据库mysqldump -u 用户名 -p 数据库名 > 导出的文件名mysqldump -u dbuser -p dbname > dbname.sql2.导出一个表mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名mysqldump -u dbuser -p dbname users> dbname_users.sql3.导出一个数据库结…

【牛客 - 283C】模拟只会猜题意(简单模拟)

题干&#xff1a; 小西突然觉得回文串是一种非常优雅的东西&#xff0c;她突然想要把身边所有的字符串都变成回文&#xff01; 所谓回文串就是一个倒置后仍与自身相等的字符串&#xff0c;如“gxuacmmcauxg”和“gxuacmcauxg”。 小西不喜欢单身狗&#xff0c;所以小西只会…

sql开启mysql远程连接_SQLServer2008设置开启远程连接

SQLServer2008设置开启INTERNET远程连接 SQL Server 2008默认是不允许远程连接的&#xff0c;sa帐户默认禁用的&#xff0c;如果想要在本地用SSMS连接远程服务器上的SQL Server 2008&#xff0c;需要做两个部分的配置&#xff1a; 使用sa账户登录SQL Server Management Studio(…

【牛客 - 283H】图论一顿套模板(思维转化,Dijkstra)

题干&#xff1a; 由于临近广西大学建校90周年校庆&#xff0c;西大开始了喜闻乐见的校园修缮工程&#xff01; 然后问题出现了&#xff0c;西大内部有许许多多的道路&#xff0c;据统计有N栋楼和M条道路&#xff08;单向&#xff09;&#xff0c;每条路都有“不整洁度”W&…

spss相关性分析看结果_spss相关性分析

当我们想要了解变量的相关程度时,就需要用到相关分析,而相关分析也是回归之前很重要的一步,通常用到的方法是pearson方法。 首先解释一下相关系数,相关系数反应的是两个变量之间变化趋势的方向以及程度,其值范围为-1到+1,正值表示正相关,负值表示负相关,绝对值越大表示…

【牛客 - 283F】出装方案(最小费用最大流)

题干&#xff1a; 众所周知&#xff0c;在各种对抗类游戏里装备都是很重要的一环&#xff0c;不同的出装方案会给玩家带来不同的强度。 dalao手里有N件装备&#xff0c;现在dalao要把装备分给N个队友&#xff0c;每个队友只能分一件装备&#xff0c;而每个队友穿上不同的装…

【CodeForces - 289D】Polo the Penguin and Houses (带标号的无根树,Cayley定理,Prufer编码)

题干&#xff1a; Little penguin Polo loves his home village. The village has n houses, indexed by integers from 1 to n. Each house has a plaque containing an integer, the i-th house has a plaque containing integer pi (1 ≤ pi ≤ n). Little penguin Po…

【CodeForces - 289E 】Polo the Penguin and XOR operation (数学,异或,贪心)

题干&#xff1a; Little penguin Polo likes permutations. But most of all he likes permutations of integers from 0 to n, inclusive. For permutation p  p0, p1, ..., pn, Polo has defined its beauty — number . Expression means applying the operation …

【CodeForces - 922B 】Magic Forest (数学,异或,暴力,水题,三元组问题)

题干&#xff1a; Imp is in a magic forest, where xorangles grow (wut?) A xorangle of order n is such a non-degenerate triangle, that lengths of its sides are integers not exceeding n, and the xor-sum of the lengths is equal to zero. Imp has to count the …

java生产者消费者代码_Java实现Kafka生产者消费者代码实例

Kafka的结构与RabbitMQ类似&#xff0c;消息生产者向Kafka服务器发送消息&#xff0c;Kafka接收消息后&#xff0c;再投递给消费者。生产者的消费会被发送到Topic中&#xff0c;Topic中保存着各类数据&#xff0c;每一条数据都使用键、值进行保存。每一个Topic中都包含一个或多…

【CodeForces - 304B】Calendar (前缀和,水题)

题干&#xff1a; Calendars in widespread use today include the Gregorian calendar, which is the de facto international standard, and is used almost everywhere in the world for civil purposes. The Gregorian reform modified the Julian calendars scheme of le…

java 刷新jtextarea_Java JTextArea不能实时刷新的问题

相信JTextArea用法都了解吧&#xff0c;JTextArea textArea new JTextArea();生成一块空白的区域&#xff0c; 我的需求就是点击发送邮件按钮后&#xff0c;后台的执行日志能输出到textArea中。但是我点击发送按钮的时候&#xff0c;由于邮件的附件要好久&#xff0c;界面一直…

【CodeForces - 312C】The Closest Pair (思维)

题干&#xff1a; Currently Tiny is learning Computational Geometry. When trying to solve a problem called "The Closest Pair Of Points In The Plane", he found that a code which gave a wrong time complexity got Accepted instead of Time Limit Excee…

【牛客 - 272A】Phrase String(构造,水题)

题干&#xff1a; 给出v, k&#xff0c;请你找到最小的正整数n&#xff0c;满足&#xff1a; n的二进制表示下存在一个长度为v的回文串&#xff0c;该回文串首尾都是1且n的二进制表示中至少有k个1。保证v,k均为偶数&#xff01; 由于n可能很大&#xff0c;你只需要输出对取模的…

【HDU - 1025】Constructing Roads In JGShining's Kingdom(dp最长上升子序列模型 + 二分优化)

题干&#xff1a; Constructing Roads In JGShinings Kingdom Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 29933 Accepted Submission(s): 8496 Problem Description JGShinings kingdom consists of 2n…

【牛客 - 302哈尔滨理工大学软件与微电子学院第八届程序设计竞赛同步赛(低年级)】小乐乐吃糖豆 (fIb博弈)

题干&#xff1a; 小乐乐是一个比较喜欢吃糖豆的小孩子&#xff0c;小乐乐的哥哥大乐乐也同样爱吃糖豆。 作为一个小孩子&#xff0c;他们永远觉得谁吃掉了最后一个糖豆&#xff0c;谁吃的糖豆最多。 为了公平起见小乐乐与大乐乐商量吃糖豆的规则如下&#xff1a; 1. …