Java知识系统回顾整理01基础03变量02基本变量类型
一、变量类型分类
一个变量的类型,决定了该变量可以包含什么样的值。
- Java中有八种基本类型,都是Java语言预先定义好的,并且是关键字。
- 这八种基本类型分别是:
- 整型 (4种)
- 字符型 (1种)
- 浮点型 (2种)
- 布尔型(1种)
二、整型
- 整型变量用于存放整数
- byte
- short
- int
- long
- 区别在于不同类型的整型,最大值,最小值不一样
- 如果试图给byte类型的变量赋予超出其范围的值,就会产生编译错误,这个时候就需要进行类型转换
public class HelloWorld{ public static void main(String[] args){ byte b = 1; short s = 200; int i = 300; long l = 400; /*如果试图给byte类型的变量赋予超出其范围的值,就会产生编译错误*/ byte b2 = 200; } } |
三、字符型
- char类型用于存放一个字符,值用单引号'表示 (双引号表示字符串)
- 其长度和short一样,也是16位的
- 只能存放一个字符,超过一个字符就会产生编译错误
public class HelloWorld{ public static void main(String[] args){ char c = '新'; //char 只能存放一个字符,超过一个字符就会产生编译错误 char c2 = '新疆'; //报错 char c3 = 'xj'; //报错 } } |
四、浮点型
- 浮点数类型有两种
- float 长度为32位
- double 长度为64位
- 注意:默认的小数值是double类型的
- 所以 float f = 54.321会出现编译错误,因为54.321的默认类型是 double,其类型 长度为64,超过了float的长度32
- 在数字后面加一个字母f,直接把该数字声明成float类型
- float f2 = 54.321f,
- 这样就不会出错了
public class HelloWorld{ public static void main(String[] args){ double d = 123.45; //该行会出现编译错误,因为54.321是double型的 float f = 54.321; float f2 = 54.321f; } } |
五、布尔型
- 布尔型用于表示真假
- 其长度为1
boolean b1 = true; boolean b2 = false; |
- 分别代表真假
- 虽然布尔型真正存放的数据是0(false) 1(true)
- 但是,不能直接使用0 1 进行赋值
public class HelloWorld { public static void main(String[] args) { boolean b1 = true; boolean b2 = false; // 虽然布尔型真正存放的数据是0(false) 1(true) // 但是,不能直接使用0 1 进行赋值 boolean b3 = 1; } } |
六、String类型
- String类型其实并不是基本类型,但是它是如此广泛的被使用,常常被误以为是一种基本类型。
- String类型是Immutable的,一旦创建就不能够被改变,请参考String
public class HelloWorld { public static void main(String[] args) { String str = "Hello Java"; } } |
七、练习
题目:
分别为如下值,找到合适的类型来定义
3.14
2.769343
365
12
'吃'
false
"不可描述"
比如3.14就使用double
double a = 3.14; |
官方答案:
public class HelloWorld { public static void main(String[] args) { double pi = 3.14; double e = 2.769343; short days = 365; byte months = 12; char chi = '吃'; boolean die = false; String fucking = "不可描述"; } } |
个人整理答案:
Java知识系统回顾整理01基础03变量02基本变量类型的更多相关文章
- Java知识系统回顾整理01基础03变量03字面值
一.字面值定义 创建一个Hero对象会用到new关键字,但是给一个基本类型变量赋值却不是用new. 因为基本类型是Java语言里的一种内置的特殊数据类型,并不是某个类的对象. 给基本类型的变量赋值的 ...
- Java知识系统回顾整理01基础03变量07final关键字
一.final赋值 final 修饰一个变量,有很多种说法,比如不能改变等等 准确的描述是 当一个变量被final修饰的时候,该变量只有一次赋值的机会 二.在声明的时候赋值 i已经被赋值为5,所以这里 ...
- Java知识系统回顾整理01基础03变量06变量的作用域
一.变量根据所处的位置对应不同的名称 变量处于不同的位置,有不同的名称 名称分别是 字段,属性 参数 局部变量 不同名称的变量,其作用域是不一样的 二.字段,属性,Field 当一个变量被声明在类下 ...
- Java知识系统回顾整理01基础03变量05变量命名规则
一.命名规则 变量命名只能使用字母 .数字. $. _ 变量第一个字符 只能使用: 字母. $. _ 变量第一个字符 不能使用数字 注:_ 是下划线,不是-减号或者-- 破折号 int a= 5; i ...
- Java知识系统回顾整理01基础03变量04类型转换
一.不同类型之间的数据可以互相转换,但是要满足一定的规则 二.数据类型转换规则 转换规则如图所示 精度高的数据类型就像容量大的杯子,可以放更大的数据 精度低的数据类型就像容量小的杯子,只能放更小的数 ...
- Java知识系统回顾整理01基础03变量01变量定义
定义: 变量:用来命名一个数据的标识符 一.什么是变量? 用具体实例定义变量 变量的定义是: 用来命名一个数据的标识符 1949 这是一个数字,代表某年 如果要命名这个数字,在java里就会写成: i ...
- Java知识系统回顾整理01基础03变量09块
一.定义 块:从{ 开始 到对应的} 结束,即一个块 public class HelloWorld { //类对应的块 public static void main(String[] args) ...
- Java知识系统回顾整理01基础03变量08表达式
一.以 ; 结尾的一段代码,即为一个表达式 表达式是由变量.操作符以及方法调用所构成的结构.如下所示: int i = 5; System.out.println(5); 都是表达式 public c ...
- Java知识系统回顾整理01基础04操作符02关系操作符
一.关系操作符 关系操作符:比较两个变量之间的关系 > 大于 >= 大于或等于 < 小于 <= 小于或等于 == 是否相等 != 是否不等 public class Hell ...
随机推荐
- PCIe例程理解(一)用户逻辑模块(接收)仿真分析
前言 本文从例子程序细节上(语法层面)去理解PCIe对于事物层数据的接收及解析. 参考数据手册:PG054: 例子程序有Vivado生成: 为什么将这个内容写出来? 通过写博客,可以检验自己理解了这个 ...
- QT_QGIS_基本使用
QT_QGIS_基本使用 1.新建画布 2.添加矢量图层 1.打开矢量图层 2.新建矢量图层 1.添加几何要素--点 2.添加几何要素--线 3.添加栅格图层 1.打开栅格图层 小 ...
- 万字长文,一篇文章带你入门Python
注释 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却不知道如何去学习更加高深的知识.那么针对这三类人,我给大家提供 ...
- android,在java代码中,如何给textview设置不同的颜色,以及引用color中资源设置颜色
textV.setTextColor(Color.parseColor("#FF0000")); <pre name="code" class=" ...
- openssl1.0在mac下的编译安装(踩坑精华)
之前做了一次brew版本升级,然后用pip3安装的一个python命令就无法执行了(涉及到openssl库),执行就会报一个错误. ImportError: dlopen(/usr/local/Cel ...
- openshift搭建私有registry
1.创建registry服务器 (1)安装需要的包 yum -y install podman httpd-tools (2)创建registry目录 mkdir -p /opt/registry/{ ...
- 12_进程,线程,协程,IO多路复用的区别
1.进程 1.进程可以使用计算机多核 2.进程是资源分配的单位 3.进程的创建要比线程消耗更多的资源效率很低 4.进程空间独立,数据安全性跟好操作有专门的进程间通信方式 5.一个进程可以包含多个线程, ...
- JVM学习第三天(JVM的执行子系统)之类加载机制补充
昨晚没看完,今天继续 系统的类加载器 对于任意一个类,都需要由加载它的类加载器和这个类本身一同确立其在Java虚拟机中的唯一性,每一个类加载器,都拥有一个独立的类名称空间.这句话可以表达得更通俗一些: ...
- SpringCloud Gateway高阶之Sentinel限流、熔断
前言 为什么需要服务熔断和降级?微服务是当前业界的一大趋势,原理就是将单一职责的功能模块独立化为子服务,降低服务间的耦合,服务间互相调用.但是这样也会出现一些问题: 上图中大量微服务互相调用,存在大量 ...
- CDH5.16.1集群企业真正离线部署
一.准备工作 1.离线部署主要分为三块: MySQL离线部署 CM离线部署 Parcel文件离线源部署 2.规划 节点 MySQL部署组件 Parcel文件离线源 CM服务进程 大数据组件 hadoo ...