`
zhimaruanjian
  • 浏览: 33017 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

小白——java基础之数据类型

 
阅读更多

 

 PS:此文章为小白提供,大佬请绕道!!!!

首先特别感谢大才哥给我提供这个平台,未来我希望把java这个版块的内容补全。

今天要讲的是数据类型,最最最基础的内容~

java标识符、数据类型、关键字

开始我们先看下如何注释java代码。

标识符:类名,方法名,变量。

有三种方式分别为

//表示注释一行代码

/*

表示注释一行或者多行代码

 

(从上面到下面都是注释的代码)

*/

下面还有一种注释方式叫做文档注释。

/**

通常这样表示

 

 

*/

文档注释一般写在代码开头用来简述你所做程序的具体内容,在这之前我们首先看一下javadoc命令,我先编写一个简答的代码:

package com.briup.chap02;

/**

@author Twinkle

@version 1.0

 

 

 

It’s a text file

 

*/

public class PrimitiveType{

public static void main(String[] args){

byte b = 123;

byte b1 = 300;

}

 

}

 我们javadoc -d 生成目录 编译文件

编译成功后,我们打开刚刚生成doc里打开index.html看一下,大概是这样的:

类概要

类:

Student

说明:

It’s a text file

这样我们就可以看出文档注释的意义了,他可以显示在你编译出来文档的说明里,但有人会发现为啥我们编写出来的author没有出来呀?

因为他的最前面有一个@,我们需要编写的时候把它加上去才能显示出来,现在我们来试一下:

–javadoc -d bin/doc-author -version src/PrimitiveType.java,

 这样作者和版本信息就出来了。

 

一.类名

这边我们要记住一些代码的基本格式:

类名的写法:Student(前面首字母要大写)

方法和变量的写法:genderItem(前面单词小写,后面单词开头要大写)

常量写法:MAX_PAGE(常量大写,中间一般加下划线)

 

二.关键字

关键字其实就是电脑里面已经定义好的有特殊意义的标识符,像int,for,double什么的都是关键字。具体意思请百度一下~

 

三.数据类型

数据类型是这篇文章的重点,我们来看下这些基本的数据类型

类型 二进制位 例 范围

byte 8位 11111111~01111111 -2^7~2^7-1

short 16位 16个二进制代码 -2^15~2^15-1

int 32位 32个二进制代码 -2^31~2^31-1

long    64位 64个二进制代码 -2^63~2^63-1

浮点型:

float 32位 32个二进制代码

double 64位 64个二进制代码

布尔型:

boolean   只有false和true两种类型。

具体解释一下为什么会有这么多类型呢?而且二进制位为什么还不一样?

类型多的原因是因为有些数值本身就很小,传递给大的数据类型的话,虽然可以进去,但是有些二进制位就空闲了,占用了多余的内存却没有什么作用,所以才会有这么多的类型。

我们知道编程最终的目的是我们把代码传递给硬件,通过硬件来工作,但是呢,硬件只识别二进制代码,所以java会有一个把它的代码转化为二进制代码的过渡,上面的二进制位就是二进制码的数目,我们要想看他的范围有多大,可以这样算,二进制的第一位为标志符,通俗一点讲就是正负号,后面还有n位的话它的范围就是-|2^n|~|2^n-1|

如果我们定义的类型超出这个范围的话(也就是盆子里已经装满了东西如果再加),java就会报错,超出指定的范围,所以当我们定义数据类型的时候要搞清楚各数据类型的范围。

还有一个特殊的数据类型:char (‘字符’)

char的具体位数要结合unicode编码。问题又来了,unicode编码又是什么鬼!unicode编码是一个字符集,里面包含了中,日,韩,三种文字,我们可以通过char的方法来打印出字符:char(‘u\unicode编码’),unicode表具体百度一下哈~

数据类型转换:

显式转换:也就是强制转换

隐式转换:由JVM虚拟机自行转换

数据类型的强制转换:int a = (强制转换类型)b

转换规则:从存储范围大的类型到存储范围小的类型。

具体规则为:double→float→long→int→short(char)→byte

byte b =10;

byte a = (int) b;

如果我们把int类型的b转换给byte类型的a的话,会出现溢出现象,所以会报错。

所以正确强制转换的方式为~~:

byte b = 10;

int(或者更大的类型) a =(int) b;

java基本的数据类型就讲到这里啦~

分享到:
评论

相关推荐

    Java基础教程1

    在数据类型方面,Java有基本数据类型(如int、float、boolean等)和引用数据类型(如对象和数组)。运算符包括算术运算符、关系运算符、逻辑运算符等,用于构建复杂的表达式。选择结构(如if-else语句)和循环结构...

    基于JAVA实现某店POS积分管理系统-积分失效与数据分析模块的实现毕业设计(源代码+论文)

    【作品名称】:基于JAVA实现某店POS积分管理系统——积分失效与数据分析模块的实现【毕业设计】(源代码+论文) 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、...

    spring——第十四节素材.rar

    Java是一种多用途、面向对象的编程语言,被广泛用于后端服务器开发、移动应用开发(Android)、大数据处理等领域。 根据压缩包子文件的文件名称列表,只有一个“素材”文件,这意味着压缩包可能包含了多种类型的...

    java面向对象编程小程序(家庭记账系统)

    封装是将数据和操作这些数据的方法打包到一个独立的单元——对象中,这样可以隐藏实现细节,提高代码的安全性和复用性。继承允许子类继承父类的属性和方法,减少了代码重复,增强了代码的可扩展性。多态则允许不同的...

    从 0 开始带你成为JVM实战高手.txt

    2. **JVM的组成**:JVM主要由三部分组成——类加载器(Class Loader)、执行引擎(Execution Engine)以及运行时数据区(Runtime Data Area)。 - **类加载器**:负责读取Java类文件中的字节码,并将其转换为JVM...

    50个经典面试问答——你懂得

    2. **数据结构与算法**: - 什么是二叉树?如何进行前序、中序和后序遍历? - 描述栈和队列的基本操作,举例说明其应用。 - 如何在排序数组中查找一个元素?最快的方法是什么? 3. **网络协议**: - 描述TCP/IP...

    Kotlin极简教程--陈光剑版

    - **集合类型**:包括List, Set, Map等,支持Java集合框架。 - **扩展函数与操作符**:可以为集合添加新功能,如`map()`, `filter()`, `reduce()`等函数。 - **流式API**:通过链式调用来处理集合,提高代码...

    可视化Java快速开发平台,强大工作流引擎.docx

    《可视化Java快速开发平台——以XJR平台为例》 在当今的互联网时代,软件开发的效率和灵活性成为了企业关注的重点。XJR快速开发平台作为一款强大的JAVA/.NETCORE双平台支持工具,以其丰富的功能和高效的开发模式,...

    Day07实习日记1

    我们可能涉及了SQL语言,包括数据表的创建、字段定义、数据类型选择以及关系的建立等。 二、JDBC操作 数据库知识掌握后,我们进一步学习了Java Database Connectivity (JDBC)。JDBC是Java中用于连接数据库的标准...

    Minecraft代码.rar

    学习包括类、对象、数据类型、控制结构、函数等基本概念,以及异常处理和文件I/O等进阶内容。 二、Minecraft的Modding "Minecraft Mod"(模组)是玩家对游戏进行修改和扩展的方式。通过编写代码,我们可以创建新的...

    jdk1.6.0_13.tar.gz

    Java开发工具包(Java Development Kit,简称JDK)是用于编写、编译、测试和运行Java应用程序的软件包。在本例中,我们讨论的是JDK的特定版本——"jdk1.6.0_13",这是一个针对Unix/Linux系统的tar.gz压缩文件。这种...

    基于jquery的轻量级jquery数字加减输入框

    1.本插件基于jquery基础封装的轻量级插件,使用时只需导入num-alignment.js即可; 2.插件设置默认值:{"step" : 0.1, "min" : 0, "max" : 99, "digit" : 1}; 3.可以自定义设置类型 ...作者信息:wagk(一个java小白)

    基于jquery的轻量级jquery数字加减输入框 支持ie8

    1.本插件基于jquery基础封装的轻量级插件,使用时只需导入num-alignment.js即可; 2.插件设置默认值:{"step" : 0.1, "min" : 0, "max" : 99, "digit" : 1};...作者信息:wagk(一个java小白) QQ:773279595

    基于SSM的网上二手书店-使用技术:SSM、LayUI、echarts+源代码+文档说明+数据库sql

    ​ (6) 二手书类型信息,包括的数据项有:二手书类型编号、二手书类型名称、备注。 ​ (7) 订单信息,包括的数据项有:订单编号、用户编号、二手书编号、订单时间。 ​ (8) 购物车信息,包括的数据项有:...

    spring-framework-master.zip

    2. **Spring 容器**:Spring 提供了两种类型的容器——BeanFactory 和 ApplicationContext。BeanFactory 是基础容器,负责管理 Bean 的生命周期和依赖关系;ApplicationContext 增加了更多企业级服务,如消息支持、...

    安卓学习课件

    Android,作为全球最受欢迎的智能手机操作系统之一,为开发者提供了丰富的平台来构建创新的应用程序。本课件以实践为导向,是专为Android初学者设计的一套全面学习资源,旨在帮助“安卓小白”快速入门并掌握基本的...

    发明专利申请的参考范文

    本文档详细介绍了一种创新的方法——**基于特征融合的代码克隆检测方法**。该方法旨在提高代码克隆检测的准确性和效率,尤其适用于软件开发和维护过程中对代码重复性的检查。 #### 二、核心概念与背景 **代码克隆*...

    SharedPreferences简单实例

    在Android开发中,SharedPreferences是应用数据存储的一种常见方式,它主要用来保存轻量级的数据,如用户设置、应用状态等。SharedPreferences提供了键值对的形式来持久化数据,这些数据会以XML格式存储在设备的文件...

    springmvc独立运行.zip

    8. **转换器与格式化器(Converter & Formatter)**:这些组件用于在模型和HTTP请求之间自动转换数据类型,如将字符串转换为日期。 9. **MessageConverter**:对于RESTful API,Spring MVC使用MessageConverter处理...

    qtp实用教程,还有具体的例子

    它支持多种应用程序类型,如Web、Java、.NET等,并能自动生成测试脚本,简化测试过程。 2. **工作环境**:QTP由两部分组成——Test Lab(测试实验室)和Test Expert(测试专家)。Test Lab用于管理和运行测试,而...

Global site tag (gtag.js) - Google Analytics