数据类型

Javascript中数据类型转换那些事

一世执手 提交于 2021-02-20 02:59:48
在js中,总的来说数据类型分为两大类,一类是原始值类型的,一类是引用类型的。原始值类型的包括: 字符串(String) 、 数字(Number) 、 布尔值(Boolean) 以及两个特殊的值 null 和 undefined 。引用类型的主要是指对象,在js中,对象的范围很广,甚至有js中一切都是对象这样的说法。对象可以分为 对象(Object) 以及更具体的 数组(Array) 、 函数(Function) 等类型。要注意的是,js中typeof运算符返回的类型只有:sting、number、boolean、object、function、undefined几种,typeof null 返回的是 object,但一般认为null是不属于对象的。 关于js中是不是一切都是对象这句话,其实是有争议的。例如,我们可以直接在通过单引号或双引号定义的字符串字面量上调用方法: 'this is a string'.charAt(0); 这条语句是能够执行并得到正确结果的。字符串的确是个对象,但是问题在于没有通过构造函数而是直接使用字面量的字符串又算不算对象呢?这还要说吗,这个语句不就是在字符串字面量上调用的方法嘛,能调用方法的当然是对象了。是的,我们看到的的确是这样,但事实又是如何呢? 事实就是,通过字面量定义的字符串并不是对象,或者最多只能说它是个伪对象

MySQL 数据类型

喜夏-厌秋 提交于 2020-11-26 14:27:24
1.数值类型 MYSQL支持所有标准SQL,这其中包括: 精确数值数据类型:INTERGER/INT,SMALLINT,DECIMAL/DEC,NUMERIC 近似数值数据类型:FLOAT,REAL,DOCULE PRECISION BIT数据类型 作为对标准SQL的扩展,MySQL还支持TINYINT,MEDIUMINT及BIGINT,如下图: Type Bytes Minimum Value Maximum Value (Signed/Unsigned) (Signed/Unsigned) TINYINT 1 -128 127 0 255 SMALLINT 2 -32768 32767 0 65535 MEDIUMINT 3 -8388608 8388607 0 16777215 INT 4 -2147483648 2147483647 0 4294967295 BIGINT 8 -9223372036854775808 9223372036854775807 0 18446744073709551615 如果ZEROFILL指定给数值列,则MYSQL会自动添加UNSIGNED属性 整数或浮点类型均可指定AUTO_INCREMENT属性,当被赋值NULL或0时会自动设置成下一个序列值,AUTO_INCREMENT序列从1开始 MYSQL将DOUBLE与DOUBLE

<我的PHP生涯>-忆-PHP基础2-PHP数据类型与转换

拜拜、爱过 提交于 2020-05-02 07:22:52
记得当时学PHP的时候,老师叫我们背PHP数据类型,我很快就背下来了,嘿嘿,哥一向记忆力好.其实也不多,就那8个类型,那现在你是否还记得我们大PHP有几种数据类型?数据类型之间可以怎么转换?那接下来我们就聊聊它. 1.PHP八大类型有哪些? boolean (布尔型) integer (整型) float (浮点型, 也称作 double) string (字符串) array (数组) object (对象) resource (资源) NULL (NULL) 2.PHP数据类型转换 a.类型强制转换,在要转换的变量之前加上用括号括起来的目标类型. $n1=2.123; $n2=(int)$n1; var_dump($n1); //输出float(2.123) var_dump($n2); //输出int(2) b.PHP还有3个系统给出的函数可以进行类型转换 intval() floatval() strval() $str="52.4a"; $int=intval($str); //转换后数值:52 $float=floatval($str); //转换后数值:52.4 $str=strval($float); //转换后字符串:"52.4" c.我们还可以使用通用类型转换函数settype(mixed var,string type) $n = 33.2; $f =

MySQL管理与优化(2):数据类型

一个人想着一个人 提交于 2020-03-26 21:35:45
3 月,跳不动了?>>> 数据类型 1. 整数: 若实际值超出对应类型范围,则会出现" Out of range "错误;整数类型通常会指定显示宽度,如int(5),不指定默认int(11), 若实际值不满改宽度则会自动前面补0( zerofill )。 2.浮点数: 3.定点数类型与位类型: 定点数在MySQL中以 字符串 的形式存储,比浮点数更精确,可用于表示 货币 等高精度数据。 浮点和定点数都可以 (M,D) 方式来表示,M表示显示M位数字(整数位+小数位),D位位于小数点后面,M和D又称为 精度 和 标度 。 定点数默认默认精度为(10, 0), 超过精度会报错 ;而浮点数则根据实际值来显示。 对于BIT(M)位类型,M取值为1~64,默认为1,表示存放的 二进制位数 ,实际值超过范围,则插入失败。 4.日期时间类型(MySQL5.0): 对于TIMESTAMP, 表中第一个TIMESTAMP类型的字段的默认值为 CURRENT_TIMESSTAMP , 且一张表中仅有一个字段默认值可以为 CURRENT_TIMESSTAMP。 TIMESTAMP会与时区相关,存取都会 经过本地时区转换 ,所以不同时区看到的日期时间会不同。 存储时期时间时,对应的 转换规则 为: 5.字符串类型(MySQL5.0) 1. CHAR 与 VARCHAR CHAR 长度不可变 ,范围为0

【JAVA基础知识点总结】JAVA数据类型基础

偶尔善良 提交于 2020-03-02 19:19:32
《Java基础知识点总结》这一栏目是对自己学JAVA的整个过程一个总结,把这些JAVA基础知识分享出来,给大家参考参考。 本文主讲JAVA数据类型基础,具体如下: 简单数据类型包括:   整型(Interger): byte, short, int, long   浮点类型(Floating): float, double   字符类型(Textual): char   布尔类型(Logical): boolean 复合数据类型包括:   class   interface   数组   String 常量:   用final. eg: final int NUM = 100; 变量:   局部变量、类变量、方法参数、例外处理参数 简单数据间的优先数据关系:   低-->高: byte,short,char->int->long->float->double 自动转换:   运算中,不同类型数据运算将自动转换,从低级到高级 强制转换:   高级数据要转换成低级数据,需强制转换   eg: int i;   byte b = (byte)i; 运算符:   基本与c语言一致,实例运算符instanceof, 内存分配运算符new 复合语句:   基本与c语言一致 例外处理语句:   包括try, catch, finally, throw 数组:(简单数据类型与复合数据类型的差别)

sizeof(char),sizeof(char*),sizeof(char[4]),

Deadly 提交于 2020-02-29 20:34:25
32位系统,地址长度是32位(bit),也就是4Byte; 64位系统,地址长度是64位(bit),也就是8Byte 运用1: char a[] = "hello world"; //自动为末尾加上'/0' char b[14] = "hello world"; char *p = a; char *dd = "01234"; NSLog(@"%ld", sizeof(a)); NSLog(@"%ld", sizeof(b)); NSLog(@"%ld", sizeof(p)); NSLog(@"%ld", sizeof(dd)); //dd是指向字符串常量的字符指针 NSLog(@"%ld", sizeof(*dd)); //*dd是第一个字符 (所占大小由数据类型决定) 答案: 32位机器上运行: 12 14 4 4 1 64位机器上运行: 12 14 8 8 1 运用2: NSLog(@"%lu,%lu,%lu,%lu",sizeof(char),sizeof(char*),sizeof(char[4]),sizeof((char*)(12))); NSLog(@"%lu,%lu,%lu,%lu",sizeof(char),sizeof(char*),sizeof(char[0]),sizeof((char*)(12))); 32位机器上运行: 1,4,4,4

【转】Erlang基本数据类型

拥有回忆 提交于 2019-12-29 22:13:33
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 在讲述数据类型前先简单的介绍一下Erlang中的变量,Erlang中的变量和其他语言中的变量相比有三点不同: 1.Erlang不对变量的类型进行定义,它可以被赋值成任何类型的值,Erlang中所有类型的值统称为一个Term。这使得编译器并不能在编译时发现数值类型的不匹配,只有在运行时发现错误,好处是不像C++一样能通过强制类型转换蒙蔽系统,造成内存泄露,也使得Erlang不像C++一样易于发现代码中的问题。不过Erlang现在已经有一套类型,函数的定义机制,能通过dialyzer来查找代码中的不匹配了。 2.Erlang中的变量只能被赋值一次,第二次赋值将被编译器理解为进行比较,如果值相同将返回该值,如果不同将会抛出异常。 3.Erlang中的变量必须以大写字母或下划线打头,否则将不被编译器理解为变量,且大写字母打头和下划线打头的变量有些不同的行为。 一.Number 1.整数(integer)——整数被记作一串十进制数字,例如,12,12375和-23427都是整数。整数的算术运算是准确的,没有精度限制 2. 浮点数(float)——浮点数被表示为满足IEEE754[43]规则的64位浮点数。所有±10E308范围内的实数都可以用Erlang浮点数表示。 3.支持用$char来获取字符的ASCII值 4

golang: 常用数据类型底层结构分析

梦想的初衷 提交于 2019-12-10 17:05:05
虽然golang是用C实现的,并且被称为下一代的C语言,但是golang跟C的差别还是很大的。它定义了一套很丰富的数据类型及数据结构,这些类型和结构或者是直接映射为C的数据类型,或者是用C struct来实现。了解golang的数据类型和数据结构的底层实现,将有助于我们更好的理解golang并写出质量更好的代码。 基础类型 源码在:$GOROOT/src/pkg/runtime/runtime.h 。我们先来看下基础类型: /* * basic types */ typedef signed char int8; typedef unsigned char uint8; typedef signed short int16; typedef unsigned short uint16; typedef signed int int32; typedef unsigned int uint32; typedef signed long long int int64; typedef unsigned long long int uint64; typedef float float32; typedef double float64; #ifdef _64BIT typedef uint64 uintptr; typedef int64 intptr; typedef int64

PostgreSQL数值类型--浮点类型和序列

天大地大妈咪最大 提交于 2019-12-07 15:53:34
PostgreSQL包括整数类型和浮点数类型。 整数类型包括3种,分别是smallint、int和bigint。别名分别是int2、int(int4)和int8.常用数据类型是int(integer)。 浮点类型分为精确浮点数类型numeric和不精确浮点数类型real(单精度浮点数据类型)和 double precision(双精度浮点数据类型)。 精确浮点数类型可以用numeric(precision, scale)表示。 精度(precision)必须是正值,标度(scale)为零或正值。类型numeric和decimal等价,都符合SQL标准。 numeric不带精度和标度,则系统使用任意精度,不会超过数据库系统储存范围。创建表显示声明精度最大值为1000。 numeric(precision, 0)等价于numeric(precision)。 ---不限定精度和标度 postgres=# create table testdecimal(id int,testvalue decimal); CREATE TABLE postgres=# insert into testdecimal values(1,777777777.77777777); INSERT 0 1 postgres=# insert into testdecimal values(1,777777777

PostgreSQL数据类型-数据类型简介和布尔类型

▼魔方 西西 提交于 2019-12-07 13:29:54
PostgreSQL相对于其他数据库,支持数据类型很多。 PostgreSQL数据类型有布尔类型、整数类型、字符串类型、二进制字符串类型、位串类型、时间与日期类型、枚举类型、几何类型、网络地址类型、数组类型、复合类型、XML类型、json类型、range类型、对象标识符类型、伪类型和其他类型。 为提高SQL语句兼容性,部分数据类型还有别名,例如integer类型,可以用int、int4表示,smallint类型可以用int2表示等。具体情况见下图 数据输入和转换 简单数据可以直接查询输出。复杂类型可以用类型名加单引号进行输入。 postgres=# select 1 AS "1",1.414 AS "Sqrt(2)!=!",'Hello,Tom'; 1 | Sqrt(2)!=! | ?column? ---+------------+----------- 1 | 1.414 | Hello,Tom (1 行记录) #查询复杂类型 postgres=# postgres=# select smallint '777'; int2 ------ 777 (1 行记录) postgres=# postgres=# postgres=# select int '777'; int4 ------ 777 (1 行记录) postgres=# postgres=# select int