每日一句

井底点灯深烛伊,共郎长行莫围棋。

每日一句

What we call "failure" is not falling down, but the staying down.
所谓“失败”不是跌倒,而是就此躺平。

概述

数据类型的转换,分为主动转换和强制转换。主动转换是程序在执行过程中“悄悄”进行的转换,不须要用户提前申明,个别是从位数低的类型向位数高的类型转换;强制类型转换则必须在代码中申明,转换程序不受限制。

主动数据类型转换

主动转换按从低到高的程序转换。不同类型数据间的优先关系如下:

低--------------------------------------------->高byte,short,char-> int -> long -> float -> double

运算中,不同类型的数据先转化为同一类型,而后进行运算,转换规则如下:

操作数1类型操作数2类型转换后的类型
byte、short、charintint
byte、short、char、intlonglong
byte、short、char、int、longfloatfloat
byte、short、char、int、long、floatdoubledouble

强制数据类型转换

强制转换的格局是在须要转型的数据前加上“( )”,而后在括号内退出须要转化的数据类型。有的数据通过转型运算后,精度会失落,而有的会更加准确,上面的例子能够阐明这个问题。

publicclassDemo{    publicstaticvoidmain(String[] args){        int x;        double y;        x = (int)34.56 + (int)11.2;  *// 失落精度*        y = (double)x + (double)10 + 1;  *// 进步精度*        System.out.println("x=" + x);        System.out.println("y=" + y);    }}运行后果:x=45y=56.0

仔细分析下面程序段:因为在 34.56 前有一个 int 的强制类型转化,所以 34.56 就变成了 34。同样 11.2 就变成了 11 了,所以 x 的后果就是 45。在 x 前有一个 double 类型的强制转换,所以 x 的值变为 45.0,而 10 的后面也被强制成 double 类型,所以也变成 10.0,所以最初 y 的值变为 56。

美文佳句

很多时候,事件的窘境,经常是因为咱们本人钻了牛角尖,此时,你须要做的就是扭转。

完满主义者能够放下执念,容许本人有普通人都会犯的小迷糊;职场妈妈能够直面事实,一个人永远做不到家庭和事业的双百分;承当了过多工作工作的员工,能够尝试向下级反映,寻求资源或调整指标……这些,都是咱们该当并能够作出的扭转。

正如这句话所说:世界上素来都没有所谓的奇观,命运始终都把握在咱们本人手里。想要扭转本人的命运,最重要的就是扭转本人。当你开始扭转本人的时候,很多货色就跟着扭转了。

下一次,当懊恼来临时,无妨试试从本身找找问题。调整致力的方向和节奏,学会给心灵松绑,你会发现:很多事,其实没什么大不了。

面试题

SpringMVC 框架有什么用?

Spring Web MVC 框架提供”模型-视图-控制器”( Model-View-Controller )架构和随时可用的组件,用于开发灵便且涣散耦合的 Web 应用程序。
MVC 模式有助于拆散应用程序的不同方面,如输出逻辑,业务逻辑和 UI 逻辑,同时在所有这些元素之间提供涣散耦合。

SpringMVC 框架有什么用?

Spring Web MVC 框架提供”模型-视图-控制器”( Model-View-Controller )架构和随时可用的组件,用于开发灵便且涣散耦合的 Web 应用程序。
MVC 模式有助于拆散应用程序的不同方面,如输出逻辑,业务逻辑和 UI 逻辑,同时在所有这些元素之间提供涣散耦合。

HashMap、ConcurrentHashMap 和Hashtable有什么区别?

HashMapConcurrentHashMapHashtable
线程是否平安,以及实现线程平安的形式HashMap不平安线程平安,ConcurrentHashMap
JDK1.7底层采纳分段锁,对整个桶数进行了宰割分段(segment),
每一把锁只锁容器其中一部分数据,进步并发访问率。
JDK 1.8 底层采纳 Node数组 + 链表 + 红黑树的构造实现,
并发管制应用了 synchronized 和 CAS 操作。
线程平安,底层采纳synchronized 来保障线程平安,
间接是办法级别的加锁, ConcurrentHashMap 尽管也是 synchronized
但它是对链表或者红黑树的头节点进行加锁,锁的粒度更小
底层工作原理底层采纳的是 数组 + 链表ConcurrentHashMap
JDK 1.7 底层采纳 分段的数组 + 链表实现。
JDK 1.8 采纳的是 数组 + 链表/红黑树
底层采纳的是 数组 + 链表
空值问题HashMap容许应用null值(key和value)都能够。
然而这样的键只有一个,能够有一个或多个键所对应的值为null
HashTable不容许null值(key和value都不能够)
初始容量、扩容与默认负载因子HashMap 默认初始大小 16,每次扩容 2n,默认负载因子是0。75HashTable 默认初始大小为11,每次扩容 2n+1
你好,我是yltrcc,日常分享技术点滴,欢送关注我:ylcoder