一、介绍

变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。

内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。

Java语言提供了八种基本类型。六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型。

byte:

  • byte数据类型是8位、有符号的,以二进制补码表示的整数;
  • 最小值是-128(-2^7);
  • 最大值是127(2^7-1);
  • 默认值是0;
  • byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一;
  • 例子:byte a = 100,byte b = -50。

short:

  • short数据类型是16位、有符号的以二进制补码表示的整数
  • 最小值是-32768(-2^15);
  • 最大值是32767(2^15 - 1);
  • Short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一;
  • 默认值是0;
  • 例子:short s = 1000,short r = -20000。

int:

  • int数据类型是32位、有符号的以二进制补码表示的整数;
  • 最小值是-2,147,483,648(-2^31);
  • 最大值是2,147,483,647(2^31 - 1);
  • 一般地整型变量默认为int类型;
  • 默认值是0;
  • 例子:int a = 100000, int b = -200000。

long:

  • long数据类型是64位、有符号的以二进制补码表示的整数;
  • 最小值是-9,223,372,036,854,775,808(-2^63);
  • 最大值是9,223,372,036,854,775,807(2^63 -1);
  • 这种类型主要使用在需要比较大整数的系统上;
  • 默认值是0L;
  • 例子: long a = 100000L,Long b = -200000L。

float:

  • float数据类型是单精度、32位、符合IEEE 754标准的浮点数;
  • float在储存大型浮点数组的时候可节省内存空间;
  • 默认值是0.0f;
  • 浮点数不能用来表示精确的值,如货币;
  • 例子:float f1 = 234.5f。

double:

  • double数据类型是双精度、64位、符合IEEE 754标准的浮点数;
  • 浮点数的默认类型为double类型;
  • double类型同样不能表示精确的值,如货币;
  • 默认值是0.0d;
  • 例子:double d1 = 123.4。

boolean:

  • boolean数据类型表示一位的信息;
  • 只有两个取值:true和false;
  • 这种类型只作为一种标志来记录true/false情况;
  • 默认值是false;
  • 例子:boolean one = true。

char:

  • char类型是一个单一的16位Unicode字符;
  • 最小值是’\u0000’(即为0);
  • 最大值是’\uffff’(即为65,535);
  • char数据类型可以储存任何字符;
  • 例子:char letter = ‘A’。

下图是java的基本数据类型

二、笔记

package com.hgd.study;

/**
* java的数据类型
* @author HuTiger
*
*/
public class DataType { public static void main(String[] args) {
//定义一个数据类型的语法
/*
* 1.数据类型 变量名 =字面
* 2.数据类型 变量名;
* 变量名=字面1
* 变量名=字面2
* 变量名=字面3
*/ /*
* long的范围 -2^63 -->2^63-1
* int范围-2^31 -->2^31-1
* short范围-2^15 -->2^15-1
* byte范围 -2^7 -->2^7-1
* float范围2^127 -->2^149-1
*/
long lmin=-9223372036854775808l;//定义一个long的类型要以l结尾不区分大小写
long lmax=9223372036854775807l; float f=9.98f;//定义单精度浮点型需要在后面加上f不区分大小写
double d=95.00d;//定义双精度浮点型需要在后面加上f不区分大小写 boolean fals=false;//布尔类型
System.out.println(fals);//false
fals=true;//变量的字面值是可以改变的
System.out.println(fals);//true //char类型
char c=' ';
c='1';
c='人';
//----------------------练习
int x=1;
System.out.println(x);
char y ='1';
System.out.println(y);
//java是一个严格区分数据类型语言
System.out.println(x+2);//结果=3
System.out.println(y+2);//结果=51
}
}

Java学习笔记之:Java的数据类型的更多相关文章

  1. java学习笔记(3)数据类型、源码、反码、补码、精度损失、基本数据类型互相转换

    关于java中的数据类型: 1.数据类型的作用是什么? 程序当中有很多数据,每一个数据都是有相关类型的,不同数据类型的数据占用的空间大小不同. 数据类型的作用是指导java虚拟机(JVM)在运行程序的 ...

  2. Java 学习笔记(4)——java 常见类

    上次提前说了java中的面向对象,主要是为了使用这些常见类做打算,毕竟Java中一切都是对象,要使用一些系统提供的功能必须得通过类对象调用方法.其实Java相比于C来说强大的另一个原因是Java中提供 ...

  3. Java学习笔记之—Java基础

    将学习到的JAVA基础用xmind记录了下来,需要原件的可以私信

  4. Java学习笔记--通过java.net.URLConnection发送HTTP请求

    http://www.cnblogs.com/nick-huang/p/3859353.html 使用Java API发送 get请求或post请求的步骤: 1. 通过统一资源定位器(java.net ...

  5. java 学习笔记1 java语言概述及开发环境

    高级语言运行机制 高级语言按程序的执行方式分为编译型和解释型两种. java语言比较特殊,Java程序的执行必须经过先编译后解释的步骤. 1 编译生成字节码,只面向JVM(.class) 2Jvm执行 ...

  6. Java 学习笔记 (三) Java 日期类型

    以下内容摘自:  https://www.cnblogs.com/crazylqy/p/4172324.html import java.sql.Timestamp; import java.text ...

  7. JAVA学习笔记之JAVA 对象引用以及赋值

      关于对象与引用之间的一些基本概念. 初学Java时,在很长一段时间里,总觉得基本概念很模糊.后来才知道,在许多Java书中,把对象和对象的引用混为一谈.可是,如果我分不清对象与对象引用, 那实在没 ...

  8. 8.4(Java学习笔记)java脚本引擎(Rhino)

    一.java脚本引擎 java脚本引擎是沟通java和脚本语句之间的桥梁,可以通过对应的脚本引擎在java中调用各种脚本语言. 二.脚本引擎执行脚本代码 ScriptEngineManager:为Sc ...

  9. Java学习笔记四:Java的八种基本数据类型

    Java的八种基本数据类型 Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. Java基本类型共有八种,基本类型可以分为三类,字符类型char,布 ...

  10. Java学习笔记之——变量与数据类型、运算符

    一.变量 1.变量:变化的值 变量在代码运行期间,开辟了一块空间 .这块空间是有地址的,给这块取了个名字, 这个名字就叫做变量名,这块空间放的东西叫做变量值 2.变量的初始化: (1)先声明再赋值: ...

随机推荐

  1. 关于Protobuf在游戏开发中的运用

    最近在研究protobuf在项目中的使用,由于我们项目服务端采用的是C++,客户端是cocos2dx-cpp,客户端与服务端的消息传输是直接对象的二进制流.如果客户端一直用C++来写,问题到不大,但是 ...

  2. Win7下MongoDB安装

    一.下载MongoDB 下载地址:http://www.mongodb.org/downloads 注意:1.从2.2开始,MongoDB不再支持windows xp. 2.32位MongoDB最大支 ...

  3. Translation002—Package Index(Android包索引)

    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 看本翻译前请您注意: 本人初学android,可能有的翻译不是非常准确,但本人尽最大努力,不清楚处会做标记,并附 ...

  4. Query execution was interrupted, max_statement_time exceeded

    版本:5.6.16 群里看见一个问题,在备份的时候,报如下错误:[root@B28-19-75 bak]# mysqldump -root -p --single-transaction --mast ...

  5. Barracuda VS antelope

    version : 5.6.16-64.0-56-log Innodb 行存储:Innodb Plugin新引入Barracuda梭子鱼,包含Compressed和Dynamic两种行格式.而Comp ...

  6. Resource temporarily unavailable

    数据库版本:5.5.14 操作系统版本:contos 6.3 服务器256G内存,安装90个实例.通过脚本启动90个mysql数据库实例,会有几个实例无法启动,进程启动后直接被杀死.查看mysql日志 ...

  7. [SQL_Server_Question]Msg 1105无法为数据库 'tempdb' 中的对象分配空间,因为 'PRIMARY' 文件组已满

    错误消息: Msg 1105, Level 17, State 2, Line 266Could not allocate space for object 'dbo.Large Object Sto ...

  8. Ios拦截手机短信程序

    引用 1.手机要越狱,没有越狱的话,下面的可以不用看了!  2.IOS 要5.0以上,4.xx的同上  首先,声明下!由于公司移动开发的项目中,需要根据手机的内容进行逻辑处理,也就是要实现手机短信拦截 ...

  9. Setting composer minimum stability for your application

    Do you have a confusion of how do you determine the stability when using composer dependency manager ...

  10. java 不可变类型

    1. java不可变性初探 我们先看下面一个例子:代码如下: import java.math.BigInteger; public class BigProblem { public static ...