java的强制类型转换应该怎样理解?

如题所述

类型转换, 就是一种数据类型转化到另一种数据类型嘛。我这样给你讲吧,不管什么语言,在计算机看来,不管什么数据类型的数据,它都是以二进制的方式存在某一个地址开始的一段内存里吧。但是对我们来说,我们并不真正了解这些二进制到底是什么数据,其实呢,你认为它是什么都可以。类型之间的转化其实就是一开始如果你以类型A来解释这段二进制码得到类型A的数据a,然后你要强制转化为类型B,就是同样的把这段二进制码解释成类型B的数据b.当然了,从java上讲,从现象上看分原生类型之间的转化以及对象类型之间的转化。具体的我就不讲了,自己看看书,翻翻两个例子就懂了,没啥难度。
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-12-19
简单的说就是 不是一个类型的数据不可以直接使用 需要强制转换成一个类型,不过要注意 由高转低会 损失精度
第2个回答  2011-12-19
把int 类型的值赋给long 类型的变量,总是可行的。然而,不是所有的类型都是兼容的,因此,不是所有的类型转换都是可以隐式实现的。例如,没有将double 型转换为byte 型的定义。要达到这个目的,你必须使用一个强制类型转换,它能完成两个不兼容的类型之间的显式变换。

float a=5.8 是错误的
short b=1
b=b+1也是错误的
需要强制类型转换
float a=(float)5.8
b=(short)b+1
第3个回答  2011-12-19
将一个范围大的数据类型,转换到范围小的数据类型
第4个回答  2011-12-19
string和int不是同一个类型,但是有时候需要将string转换为int类型,也可以说是向下转型,这样就需要强制转换

java中的强制类型转换
在Java中,强制类型转换是一种显式的数据类型转换方式,用于将一种数据类型转换为另一种数据类型。当两种数据类型的值不兼容时,就需要使用强制类型转换。这种转换通常需要程序员手动指定,因为可能会引发数据丢失或变形。详细解释 1. 概念理解:强制类型转换不同于Java中的自动类型转换。自动类型转换发生在...

Java父类强制转换子类原则
首先,理解Java的类型转换机制是基础。在Java中,子类可以自然地转换为父类,这是因为子类继承了父类的所有属性和方法。但反过来,将父类转换为特定的子类,则受到类型安全的限制。下面,我们来具体分析。假设我们有以下类定义:java class Fruit { } class Apple extends Fruit { } class Orange extends...

Java中强制类型转换问题
1.由于a,b是int型而h是float型变量,a\/b的结果也就是float型,假如想要进行相互赋值,就必须先把他们统一成同一类型的变量。2.这里的“h=(float)a\/b”是指:将整形变量a除以整形变量b的结果强制转化为float型,并将这个值赋给h,并不是申明,申明在前面已经有过了,不需要重复申明。强制转换...

java引用类型强制转换, 类型是什么意思,转换的是什么,有什么作用?
引用类型,指的是对象的引用代表的这个对象的类型。例如: A a;这个对象引用类型为A。如果A是父类,B继承于A,有一个对象B b,(A)b就叫强制转换,把b的引用类型转换成A,就可以把b当A实例化的对象使用

java中double型转化成int型
Java中double型转化成int型的答案是使用强制类型转换。在Java中,可以使用强制类型转换将double类型转换为int类型。由于int类型是一种整型,它会丢失小数部分,只保留整数部分的值。这种转换可能会导致数据丢失或改变,因此在进行转换时需要谨慎处理。以下是具体的转换方法:具体解释如下:1. 强制类型转换方法...

在java中的强制转换和自动转换中,什么是目标类型,什么是源类型?
int b = (int) a; 这里是强制类型转换,因为不可能把一桶水塞进一个杯子里面,所以要强制类型转换。这里a是源类型 b是目标类型。一些简单的例子:float = 1.0; 编译错误,因为1.0是double类型的,所以要强制类型转换 short s = 1;s = s + 1; 编译错误,因为short只有2个字节,...

Java中的强制类型转换是如何转换的?
java中数据类型的强制转换是通过强制转换语句完成的,强制转换语句的格式为“目标数据类型 变量 = (目标数据类型) 数据;”。下面给出例子:1、定义两个字节数据类型a、b、c,分别赋予1和2和a+b的值,进行加法运算的式子a+b=3,得出的结果“3”将会被编译环境判定为整形数据,把这个整形数据赋值...

java数据类型强制转换?
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。java中各数据类型是如何实现强制类型转换的?转型有两种:向上转型和向下转型(强制转型)两种分别如下:一种是向上转型对于基础数据类型 ,可以自动转型 ,...

java中的强制类型转换
用(String)做强制类型转换和用String.valueOf()区别在于:String 就是直接强制转化成String型的字符串,且有优先级限制,像int i=123;不能String s=(String)i。而String.valueOf()里面的参数转换可以是double、long、char[] 、long等等,没限制,所以String s=String.valueOf(i)。toString()方法返回...

java中强转改变了什么?改变的是对象还是引用?
如果强制转换的是基本类型,那改变的是数据本身;如果是对象,那么就是引用。可以看下面的例子:public class Test extends TT{public void f(){System.out.println("f()");}public static void main(String[] args){Test test=new Test();TT tt=(TT)test;tt.f(); \/\/这句编译通不过test.f...

相似回答