● boolean类型不可以转换成其他的数据类型;
● 整形、字符型、浮点型的数据在混合运算中相互转换,转换时遵循如下规则:
■ 容量小的类型自动转换成容量大的数据类型;数据类型按容量大小排序如下: byte,short,char-->int->long-->float-->double
要注意的是byte,short,char之间不会相互转换,
他们三者在计算时首先转换 为int类型。byte的取值范围是-128~127
■ 容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精
度降低或者溢出;使用时候要格外注意。
■ 有多种类型的数据混合运算时,系统首先自动地将所有类型转换成容量最大的那个
数据类型,然后再进行计算。
●
实数常量(如:1.2)默认为double。(故:float f = 22.2;是错误的)
●
整数类型(如:123)默认为int。
●
可以直接把一个int类型的数赋值给一个byte,short,char类型的变量,但是不能超过其对应的范围(直接截取最后的一个字节)。
● 要理解容量大的数强制转换成容量小的数的实质是截取后面的字节(如:long类型转换成int类型的时候,是直接取long类型中4个字节),但是double转换成float类型,由于double中存在小数点的情况,因此直接加强制转换时转换不过来的(infinity)。
● long类型8个字节,int类型4个字节,short类型2个字节,byte类型1个字节。
Float类型4个字节,double类型8个字节。
l 典型问题:
(1) double d = 1e200;float f=(float)d;//打印f显示Infinity;
(2) float f = 11.1//错误;默认为double类型,应该修改为float f = 11.1f;
(3)public class TestDataKind {
public static void main(String[] args) {
byte b = 44;
char c = 'b';
short s = 1024;
int i = 40000;
long l = 12463l;
float f = 35.67f;
double d = 3.1234d;
/*
* (f * b)时,b自动提升为float类型 (l*f)时,l自动提升为float类型 (i/c)
*时,c自动提升为int类型
* (d*s)时,s自动提升为double类型 再相加时,中间结果都变为了double类型。
* 这里result只能声明为double类型,result声明为其他类型会出错,除非进行
*强制类型转换
*/
double result = (f * b) + (l * f) + (i / c) - (d * s);
System.out.print((f * b) + " + " + (l * f) + " + " + (i /
c) + " - " + (d * s));
System.out.println(" = " + result);
}
}
(4) byte b1 = (byte)128;
byte b2 =(byte)-129;
System.out.println(b1);
System.out.println(b2);
打印结果:-128和127
分析:byte只有八位,只能表示-128—127;计算机中负数的存储方式是补码。对负数的绝对值的二进制值取反,再加一,即为负数的二进制码。如:-1的绝对值1的二进制码为00000001,取反得到11111110,再加一为11111111。-128的绝对值128的二进制码为10000000,取反得到01111111,再加一为10000000,正好是Byte的最大表示范围。而-129的绝对值129的二进制码为10000001,取反后得01111110,加一后得01111111,最后结果就是127
分享到:
相关推荐
本篇学习笔记将详细解析Java中的数据类型转换及其相关的知识点。 首先,我们需要了解Java的基本数据类型,它们分为两大类:整型和浮点型。整型包括byte、short、int和long,浮点型包括float和double。此外,还有...
本示例将详细讲解如何将Java的基本数据类型转换为JSON格式,这对于Android开发者尤其重要,因为Android应用经常需要与服务器通过JSON进行数据交换。 首先,你需要引入一个JSON库来帮助完成转换。在Java中,常用的库...
本实验报告将介绍Java中的基本数据类型、数据类型转换、控制台输入输出方法和对话框输入输出方法。 一、基本数据类型 Java中的基本数据类型包括整型(int)、浮点型(float、double)、布尔型(boolean)、字符型...
java中数据类型转换 收藏 java中数据类型转换 1如何将字串 String 转换成整数 int? A. 有两个方法: 1). int i = Integer.parseInt([String]); 或 i = Integer.parseInt([String],[int radix]); 2). int i =...
通过数据类型转换,可以确保不同数据类型之间的兼容性,并满足特定场景下的需求。本文将详细介绍Java中常见的数据类型及其之间的转换方法。 #### 1. `short` 到 `int` **示例代码**: ```java short shortVar = 0;...
### Java基本数据类型详解 #### 一、引言 在Java编程语言中,理解基本数据类型对于编写高效、可靠的程序至关重要。本文将详细介绍Java中的基本数据类型,包括它们的定义、范围、存储空间以及如何在实际开发中正确...
一些初学JAVA的朋友可能会遇到JAVA的数据类型之间转换的苦恼,例如,整数和float,double型之间的转换,整数和String类型之间的转换,以及处理、显示时间方面的问下面笔者就开发中的一些体会介绍给大家。 我们知道,...
### JAVA数据类型转换详解 #### 一、引言 在Java编程中,数据类型转换是一项基本且重要的技能。本文档将详细介绍Java中的数据类型转换,包括简单数据类型之间的转换、字符串与其他数据类型的转换以及一些实用的...
在Java编程语言中,数据类型转换是至关重要的概念,它涉及到不同类型的变量之间的相互转化。Java分为两大类数据类型:基本数据类型(如int、char、float等)和引用数据类型(如类、接口和数组)。本文将深入探讨Java...
在Java编程语言中,数据类型转换是编程过程中常见的操作,主要涉及基本数据类型之间的转换以及基本数据类型与字符串之间的转换。下面将详细讲解这些转换方式。 1. **基本数据类型的转换** Java中的基本数据类型...
#### 二、Java数据类型转换概述 Java中的数据类型转换主要包括以下三类: 1. **简单数据类型之间的转换** 2. **字符串与其他数据类型的转换** 3. **其他实用数据类型的转换** 接下来,我们将逐一探讨这些转换方式...
7. 数据类型转换: - 自动类型转换:当一个较小的数据类型赋值给一个较大的数据类型时,系统自动进行转换,例如,`int i = 100; double d = i;` - 强制类型转换:需要显式地将大类型转换为小类型,可能丢失精度或...
这个压缩包“Java数据类型操作包含转换代码实例.rar”提供了丰富的代码示例,帮助初学者理解和掌握Java中数据类型的转换。下面将详细阐述相关知识点。 一、基本数据类型 Java的基本数据类型包括整型(byte, short, ...
本章将详细讲解Java中的基本数据类型转换,这对于理解和编写高效、准确的代码至关重要。 首先,Java有两类数据类型:基本数据类型(Primitive Data Types)和引用数据类型(Reference Data Types)。基本数据类型...
在Java编程语言中,字符串(String)和基本数据类型之间的转换是常见的操作,特别是在处理用户输入、格式化输出或解析数据时。以下将详细介绍如何在Java中进行这些转换。 1. **字符串转基本数据类型** - **整型(int...
类型转换是将一种数据类型转换为另一种的过程。Java支持自动类型转换(从小范围类型到大范围类型)和强制类型转换(可能丢失精度或溢出)。需要注意的是,不同类型之间的转换需谨慎处理,防止数据丢失或错误。 2.6 ...