您的位置:

java类型转换,java类型转换的优先级

本文目录一览:

Java中几种常用数据类型之间转换的方法

下面给你例举10种Java中几种常用的数据类型之间转换方法:

1. short--int 转换

exp: short shortvar=0;

int intvar=0;

shortvar= (short) intvar

2. int--short 转换

exp: short shortvar=0;

int intvar=0;

intvar=shortvar;

3. int-String 转换

exp: int intvar=1;

String stringvar;

Stringvar=string.valueOf (intvar);

4. float-String 转换

exp: float floatvar=9.99f;

String stringvar;

Stringvar=String.valueOf (floatvar);

5. double-String 转换

exp double doublevar=99999999.99;

String stringvar;

Stringvar=String.valueOf (doublevar);

6. char-String 转换

exp char charvar=’a’;

String stringvar;

Stringvar=String.valueOf (charvar);

7 String-int、float、long、double 转换

Exp String intstring=”10”;

String floatstring=”10.1f”;

String longstring=”99999999”;

String doubleString=”99999999.9”;

Int I=Integer.parseInt (intstring);

Float f= Integer.parseInt (floatstring);

Long lo=long. parseInt (longstring);

Double d=double. parseInt (doublestring);

8 String-byte、short 转换

Exp String s=”0”;

Byte b=Integer.intValue(s);

Short sh=Integer.intValue(s);

9 String-char 转换

Exp String s=”abc”;

Char a=s.charAt(0);

返回字符a

10 String--boolean 转换

String s=”true”;

Boolean flag=Boolean.valueOf (“s”);

java中int怎样转换成char

java将int类型的数字转换成char型,主要是通过强制类型转换,如下代码:

public class Int2CharDemo { public static void main(String[] args) {  // 将int类型数字8转换为char类型数字8

int num1 = 8;

char ch1 = (char) (num1 + 48);

System.out.println("ch1 = " + ch1);  // 将char类型数字8转换为int类型数字8

// 方法一:

Character ch2 = '8'; // char是基本数据类型,Character是其包装类型。

int num2 = Integer.parseInt(ch2.toString());

System.out.println("num2 = " + num2);

// 方法二:

char ch3 = '8';

int num3 = ch3 - 48;

System.out.println("num3 = " + num3); }

扩展资料:

当编辑并运行一个Java程序时,需要同时涉及到这四种方面。使用文字编辑软件(例如记事本、写字板、UltraEdit等)或集成开发环境(Eclipse、MyEclipse等)在Java源文件中定义不同的类。

C语言中如int、long、short等不指定signed或unsigned时都默认为signed,但char在标准中不指定为signed或unsigned,编译器可以编译为带符号的,也可以编译为不带符号的。

Java看起来设计得很像C++,但是为了使语言小和容易熟悉,设计者们把C++语言中许多可用的特征去掉了,这些特征是一般程序员很少使用的。例如,Java不支持go to语句,代之以提供break和continue语句以及异常处理。

Java还剔除了C++的操作符过载(overload)和多继承特征,并且不使用主文件,免去了预处理程序。因为Java没有结构,数组和串都是对象,所以不需要指针。Java能够自动处理对象的引用和间接引用,实现自动的无用单元收集,使用户不必为存储管理问题烦恼,能更多的时间和精力花在研发上。

java 数据类型转换

java中数据类型是有个隐式的自动转换的.

byte,short,int和long都是整数,任何数字(如1,11,111等),只要不超过范围,都是可以赋值给byte,short,int类型的,但不能直接赋值给long,必须在后面加上L(大小写均可),任何char,byte,short,int之间的计算的结果都是int

型,

如题,

a

=

1;把1赋给a,当然把1赋给byte是没有问题的,

a

=

a

+

1

;

这样就等于把int型赋给了byte型是会报错的.

a

+=

1

是自增运算,+=,-=,*=,/=等运算是不会转成其他类型的,此题中虽然结果与a

=

a

+

1一样;

顺便展开一点讲,共有8种基本数据类型,顺要说明的是:byte,short,int,long,float,double,boolean,char

1.char,byte,short,int之间运算会自动转换为int,不包括自增与自减;

char会以ASCII码转换

2.如下链条,可以向下赋值,反之刚不行,比如,byte值可以赋给short变量,反之则不行.

3.数字默认类型是int,是不符合如下链条的例外情况,只要不超过范围可以赋值给char,byte,short等类型,比如可以byte

a

=

127是对的,byte

a

=

128是会编译错误的;

4.有小数点的都默认为为double型,加f变float,如2.5f

5.boolean只能逻辑运算

byte-short-int-long-float-double

char-int

Java中的强制类型转换是如何转换的?

java中数据类型的强制转换是通过强制转换语句完成的,强制转换语句的格式为“目标数据类型 变量=(目标数据类型)数据;”。下面给出例子:

1、定义两个字节数据类型a、b、c,分别赋予1和2和a+b的值,进行加法运算的式子a+b=3,得出的结果“3”将会被编译环境判定为整形数据,把这个整形数据赋值给c,系统将会报错,这样就需要用到格式为“目标数据类型 变量=(目标数据类型)数据;”的强制转换语句。

2、根据强制转换语句的格式,易得“bytec=(byte)(a+b);”;

3、这样就把整形数据的“3”赋值给字节数据类型的c了,其中完成数据的强制类型转换。

扩展资料:

基本类型转换原则:

1、类型转换主要在在 赋值、方法调用、算术运算 三种情况下发生。

a、赋值和方法调用转换规则:从低位类型到高位类型自动转换;从高位类型到低位类型需要强制类型转换:

(1)布尔型和其它基本数据类型之间不能相互转换;

(2)byte型可以转换为short、int、、long、float和double;

(3)short可转换为int、long、float和double;

(4)char可转换为int、long、float和double;

(5)int可转换为long、float和double;

(6)long可转换为float和double;

(7)float可转换为double;

b、算术运算中的类型转换:

1、基本就是先转换为高位数据类型,再参加运算,结果也是最高位的数据类型;

2、byteshortchar运算会转换为Int;

(1)如操作数之一为double,则另一个操作数先被转化为double,再参与算术运算。

(2)如两操作数均不为double,当操作数之一为float,则另一操作数先被转换为float,再参与运算。

(3)如两操作数均不为double或float,当操作数之一为long,、则另一操作数先被转换为long,再参与算术运算。

(4)如两操作数均不为double、float或long,则两操作数先被转换为int,再参与运算。

特殊:

(1)如采用+=、*=等缩略形式的运算符,系统会自动强制将运算结果转换为目标变量的类型。

(2) 当运算符为自动递增运算符(++)或自动递减运算符(--)时,如果操作数为byte,short或char类型不发生改变;

参考资料:百度百科-java关键字

在java中怎么把double类型转成int类型?

在android开发过程中我们常常遇到数据类型的转换,其中double转int类型是最常见的

方法一:强制转换

int i ;

double db;

i = (int) db;

这种方法会丢失小数点后面的值

int i ;

double db;

i = (int)Math.pow(db2, n);

这种方法的好处是不会丢失小数点后面的值,不过当double值过大时,即大于int类型值得范围时还是会改变原来的值;

最好的方法是将double类型转换为String类型,由String转换为int类型

public int stringToInt(String string){  int j = 0;

String str = string.substring(0, string.indexOf(".")) + string.substring(string.indexOf(".") + 1);

int intgeo = Integer.parseInt(str);

return intgeo; }