3 JAVA的基本变量类型
1. 数字
整数型
| 类型 | 字节数 | 范围 |
| int | 4 | -2^31~ 2^31-1 |
| short | 2 | -2^15~ 2^15 -1 |
| long | 8 | -2^63 ~ 2^63 -1 |
| byte | 1 | -2^8 ~ 2^7-1 |
其中, 10000000,定义为 - 2^7 = -128。00000000 定义为 0。如果赋值时越界了,那么java会默认将变量进行强制转为大类型的变量而报错:
package learnjava;
public class TestType {
public static void main(String args[])
{
byte a = -129;
System.out.println("a is "+ a);
}
}
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from int to byte. at learnjava.TestType.main(TestType.java:6)
tips: 区别于C++,java在不同平台,架构的CPU上,java的int始终对应于4字节。这使得程序在不同平台的机器上迁移不会应长度而报错。也是java优于C++的一个地方。
浮点数
分为float-4字节, double-8字节,两个类型,默认的实数为double型。可以通过加F,f来指定float类型。如3.14f,3.14F。一般使用double
型做开发。有时候会出现2.0-1.1=0.8999999999的情况,是因为计算机无法精确表示一个小数,只能有2的幂之和逼近。
2. 布尔
JAVA中的布尔逻辑类型为boolean,取值为 true,false。
3. 字符
JAVA中提取了String类作为字符串类型。这也是变量中,唯一需要大写的一个类型,String。
4.类型转换
java类型转换的核心原则之一,就是不溢出,可以由小转大。如 int 转 double。
5. 变量声明与初始化
可以一次声明多个变量
float a,b;
也可以在变量声明时初始化:
float a=3;
如果需定义常量,如Pi则可以加上final关键字,习惯上都会加上static 关键字,以节省内存,并使用大写标识:
final static double PI = 3.1415926
3 JAVA的基本变量类型的更多相关文章
- Java自学-基本变量类型
Java中的基本变量类型 一个变量的类型,决定了该变量可以包含什么样的值. Java中有八种基本类型,都是Java语言预先定义好的,并且是关键字. 这八种基本类型分别是: 整型 (4种) 字符型 (1 ...
- java基础--java.util.Date类型小结
首先先来了解一下Date数据类型: . Date类型通常要和另一个 java.text.SimpleDateFormat类联合使用. 把long-->Date: public Date(long ...
- java mysql 日期类型
mysql(版本:5.1.50)的时间日期类型如下: datetime 8bytes xxxx-xx-xx xx:xx:xx 1000-01-01 00:00:00到9999-12-31 23:59: ...
- 关于Java的基本类型
Java的基本类型分为整数型,浮点型,字符型,布尔型.顾名思义整数型用来表示整数,浮点型用来表示带小数的数,字符型用来表示字符.特殊的是布尔型用来表示逻辑上的true(真)和false(假),一般与分 ...
- Android java传递int类型数组给C
接着前面的文章<Android java传递int类型数据给C><Android java传递string类型数据给C>,继续实践 实现public native int[] ...
- Android java传递string类型数据给C
本文接着实现<Android java传递int类型数据给C>的还未实现的方法: public native String sayHelloInC(String s); 先贴一个工具方法, ...
- Android java传递int类型数据给C
本文根据<Android jni简便开发流程>中的开发流程来实现一个java传递int类型数据给C 新建项目,进行简单的布局 <LinearLayout xmlns:android= ...
- Java中静态类型检查是如何进行的
以下内容来自维基百科,关于静态类型检查和动态类型检查的解释: 静态类型检查:基于程序的源代码来验证类型安全的过程: 动态类型检查:在程序运行期间验证类型安全的过程: Java使用静态类型检查在编译期间 ...
- 关于java中Double类型的运算精度问题
标题 在Java中实现浮点数的精确计算 AYellow(原作) 修改 关键字 Java 浮点数 精确计算 问题的提出:如果我们编译运行下面这个程序会看到什么?publi ...
随机推荐
- VuforiaAR 教程
Vuforia AR不仅可以识别图片也可以识别三维物体 直接上步骤: 1)开发环境 unity2017直接集成了Vuforia AR开发环境,不过在安装时要选择此项,也可以后续去unity官网下载相 ...
- 面向对象之---this的用法
在绝大多数情况下,函数的调用方式决定了this的值 全局环境 无论是否在严格模式下,在全局执行环境中,this都指向全局对象· 在全局作用域中调用一个函数时,this总是指向Global对象(在浏览器 ...
- JS设置和获取盒模型的宽和高
JS设置和获取盒模型的宽和高 dom.style.width/height:只能取出内联样式的宽度和高度 dom.currentStyle.width/height:获取即时的计算的样式,但是只有IE ...
- 基于 HTML5 + WebGL 实现 3D 可视化地铁系统
前言 工业互联网,物联网,可视化等名词在我们现在信息化的大背景下已经是耳熟能详,日常生活的交通,出行,吃穿等可能都可以用信息化的方式来为我们表达,在传统的可视化监控领域,一般都是基于 Web SCAD ...
- Xcode添加 eclipse 删除行、复制行快捷键
在使用eclipse过程中,特喜欢删除一行和复制一行的的快捷键.而恰巧Xcode不支持这两个快捷键,再一次的恰巧让笔者发现了一个小窍门来增加这两个快捷键,以下是步骤: <p> </p ...
- Windows 程序包管理器 Chocolatey:一条命令装软件
Windows 程序包管理器 Chocolatey:一条命令装软件 本文原始地址:https://sitoi.cn/posts/46278.html 介绍 Chocolatey 是一种软件管理解决方案 ...
- Java序列化与反序列化三连问:是什么?为什么要?如何做?
Java序列化与反序列化是什么? Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程: 序列化:对象序列化的最主要的用处就是在传递和保存对象 ...
- Vim 便捷 | 自己的Vim
在.vimrc中安排自己的Vim set softtabstop=4 "将连续数量的空格视为一个制表符 set shiftwidth=4 "自动缩进所使用的空白数 set auto ...
- nginx目录安全设置
nginx目录安全设置<pre> location ~ /\. { deny all; }</pre>这样所有隐藏文件都不会以URL方式打开了
- jquery swiper3自定义切换效果的方法
jquery swiper3自定义切换效果的方法 <pre> <div class="swiper-slide"> <div class=" ...