java里的基本数据类型
java里一共有八大数据类型 boolean(未定) char(2字节) byte(1字节) short(2字节) int(4字节) long(8字节) float(4字节) double(8字节),还有与之对应的包装类 Boolean Character Byte Short Integer Long Float Double, 基本数据与包装类之间的转换叫做装箱与拆箱
Integer i = new Integer(10);//装箱这个在java1.5之前只能这样new一个出来
Integer i1 = 10;//java1.5之后可以直接这样初始化一个integer对象出来; Integer j = new Integer(10);
int k = j; //这叫做拆箱
int i 与Integer i 到底有什么区别呢,看程序:
Integer n1 = 127;
Integer n2 = 127;
Integer n3 = new Integer(10);
Integer n4 = 10;
System.out.println(n1.equals(n2));
System.out.println(n1==n2); System.out.println(n3==n4);
System.out.println(n3.equals(n4));
结果是true
true
false
true
java里"=="比较的是对象的地址,而equal比较的是内容,n3与n4比较的结果不以外,那么为什么n1跟n2 "=="比较也是true呢,看数值127 是byte的最大值,java里对于byte范围的数据因为使用多,所以这个对象会放到内存中保存,n1与n2指向的是同一个内存地址,但是超过127或者小于-128结果就是
Integer n1 = -129;
Integer n2 = -129;
Integer n3 = new Integer(10);
Integer n4 = 10;
System.out.println(n1.equals(n2));
System.out.println(n1==n2); System.out.println(n3==n4);
System.out.println(n3.equals(n4));
true
false
false
true
包装类有一些常用的方法,主要就是数据类型转换,除了boolean char之外的构造方法除了构造方法有两种,不过Float有三种。
数制转换方法,用Integer做例子。byteValue();doubleValue();floatValue;intValue;shorValue;这些方法都是拆箱,返回的都是基本数据类型。
反过来 valueOf(int i)是放回包装类的。
ps:基本数据类型转换遵循的原则:
1 容量小的类型自动转换成容量大的数据类型,数据类型按照容量大小排序是
byte,short,char<int<long<float<double; 注意这是是容量大小不是所占字节数
2 容量大的数据类型转换成容量小的数据类型时,要加上强制转换符,但是可能造成精度降低,或者溢出。
3 有多种数据类型混合运算是,系统将自动所有数据转换成最大的那个类型,然后进行运算。
4 实数常量,系统默认为double;
5 整数常量,系统默认为int;
所以long lg = 10000000000l;后面要加一个l,不然系统会保存因为默认为int就超出范围了
java里的基本数据类型的更多相关文章
- java里的基本数据类型和引用数据类型
一.基本数据类型: byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0 short:短整型,在内存中占16位,即2个字节,取值范围-32768 ...
- Java从零开始学四(数据类型)
一.Java数据类型划分 二.基本数据类型 No. 数据类型 大小/位 可表示的数据范围 1 long(长整数) 64 -9223372036854775808 ~ 92233720368547758 ...
- QVariant(相当于是Java里面的Object,起到一个数据类型“擦除”的作用,可以使用Q_DECLARE_METATYPE进行注册)
=QVariant= [%这个类型相当于是Java里面的Object,它把绝大多数Qt提供的数据类型都封装起来,起到一个数据类型“擦除”的作用.比如我们的 table单元格可以是string,也可以是 ...
- java的五种数据类型解析
不知道大家对java的简单数据类型是否了解,下面针对Java的五种类型简单数据类型表示数字和字符,进行详细的讲解和分析. 一.简单数据类型初始化 在Java语言中,简单数据类型作为类的成员变量声明时自 ...
- Java中的基本数据类型
什么是基本数据类型 就是我们在编程的时候经常需要用到的数据类型,如整型,浮点型等,把这些数据类型专门拿出来特殊对待,并想象成所谓的“基本类型”. Java中有哪些基本数据类型
- 转:JAVA里面的int类型 和Integer类型,有什么不一样
JAVA里面的int类型 和Integer类型,有什么不一样 原文链接:http://blog.csdn.net/wuxinliulei/article/details/11099565 java.l ...
- java里的静态成员变量是放在了堆内存还是栈内存
转自http://bbs.csdn.NET/topics/370001490 堆区: 1.存储的全部是对象,每个对象都包含一个与之对应的class的信息.(class的目的是得到操作指令) 2.jvm ...
- Java基础 变量和数据类型及相关操作
Java基本语法: 1):Java语言严格区分大小写,好比main和Main是完全不同的概念. 2):一个Java源文件里可以定义多个Java类,但其中最多只能有一个类被定义成public类.若源文件 ...
- JAVA里的别名机制
别名现象主要出现在赋值的问题上: 对基本数据类型的赋值是很简单的.基本数据类型存储了实际的数值,而并非指向一个对象的引用,所以在为其赋值的时候,是直接将一个地方的内容复制到了另一个地方.例如,对基本数 ...
随机推荐
- MySQL中删除重复数据的简单方法,mysql删除重复数据
MYSQL里有五百万数据,但大多是重复的,真实的就180万,于是想怎样把这些重复的数据搞出来,在网上找了一圈,好多是用NOT IN这样的代码,这样效率很低,自己琢磨组合了一下,找到一个高效的处理方式, ...
- jquery uploadify上传插件兼容火狐问题
jquery uploadify长传插件兼容火狐问题.因为现在火狐以不在默认安装flash插件.所以uploadify的flash版就需要安装flash插件.还可以成功. 可以到哪里下载安装:http ...
- php操作redis常用方法源代码
1,connect 描述:实例连接到一个Redis.参数:host: string,port: int返回值:BOOL 成功返回:TRUE;失败返回:FALSE 示例: <?php $redis ...
- EF中限制字段显示长度
在EF中有些添加的字段 文本显示超多文字,想截取显示又没有截取功能. 怎么办? 我们可以在EF中类的属性中设置 你想限制这个用户名只能有10个字符长度 public String UserName { ...
- Objective-C学习笔记_Xcode模拟命令行填入参数执行
菜单Product->Edit Scheme 左边找到run xxx,点击后再邮编选择Arguments面板中就可以设置Xcode在运行命令行app时模拟输入参数. 设置完成后再次run就会自动 ...
- C语言中的库是什么
在使用tc编写程序时,你或许对其中的*.lib文件产生疑问,这些lib文件有什么用途? 用C 语言编程时,通常要建立一些用户函数.如果这些函数具有通用性,一般的方法是将它们作成头文件,当需要时用“#i ...
- C语言中'\0'与'\n'
'\0'表示ASCII编号为0的字符,在C语言中最常用于代表字符串结束的标志.'\n'表示ASCII编号为13的字符,代表回车键,输出这个字符就会换一行. '\0'作为字符串的结束标志,本身会占用一个 ...
- hashcat
作者: 官网:https://hashcat.net/oclhashcat/ 功能:hash破解
- GBASE结构理解
GBASE数据库 8a 8a Cluster 8t 8m BI 8d 8 分析型数据库 分布式并行数据库集群 高端事务性数据库 高速内存数据库 可视商业智能 大型目录服务体系 硬加密安全数据库 数据分 ...
- hdu 3535 AreYouBusy 分组背包
AreYouBusy Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Probl ...