java数据类型的转换函数_Java数据类型的转化

数据类型:根据变量值存储的数据,在计算机中存储方式的不同,进行分类

数据类型

基本数据类型

布尔类型/数值类型/字符串类型/undefined/null

引用数据类型

数组/对象/函数

数据类型转化有自动转化和强制类型转化。

1.自动转化为布尔类型

在执行if判断的时候,布尔类型之外的类型会自动转化为布尔类型。

转化原则:转化false的有 :0、" "、undefined、null、NaN

转化为true:其他的转化为true。

if(''){

console.log('转为了true');

}else{

console.log('转为了false');

}

结果为:

26782b52798d3b53eada7e71cd5a3cc4.png

2.自动转化为字符串

在执行字符串拼接时,会将其他数据类型转化为字符串类型。

var str1="文字" + 123;

console.log(str1);var str2="文字" + 2e3;

console.log(str2);

结果为:

e0a7e25c75ceafd07a033d1213c09246.png    注:科学技术法会解析为数值后,再转化成数值。

数组/对象/函数转字符串的原则

var str1="文字" + [1,2,3,4,5];

console.log(str1);var str2="文字" + {name:'张三' , age:'20'};

console.log(str2);var str3="文字" + function fun(){console.log(123)};

console.log(str3);

结果为:

168d276ed37247b75ccc7a4fba7f3665.png

数组:将括号中的内容转化为字符串拼接;

对象:对象会转化为[object Object];

函数:函数的整个程序代码转化为字符串拼接。

3.自动转化为数值

在执行数学运算时,会触发数据类型转化。

转化原则:

布尔类型:true→1;

false→0;

undefined→NaN;

null→0;

字符串:如果是纯数字的字符串或者符合科学计数法→对应的数值;

如果不符合数字规范的内容→NaN;

数组/对象/函数:如果是+运算,执行字符串拼接;

如果是其他运算,结果为NaN;

数值类型

var a=100 - true;var b=100 - false;var c=100 -undefined;var d=100-null;

console.log(a,b,c,d);

结果为:

82ef898ccdd94f6e2092b2661a6f1baf.png

字符串

var a=100 - '100';

console.log(a);var b=100 - '1.23';

console.log(b);var c=100 - '2e3';

console.log(c);var d=100 - '123abc';

console.log(d);

结果为:

45236144b6af0d3edab4253792535c50.png

数组/对象/函数:

console.log(100 - [1,2,3]);

console.log(100 + {name:'张三' , age:'20'});

console.log(100 - {name:'张三' , age:'20'});

console.log(100 + function fun(){console.log(123)});

console.log(100 - function fun(){console.log(123)});

结果为:

8fbe381a4ae8e09f86a214d7165d5881.png

4.强制转化为布尔类型

方法:Boolean(数据/变量)

转换原则(同自动转化): 0、 ' ' 、undefined、null、NaN →false;

其他类型→true。

console.log(Boolean(100));

结果为:

3617e64b14feab25d1ad618ea1a9672b.png

5.强制转化为字符串类型

方法一:变量 . toString(进制类型)

var a=100;

console.log(a.toString(2));

console.log(a.toString(8));

console.log(a.toString(16));

结果为:

fdc7f88d3c44305e68c3f686ed639ee0.png

方法二:String(变量/数据)

转化原则同自动转换。

var a=2e3;

console.log(String(a));var b=[1,2,3];

console.log(String(b));

结果为:

4da0ffa085eff311d7b86e0a5ca3c1cf.png输出颜色为黑色表示是字符串类型。

6.强制转化为数值类型

方法一:Number(变量/数值)

转化原则同自动转化。

console.log(Number(false));

console.log(Number(null));

console.log(Number(undefined));

console.log(Number('100'));

console.log(Number('2e3'));

console.log(Number('123abc'));

console.log(Number([1,2,3]));

console.log(Number({name:'张三'}));

console.log(Number(function fun(){console.log(123)}));

结果为:

f30bfe1bb58a72dda3fd29c3d274ade1.png

方法二:parseInt(变量/数据)

获取变量或数据的整数部分。

console.log(parseInt(0.1));

console.log(parseInt(2e3));

console.log(parseInt('2e3')); //字符串中的科学及算法不会解析

结果为:

53f35e02d767a100e65ba64d18d952d3.png

true/false/对象/函数转化为NaN

console.log(parseInt(false));

console.log(parseInt({name:'张三'}));

console.log(parseInt(function fun(){console.log(123)}));

结果为:

7a697f4c9666ded373c104bb4f57dd6e.png

数组

console.log(parseInt([null,1,2,3]));

结果为:

66a87171f3beff7bb6339d3c6e934f10.png数组转换按数组中第一个数值转化

方法三:parseFloat(变量/数据)

获取浮点数部分。

false/true/null……转化结果为NaN

数值:整数、浮点完整转化

console.log(parseFloat(1.23));

console.log(parseFloat(2e3));

结果为:

f1d28111a5d50f699f562d7415a53e63.png

字符串:从字符左起解析符合浮点数的部分。

console.log(parseFloat('1.2345e3')); //字符串中的科学计数法会被解析

console.log(parseFloat('123abc'));

结果为:

38288172ae75563542f55ee5b9287763.png

(逆战班学习)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值