8.8算法笔记强化随记

知识强化

1.类型转换【不管是强制类型转换还是自动类型转换,都要满足两个变量类型相兼容的原则】

(1)隐式类型转换,也叫自动类型转换【小转大】

正常来说要求等号两边的变量类型一致,如果不一致的情况下则会发生类型转换,能自动发生类型转换的称之为隐式类型转换

 

要求:双方相互兼容,比如int或者double【都是数字类型的】,并且,要目标类型大于原类型

int a =10;

double b = a;//此时a为原类型,b为目标类型,所以原变量类型要小于目标变量类型

输出结果为10

这种也就是发生了隐式类型转换

 

(2)显示类型转换,也叫强制类型转换【大转小】

要求:双方相互兼容,并且原类型要大于目标类型,与上面正好相反

在原类型处的语法:(待转换的类型)要转换的值

double a = 10.3;

int b = (int)a;//此时a为原类型,原类型的原始变量类型是double,大于int,转换时按照上方语法,在前面加上要转换的变量类型。b为目标类型,原类型要大于目标类型才需要强制转换

输出结果为10

 

补充:需要注意一点,如果一个int表达式中,其中一个操作数为double类型,那么整个表达式都将会变成double类型

例子:

int a = 10;

int b = 3;

double c = a/b;//表达式,这里的a和b为这个c的表达式中的操作数

这样得出来的结果还是3

(1)

int a = 10;

double b = 3;

double c = a/b;//此时表达式中的操作数a和b里面b为double类型的,则c整体被提升为double,所以结果就为3.3333....

(2)

或者还有一种写法

int a = 10;

int b = 3;

double c = a*1.0/b;//在表达式的操作数后面直接*1.0,效果与上方是一个道理,这样与上面的好处就是不用修改上面的变量类型

 

最后,因为double得出的小数位数很多,在某些情况下需要保留几位小数,语法上这么写:

在占位符上进行更改:{0:0.00},0:后面的0.00..写几个就保留几位小数

 

算法题:

1.编程实现计算几天是几周零几天

 

 2.编程实现计算多少秒是几天几时几分几秒

一天是86400秒:60*60*24

思路是

拿剩余天数去求剩余秒数

然后拿剩余秒数去求剩余小时

然后求完小时拿当前剩余秒数

然后用当前剩余秒数求分钟

最后求完分钟拿到剩余秒数,也就是最后的剩余秒数

 

 

 

 

 

 

 

 

 

 

 

 

posted @   你隔山海  阅读(35)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示