赞
踩
不同于JavaScript,Java被称为强类型语言,就是因为它严格固定了数据的类型,也正是因为这一点,但又不仅仅因为这一点,让我觉得Java好难。
JavaScript中数据类型有:String,Number,Boolean,Null,Undefined,Symbol,Array,Object,Function。
使用就很简单,写一个变量,它的值用引号括起来就是个字符串类型
var a = "字符串";
如果是个单独的数字就说明是个数字类型
var a = 1;
如果是true或者false就是个布尔值类型
var a = true;
带[]就是个数组
var a = [1,2];
用{}就是个对象
var a = {name: "xxx"}
特别随意......
也正是因为太随意,导致ts越来越火,而我日常工作中也更多的使用ts。ts就是在写变量的时候规定一下类型
var a: string = "xxx";var b: number = 1;var c: string[] = ["xxx"];
即便这样也比Java简单太多。
Java的数据类型分为基本数据类型和引用数据类型。其中基本数据类型分为:
final double PI = 3.14;
运算部分其实和js中大体一致,稍微有些地方不一样。
java中存在类型自动提升与强制转型的问题,首先这点在ts中实现就特别简单。
const a = 123;const b = a as string; // 这时候b就是字符串类型
类型自动提升
两种类型是彼此兼容的,转换的目的类型占得空间范围一定要大于转化的源类型,这就可以参考上文中各类型所占内存大小的图。
例如。浮点型和整型在一起运算,结果会自动转换成浮点型。
强制转型
因为有整型和浮点类型的区别,强制转换时有失去精度的风险。如下写法:
double a = 2.1;int b = (int) (a + 0.5); // b是个整型
如上代码也是四舍五入的示例代码。
再来个示例代码,写个求根公式的demo。
关于数字的数据类型就这样了,更深入的待我更深入的学习之后再总结。
字符串类型java和js中感觉没啥大区别,只是java中有个字符类型,它属于基本类型。
字符类型,用单引号,只能有一个字符。
char c1 = '左'char c2 = 'L'
字符串类型,都是引用类型,且不可变。
java
String s1 = "Hello";String s2 = s1;s1 = "world";System.out.println(s1 + "," + s2); // world,Hello
js
var s1 = "Hello";var s2 = aa;s1 = "world";console.log(s1, s2); //world Hello
数组的话,java中远比js中严格,
数组是同一数据类型的集合,数组一旦创建后,大小就不可变;
可以通过索引访问数组元素,但索
引超出范围将报错;
数组元素可以是值
类型(如int)或引用类型(如S
tring),但数组本身是引用类型。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。