如果您不想讲故事,而是直接了解数据类型,那么请看一下此仓库,该仓库最终将随着本系列的进行而包含有关Java的更多信息。 https://github.com/bbenefield89/LearnJava/tree/master/DataTypes
来自JavaScript和Python之类的高级语言,我真的从未有过担心数据类型的“乐趣”。 字符串,字符,整数……没问题。
虽然我对C语言有少量的经验,但它来来往往却很快,以至于我没有太多时间去深入研究,因为我忙于在管理指针和学习struct
时不致溺水。
这周我决定要学习一种新语言,但这必须与我的语言有关
- 如何在Java Springboot应用程序中进行并行调用以及如何对其进行测试?
- Java使用“二进制补码”表示带符号的数字
- 安装程序JavaFX avec OpenJDK 11
- 在线代码浏览工具的演变
- (工程)我犯的错误
- 职业选择或我希望我的职业负责的地方
- 相关,这意味着从小到大的公司都在大规模使用它
- 足够灵活,以至于我不会陷入行业的特定部分
因此,我决定使用Java,统计数据表明我不会输! 2018年StackOverflow开发人员调查将Java列为专业开发人员使用的第五种最受欢迎的编程语言,其中JavaScript,HTML,CSS和SQL分别排名第一至第四。 如果我们真的考虑过,HTML,CSS和SQL并不是真正的编程语言,也许是SQL,所以Java排在第二位,说实话,我认为调查结果有点偏向JavaScript,因为它是前端的事实上的语言,也可以在后端使用。 如果您问我,决定学习Java可能不是一个坏主意吧?
什么是Java?

Java可以在Windows,Mac,Linux,Android,iOS等任何计算机系统上运行! 绝对没有阻止它。 因此,如果您无法击败他们,那就加入他们吧! 更不用说Java在全球超过30亿的设备上运行。

我如何开始?
设置好开发环境后,即可获取正确版本的Java。 确定要使用Maven或Gradle作为构建工具,并最终下载IntelliJ IDEA之后,您需要从基础开始。
如果您来自使用较低级别的语言来直接处理和分配数据类型,并且确切地知道“ 8位带符号的二进制补码整数”是什么,那么您可以跳过本文的其余部分。 对于那些从未听说过某些或某些术语的人来说,您来对地方了。
什么是数据类型?
无论您来自哪种编程语言,数据类型的概念都是相同的。 您有一个需要存储或返回的值,字符串,整数等,并且需要在某个地方存储它。 尽管Python更加严格,但是诸如JavaScript和Python之类的语言将对您隐藏起来,而诸如C / C ++之类的系统语言甚至不会再三考虑让您知道自己错了。
他们已经是什么?
因此,Java具有八种官方数据类型, boolean
, char
, byte
, short
, int
, long
, float
和double
float
。 还有另一种使用频率很高的类型,可以认为它是string
的第九种类型。
布尔型
布尔数据类型表示两个值之一,可以是true
或false
。 布尔类型每个仅占用1位内存。 布尔类型也可以表示为1(true)或0(false)。
boolean foo = true;
boolean bar = false;
字节
Byte数据类型可以容纳最小范围的整数,并且对于仅具有(-2⁷)到(2⁷-1)或-128到127范围的整数占用最少的内存。这是“ 8位带符号的二进制补码”整数”。这意味着什么?
- 8位:只能由8位组成,例如Binary 0000 0001。
- 有符号:带符号整数意味着它可以包含负值,而无符号则意味着它只能包含正值。
- Two’s Complementary:我不是最好的解释这个概念的人,因为我仍在解决这个问题,但是我会从StackOverflow留下一些答案
- 整数:这意味着它是一个数字。
字节foo = 127;
字节栏= -128;
短
短数据类型是一个16位带符号的二进制补码整数,该整数可以保存(-2 -1)到(2 -1 -1)的范围,并且将消耗2字节的内存,即16位。
短foo = 32767;
短线= -32768;
整数
现在我们在说话! int数据类型将是您将看到的最常用的整数。 这是因为在进行某种数学运算,加法,减法等操作时,除非将结果转换为其他类型的整数,否则Java会将结果转换为int。 int数据类型是一个32位带符号的二进制补码整数,表示它可以容纳(-2³¹)至(2³¹-1)范围,并且将消耗4字节32位内存。 还值得一提的是,自Java SE 8开始,我们就可以将int
数据类型视为无符号整数,这意味着它也可以容纳(0)到(2³²-1)范围。
//'int'可以容纳比此示例大/小的数字
int foo = 32000;
整数条= -32000;
长
长数据类型能够保存大量数据。 它是一个64位带符号的二进制补码整数,表示它可以容纳(-2⁶¹)到(2⁶¹-1)范围,并消耗高达8字节的64位内存。 当进行某种类型的数学运算并涉及到long
整数时,Java会将结果转换为long
。 还值得一提的是,任何long
整数都应以大写字母L
开头。 虽然这适用于小写的l
,但如果将其大写,则更容易知道数字的末尾有一个L。 还值得一提的是,自Java SE 8开始,我们就可以将long
数据类型视为无符号整数,这意味着它也可以容纳(0)到(2⁶⁴-1)范围。
long foo = 100L //不错,我们可以清楚地看到L
//几乎与数字l相同,还是我输入了小写的1?
长条= 100l;
浮动和双打
Float
和double
数据类型是int
和long
彼此的含义。 float
只是float
的一个较小而不太精确的版本。 除非指定,否则Java还将所有小数转换为double
精度。 float
型为32位宽,而double
为64位宽。 Float
整数还应在结尾加上小写字母f
。
浮点foo = 1.234f
double foo = 1.23456789;
烧焦
Char数据类型仅包含一个字符,并且仅占用2字节(16位)的内存。
char foo ='A'; //我们可以使用键盘上的实际字符
char bar ='101'; //我们也可以像这样代表字符
char baz ='\ u00A9'//甚至使用unicode
串
字符串非常重要,并且经常使用,以至于我不想跳过这一部分。 如果您使用的是高级语言,那么您可能会惊讶地发现String
数据类型(即大写S)实际上是char
数据类型的数组或Python列表。 这就是为什么我们能够遍历String并利用数组方法的原因。 知道String数组中的每个索引都是由一个char
,我们可以算出String会消耗的内存量。 对于String Hello, World!
,这将占用28字节的内存,因为我们需要分配14个内存空间。 即使您只能看到13个字符(包括空格),字符串也以单个空字符\0
,这也占用了内存。
String foo =“你好,世界!”
摘要
知道原始数据类型以及如何以及何时使用它们非常重要。 通常,将int
用作数字,将double
用作小数,如果我可能这么大胆,则将为基于文本的需求使用String
,尽管不是基本类型。
如果您发现任何有用的信息,请不要害羞,并发表评论! 如果您发现不正确的地方,是我想传递给我的语法的知识,请不要害羞,请发表评论!
您也可以在这里查看我的其他文章。