(6)java基础知识-基本数据类型、数据类型转换
一、基本数据类型
基本的数据类型一共有四类八种
1、整型
byte: 1字节 取值范围 -128~127
short: 2字节 取值范围 -32768~32767
int: 4字节 取值范围 负2的31次方到正的2的31次方减1
long: 8字节 取值范围 负2的63次方到正的2的63次方减1 长整型必须要有后缀L 例 400000L
取值范围计算方法
问:1个字节占8位,为什么byte类型取值范围是2的7次方而不是2的8次方?
答: 因为正负符号占了一位所以只剩下7位。(符号位占的是从左往右数第一位,也就是最高位)
问:为什么正数范围要减去1
答:因为第一位是从零开始算起的。
2、浮点型
float (单精度): 4字节 取值范围 爱多少多少 必须接后缀F才能表示它是float类型 例:3.14F
double(双精度): 8字节 取值范围 爱多少多少 后缀D或者没后缀
3、逻辑型
boolean: 只有个两个值 ture和false
4、字符型
char: 2字节 取值范围是0-65535 没有负数 存储Unicode码,用单引号赋值。
(与C语言char的区别:C语言的char应用的是ASCII码 1个字节 范围0-127 )
程序中尽量避免使用char类型(java核心技术 卷1)
引申:这四类八种基本数据类型的数据都存放在栈内存空间,占一块内存。
二、数据类型转换
分为自动转换和强制转换
自动转换(隐式转换)
当把一个优先级低的类型赋值给优先级高的类型时就会进行自动转换
低---------------------------------------------高
byte,short,char<int <long < float < double
int、long、float、double按照取值范围大小排序
而前三个数据类型需要强制转换?????????????
顺序记不住? 网上有人这么记: 办事处in理发店。
强制转换(显示转换)
把取值范围大的类型转成取值范围小的类型需要进行强制转换。
用 ( )来进行数据的强制转换
例:
int a; double x=3.3; short y=3; a=(int)x+(int)3.5; a=(int)x+y;// y优先级低于a所以不需要转换
等号的右边完成强制后再赋值给左边。
注意:等号右边每一项(由加号连接的数字或变量)的优先级都必须小于等于等号左边变量的优先级,否则编译期间会报错。
(6)java基础知识-基本数据类型、数据类型转换的更多相关文章
- JAVA基础知识之数据类型
JAVA的数据类型知识点主要包括基本数据类型,包装类,字符串类(String,StringBuffer, StringBuilder区别和用法),数组,数据类型转换等等,暂时只想到这么多,后面会再补充 ...
- 01-Java基础知识:数据类型与变量、标识符、运算符、表达式
Java基础知识:数据类型与变量.标识符.运算符.表达式 一.数据类型 Java定义了基本数据类型.引用数据类型.自定义类型. 八种基本数据类型:byte (1). short (2). int ( ...
- 018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念
018 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 12 数据类型转换的基本概念 本文知识点:Java中的数据类型转换 类型转换 类型转换分类 2类,分别是: ...
- 019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例
019 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 13 数据类型转换的代码示例 本文知识点:Java中的数据类型转换案例 学习视频有误,导致没法写文,文章内容 ...
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
- java 基础知识二 基本类型与运算符
java 基础知识二 基本类型与运算符 1.标识符 定义:为类.方法.变量起的名称 由大小写字母.数字.下划线(_)和美元符号($)组成,同时不能以数字开头 2.关键字 java语言保留特殊含义或者 ...
- Java基础知识回顾之七 ----- 总结篇
前言 在之前Java基础知识回顾中,我们回顾了基础数据类型.修饰符和String.三大特性.集合.多线程和IO.本篇文章则对之前学过的知识进行总结.除了简单的复习之外,还会增加一些相应的理解. 基础数 ...
- Java基础知识总结(超级经典)
Java基础知识总结(超级经典) 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java ...
随机推荐
- 【转】android makefile文件分析
Makefile的规则如下: target ... : prerequisites ... command ... ... target可以是一个目标文件,也可以是Object File(例如hell ...
- 云计算之路-阿里云上:OCS问题的进展以及11:30-11:50遇到的问题
(上图是今天出问题期间Web服务器性能监控图,紫色表示的是Request Execution Time) 昨天我们发布了一篇博客分享了我们这两天遇到的OCS(开放缓存服务)问题,详见云计算之路-阿里云 ...
- KVO的底层实现原理?如何取消系统默认的KVO并手动触发?
KVO是基于runtime机制实现的 当某个类的属性对象第一次被观察时,系统就会在运行期动态地创建该类的一个派生类(该类的子类),在这个派生类中重写基类中任何被观察属性的setter 方法.派生类在被 ...
- Visual Studio 2017 的 JavaScript 调试功能的关闭
关闭方法其实很简单,Options => Debugging => General => Enable JavaScript debugging for ASP.NET (Chrom ...
- python实现单链表的反转
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #!/usr/bin/env python #coding = utf-8 ...
- 编译caffe遇到的问题
1. failed to see hdf5.h https://askubuntu.com/questions/629654/building-caffe-failed-to-see-hdf5-h 2 ...
- UVa 11806 - Cheerleaders (组合计数+容斥原理)
<训练指南>p.108 #include <cstdio> #include <cstring> #include <cstdlib> using na ...
- BZOJ 1912:[Apio2010]patrol 巡逻(树直径)
1912: [Apio2010]patrol 巡逻 Input 第一行包含两个整数 n, K(1 ≤ K ≤ 2).接下来 n – 1行,每行两个整数 a, b, 表示村庄a与b之间有一条道路(1 ≤ ...
- hdu 1564 Play a game (博弈)
Play a game Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- 洛谷树剖模板题 P3384 | 树链剖分
原题链接 对于以u为根的子树,后代节点的dfn显然比他的dfn大,我们可以记录一下回溯到u的dfn,显然这两个dfn构成了一个连续区间,代表u及u的子树 剩下的就和树剖一样了 #include< ...