Java15变量竟然没什么区别,八大基本数据类型你知道吗?
变量是什么?
变量是用来为不同数据类型在内存中分配的空间用来储存该数据。
不同于python这样的弱类型语言,变量声明不需要定义数据类型,就和写数学方程式一般,谁等于谁即可。而Java这个发展了多个版本的语言,从1.0开始就在java.lang这个包里面明确定义了八种基本数据类型,直到Java15依然不曾改变。可见,基本数据类型的了解对于变量的使用而言是多么必要!
基本数据类型:数字类型
说到数字类型,就不得不提java.lang下面的Number类。那么现在来演示一下Double\Float\Integer\Long\Short,让大家了解一下Java中怎么定义这些数字类型,值得注意的是Java区分大小写,Double不等于double。大写对应的是类名,小写的是数字类型的声明。值得注意的是:Integer类的数字类型为int。
下面我们来按照如下输出:
可以发现变量是可以重复赋值的,而且一旦声明了变量,就代表分配了在内存上给它分配了空间,同时默认了一个0值。而Python里面则不行,变量必须给一个初始值。
从上图不难看出,int、long、short都属于整数类型,double和float都属于浮点数类型,Double、Float、Integer、Long、Short从它们的字面意思都很容易和数关联,而byte竟然也属于Number类,这是为什么呢?因为在Java中byte也是用二进制数的形式来表示。所以我们发现byte的初始值也是一个整数。
基本数据类型:布尔类型
Boolean作为真假的判断,布尔类型,有点编程知识的朋友都听说过。而Java15里面的布尔类型则是基本数据类型之一,对应具有一个false值和一个true值。同样的,如果我们声明布尔类型的数据类型,我们不能用大写,而是小写boolean。
boolean默认的值是false,大家可以在jshell里面定义一个boolean 类型的变量试试。
基本数据类型:字符类型
Character类型,非常好理解。正如它的名字一般,就是字符类型。我们平时的大部分输入都是这种类型。Java里,字符类型是遵循Unicode字符集的。
我们声明一个字符变量,使用char,默认值是'\000',和Python一样用引号作为字符串的标识。
大家一定很好奇,Java这种强类型语言,如果赋值不属于对应的类型,会不会报错呢?这里实测一下:
所以,我们尽量不要踩雷,老老实实的使用对应的数据类型来定义不同类型的数据。
Java15变量竟然没什么区别,八大基本数据类型你知道吗?的更多相关文章
- linux系统中关于shell变量$*与$@的区别
在我们初学linux系统shell时,可能会感觉$@与$*没什么区别,如下面shell脚本: #!/bin/bash# name:a.sh # echo 'this script $* is: '$* ...
- Java的八大基本数据类型
Java的八大基本数据类型 前言 Bit是计算机存储数据的基本单元,bit叫做位,也被称作比特位. Byte意为字节,1Byte=1字节,一字节可以存储八个二进制位的数字, 即为1Byte=8bit. ...
- java 变量的定义 类型转换 基本的数据类型
package com.aaa.zxf.ajax.test; import org.junit.Test; /** * 六. * 如何在ideal的maven项目中导入 Test 测试类? * * * ...
- 事实证明,abstract类除了不能用new实例化和类没什么区别
abstract类是抽象类,不能够实例化,大家都知道,abstract类往往和接口interface一块儿使用,针对接口中一些公共的方法进行实现,然后实体类去继承抽象类和接口.虽然abstract类不 ...
- sqlserver中表变量和变量表之间区别
sqlserver中表变量和变量表之间区别
- java中八大基本数据类型详解
1.基本数据类型的分类 java中的类型分为基本数据类型和引用类型,今天我们讨论的是java中的八大基本数据类型. 基本数据类型可以分为三类:1.数值类型.2.字符类型.3.布尔类型. 数值类型又分为 ...
- Java——静态变量/方法与实例变量/方法的区别
静态只能调用静态 非静态: 对象名.方法名 package ti; //通过两个类 StaticDemo.LX4_1 说明静态变量/方法与实例变量/方法的区别. class StaticDemo { ...
- JAVA中局部变量 和 成员变量有哪些区别
JAVA中局部变量 和 成员变量有哪些区别 1.定义的位置不一样<重点>***局部变量:在方法的内部成员变量:在方法的外部,直接写在类当中 2.作用范围不一样<重点>***局部 ...
- c# 事实证明,abstract类除了不能用new实例化和类没什么区别
abstract类是抽象类,不能够实例化,大家都知道,abstract类往往和接口interface一块儿使用,针对接口中一些公共的方法进行实现,然后实体类去继承抽象类和接口.虽然abstract类不 ...
随机推荐
- 【ORA】ORA-27101快速处理方法
今天朋友的数据库出了问题,报错如下: 这个问题主要是是spfile和pfile文件不一致导致的, 生成一个pfile,完了用pfile启动数据库即可 SQL> create pfile '/ho ...
- 【Oracle】修改列的大小
alter table 表名 modify column_name varchar2(32) alter table 表名 modify (column_name1 varchar(20) defa ...
- RecyclerView 源码分析(二) —— 缓存机制
在前一篇文章 RecyclerView 源码分析(一) -- 绘制流程解析 介绍了 RecyclerView 的绘制流程,RecyclerView 通过将绘制流程从 View 中抽取出来,放到 Lay ...
- Elasticsearch从入门到放弃:浅谈算分
今天来聊一个 Elasticsearch 的另一个关键概念--相关性算分.在查询 API 的结果中,我们经常会看到 _score 这个字段,它就是用来表示相关性算分的字段,而相关性就是描述一个文档和查 ...
- Vue基础之Vue组件
Vue基础之Vue组件 // 组件是可以复用的Vue实例! // 可以把经常重复的功能封装为组件!
- 计算机网络第7版 PDF+ 计算机网络释疑与习题解答第7版 PDF 计算机网络 课后答案
网上全都是要钱的,要么就是第六版的,属实被恶心到了. 链接:https://pan.baidu.com/s/15jCOH6LXnQfB1RwGpNgBFg提取码:byMB
- 如何让淘宝不卡顿? 读写比例 动态扩容 分布式化路线 mysql 优化
作为数据库核心成员,如何让淘宝不卡顿? https://mp.weixin.qq.com/s/l-qXV8NI6ywnUvp3S6an3g
- Oracle 0至6级锁的通俗解释及实验案例_ITPUB博客 http://blog.itpub.net/30126024/viewspace-2156232/
Oracle 0至6级锁的通俗解释及实验案例_ITPUB博客 http://blog.itpub.net/30126024/viewspace-2156232/
- 实用 nginx.conf 用法大全
服务器拒绝非GET方式请求保障安全性,因为 DELETE.POST.PUT 是可以修改数据的. Nginx 解决方案 在 nginx.conf 配置文件的网站配置区域中添加如下代码片段: 非 GET ...
- Redis集群拆分原则之AKF
当我们搭建集群的时候,首先要想明白需要解决哪些问题,搞清楚这个之前,想想单节点.单实例.单机有哪些问题? 单点故障 容量有限 可支持的连接有限(性能不足) ...... 为了解决这些问题,我们需要对服 ...