类型转换

Java常量与变量

China☆狼群 提交于 2020-03-15 06:51:09
1.标识符 在Java中,变量、常量、函数、类都可以称为程序实体,而他们的名称统称为标识符。 (1)标识符的命名规则 标识符可以由字母、数字、下划线(_)和$组成,不能以数字开头。 标识符严格区分大小写。 标识符不能是Java关键字和保留字。 标识符的命名最好能反映出其作用。 需要说明的是,以下划线(_)开头是合法的,但是在Go语言中不合法。 python语法中也是合法的,只不过表示私有变量。 2.关键字 关键字是被编程语言保留的字符序列,编程人员不能将其当作标识符,因此关键字也被称为保留字。 java中的关键字: Java总共有50多个关键字,还有几个保留字,比如goto。 3.变量 在数学概念中,变量表示没有固定值且可以改变的数。 从计算机系统的角度来看,变量是一段或多段用来存储数据的内存。 变量的三个元素:变量类型、变量名和变量值。 变量的命名规则:   满足标识符的命名规则。   符合驼峰法命名规范。(变量都以小写字母命令,如果由多个单词组成,除首单词外其余单词第一个字母大写)   变量名的长度没有限制。 变量命名方式: (1)先定义类型,再进行赋值   v_type v_name   v_name = value (2)直接定义变量   v_type v_name = value 4.数据类型 (1)基本数据类型 不同数据类型,占据的内存大小: 不同数据类型的取值方位:

MyBatis 源码分析-项目总览

筅森魡賤 提交于 2020-03-12 02:43:33
MyBatis 源码分析-项目总览 1.概述 本文主要大致介绍一下MyBatis的项目结构。 引用参考资料《MyBatis技术内幕》 此外, https://mybatis.org/mybatis-3/zh/index.html MyBatis官方也提供了很不错的中文文档。对于使用中有碰到一些问题,可以参考一下。 2.模块划分 MyBatis在项目模块划分还是很清晰的。各个模块层次以及具体作用,如下: 模块 层次 定义 session 接口层 提供给外部使用的接口API scripting 核心处理层 解析映射文件中的动态SQL节点。并形成数据库可执行的SQL语句。 mapping 核心处理层 映射 builder 核心处理层 配置解析 executor 核心处理层 执行器模块,串联整个执行流程。 plugin 核心处理层 插件模块:提供插件接口,通过自定义插件方式对MyBatis进行拓展 cursor 核心处理层 游标模块 reflection 基础支持层 反射模块:mybatis专门对反射模块进行封装。提供更加简单易用的API type 基础支持层 类型转换模块:Mybatis为简化配置提供了别名机制。提供java类型与JDBC类型转换 logging 基础支持层 日志模块:主要是集成第三方日志 io 基础支持层 资源加载模块:对类加载器进行了封装。确定类加载器顺序

Json序列化,date类型转换后前端显示错误的解决方案

走远了吗. 提交于 2020-03-11 08:53:44
1.前台使用Jquery解决   (1)如果我们前台使用Jquery来解决这个问题的话,那么我们首先想到的是我们如何解析这个过程呢,当然我们就想到了自己写一个JavaScript脚本来解析这个过程,当然这个脚本不是我写的了,而是别人写的,自己拿过来用,脚本代码如下: 1 //by 韩迎龙 2 3 /** 4 5 * 对Date的扩展,将 Date 转化为指定格式的String 6 7 * 月(M)、日(d)、12小时(h)、24小时(H)、分(m)、秒(s)、周(E)、季度(q) 可以用 1-2 个占位符 8 9 * 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) 10 11 * eg: 12 13 * (new Date()).pattern("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423 14 15 * (new Date()).pattern("yyyy-MM-dd E HH:mm:ss") ==> 2009-03-10 二 20:09:04 16 17 * (new Date()).pattern("yyyy-MM-dd EE hh:mm:ss") ==> 2009-03-10 周二 08:09:04 18 19 * (new Date()).pattern("yyyy-MM

关于typescript 枚举类型转换为javascript 后文件解释

左心房为你撑大大i 提交于 2020-03-10 16:29:04
枚举   枚举类型是数字原始类型的一个确定子类型。它是一组相关的定义了枚举类型可能值的命名常量。 1 枚举声明   枚举声明声明一个枚举类型和枚举对象。   EnumDeclaration:     constopt enum BindingIdentifier { EnumBodyopt }   枚举声明:     const(可选) enum 绑定标识符{ 枚举体(可选)}   枚举类型声明向容器空间中引入一个命名类型和一个命名值。枚举类型是一个数字原始类型的确定子类型。枚举对象是一个匿名对象的值,它包含了一个属性集合,所有的枚举类型相对于枚举体中枚举类型声明的值。此外,枚举对象类型包含了一个“[x: number]: string”签名的数字索引签名。   枚举声明的标识符不能与预定义类型名相冲突。   静态枚举声明用“const”修饰符修饰。静态枚举声明成员必须都具有可以在编译时计算的静态值。 1 enum Color { Red, Green, Blue }   声明了一个数字原始类型的子类型“Color”,引入一个相应的变量“Color”; 1 2 3 4 5 6 var Color: { [x: number]: string; Red: Color; Green: Color; Blue: Color; };   数字索引签名是自动生成的枚举对象的”反向映射"

类型转化

[亡魂溺海] 提交于 2020-03-10 13:29:19
强制类型转换: 强制类型转换代码实现以及注释 2、强制类型转换图示讲解 备注:强制转换得到所需类型的中间变量,原变量类型、变量值保持不变 高类型向低类型转化时可能发生精度损失 强制类型转换精度随时代码部分 数据溢出 来源: CSDN 作者: 韩淼燃 链接: https://blog.csdn.net/weixin_36691991/article/details/104760532

类型转换

泪湿孤枕 提交于 2020-03-10 06:29:32
类型间转换:不同类型的整型数据所占的字节数不同,他们在相互转换时需要格外留心,不要把过大的数据放在过小的数据类型中,在把占字节较大的数据赋值给占字节较小的数据时,防止出现以下的情况。 1、类型间转换的二进制原理: 结果xianshi : 查看内存查找原因: 3.3.42类型转换 数据溢出: 3.3.43类型转换 当把占字节较小的数据赋值给占字节较大的数据时,可能出现以下两种情况。 第1种情况,当字节较大数是无符号数时,转换时新扩充的位被填充成0 char b = 10; unsigned short a = b; printf("%u",a); 这样赋值后,变量a中输出的值是10,原因如下: 占字节较小的数据赋值给占字节较大的数据代码 3.3.44类型转换 小结: 来源: CSDN 作者: 韩淼燃 链接: https://blog.csdn.net/weixin_36691991/article/details/104760550

java之char类型转换成int的问题

半世苍凉 提交于 2020-03-10 06:23:02
问题的起源 以下的一段代码是解决从数字0到n之间寻找k出现的次数,例如k=1,n=12,那么k出现的次数就是2次,12中也有1。 代码中间本人是将每一个数字作为一个字符串进行处理,对于多位数将其转换为字符串对应的char数组,在进行if语句判断时,永远出现false。 //寻找数字K出现的次数 public static int digitCounts ( int k , int n ) { int count = 0 ; //进行外运行,将n个数据都进行相对应的判断 for ( int i = 0 ; i <= n ; i ++ ) { //将每个n转换成对应的char数组 char [ ] charres = String . valueOf ( i ) . toCharArray ( ) ; //对于char数组进行遍历,寻找出现k的次数 for ( int j = 0 ; j < charres . length ; j ++ ) { //使用全局变量对相同的k进行累加判断出现的次数 if ( Integer . parseInt ( String . valueOf ( charres [ j ] ) ) == k ) { count ++ ; } } } return count ; } 寻找原因 如果直接创建char数组,在对其值进行输出时会看到数组依旧是数组输入的值

类型自动转换

牧云@^-^@ 提交于 2020-03-09 21:55:50
隐式转换 整型、实型和字符型数据之间可以混合运算。例如: 10 + ’a’ + 1.5 - 8765.1234 * ’b’ 不同数据类型之间运算会进行自动类型转换,规则如下: 1、 vs2013代码演示隐式转换: 运行结果显示: 3.3.39隐形类型转换示例 1、 vs2013代码演示数据类型转换: 运行结果: 数据类型转化示例2 3、总结 来源: CSDN 作者: 韩淼燃 链接: https://blog.csdn.net/weixin_36691991/article/details/104760160

泛型

我们两清 提交于 2020-03-09 11:25:58
Java泛型简明教程 Java 集合有个缺点,就是把一个对象“丢进”集合里之后,集合就会“忘记”这个对象的数据类型,当再次取出该对象时,该对象的编译类型就变成了 Object 类型(其运行时类型没变)。 但这样做带来如下两个问题: 集合对元素类型没有任何限制,这样可能引发一些问题。例如,想创建一个只能保存 Dog 对象的集合,但程序也可以轻易地将 Cat 对象“丢”进去,所以可能引发异常。 由于把对象“丢进”集合时,集合丢失了对象的状态信息,集合只知道它盛装的是 Object,因此取出集合元素后通常还需要进行强制类型转换。这种强制类型转换既增加了编程的复杂度,也可能引发 ClassCastException 异常。 所以为了解决上述问题,从 Java 1.5 开始提供了泛型。泛型可以在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高了代码的重用率。本节将详细介绍 Java 中泛型的使用。 泛型集合 泛型本质上是提供类型的“类型参数”,也就是参数化类型。我们可以为类、接口或方法指定一个类型参数,通过这个参数限制操作的数据类型,从而保证类型转换的绝对安全。 例 1 下面将结合泛型与集合编写一个案例实现图书信息输出。 1)首先需要创建一个表示图书的实体类 Book,其中包括的图书信息有图书编号、图书名称和价格。Book 类的具体代码如下: public class

Javascript中_==_和_===_的区别

半城伤御伤魂 提交于 2020-03-09 06:29:43
今天就来说说javascript中的比较运算符: 先说一下两个区别: == 用于比较判断两者相等,在比较的时候有隐式类型转换。 ===用于严格比较 判断两者严格相等(也可以说全等于,值相等,数据类型也得相等) ,没有隐式类型转换,进行比较的操作数必须类型一致,不一致时返回flase。 直接上例子:更清楚的展示两者区别 ==进行运算时牵扯到隐式类型转换, 1、如果一个是null、一个是undefined,那么相等。 2、如果一个是字符串,一个是数值,把字符串转换成数值再进行比较。 3、如果任一值是 true,把它转换成 1 再比较;如果任一值是 false,把它转换成 0 再比较。 4、如果一个是对象,另一个是数值或字符串,把对象转换成基础类型的值再比较。 ===运算时没有隐式类型转换 1、如果类型不同,就不相等 2、如果两个都是数值,并且是同一个值,那肯定相等,但是,如果其中至少一个是NaN,那么不相等。 3、如果两个都是字符串,每个位置的字符都一样,那么相等;否则不相等 。 4、如果两个值都是true,或者都是false,那么相等。 5、如果两个值都引用同一个对象或函数,那么相等;否则不相等。 6、如果两个值都是null,或者都是undefined,那么相等。 一句话: ==比较值 ===不仅比较值,也比较类型 来源: CSDN 作者: 漫长的路一人走 链接: https:/