Python与java语言的对比分析

本文帮助已掌握Java语言的人员快速学习与掌握Python语言

欢迎大家留言补充其他的区别,如有不对的地方欢迎大家批评指正,谢谢!

JavaPython
整体对比变量类型静态类型。java所有变量的类型必须被明确定义,且只能赋予相同类型的值,否则会类型异常。java集合对象(如:Vector和ArrayList)里面可以保存了通用类型对象,但是无法保存基本类型,如int等。要保存int到Vector,你必须先要转换int到Integer(注:这里指的1.5版以前的java)。同样的,当你要从集合中取出一个对象时,已经不记得对象的类型,必须显示转换为期望的类型。动态类型。Python声明变量时不需要指定类型,变量的类型根据赋值的变化,可以是任意类型。如果变量已经被赋予某个类型对象,之后还可以被赋予另外一个不同类型的对象。Python的集合对象(如:lists和dictionaries)里面可以保存任意类型的对象,包括数字和lists。当你从集合中取出一个对象是,他仍然记得这个对象的类型,所以无需进行类型转换。
代码结构冗长,必须使用{}管理语句体,使用;结束语句,所有变量使用前需要预先定义且注意作用域。

简洁,善用:和缩进,少用(),不用{}和;无需多余的{}和;语句就能完成目标,强制要求缩进正确。紧凑,在新的黑客字典里,Eric S. Raymond给予了“紧凑”这样的定义:Compact adj. 在设计中,描述有价值的特性并能够被人们立马理解。

数据类型基本数据类型Java 有八种基本数据类型,包括 boolean、char、byte、short、int、long、float 和 double

Python3 中不可变数据类型:Number(数字)(整型int、浮点型float、复数complex,python3的整型没有限制大小,可以当作Long类型使用,且布尔bool是整型的子类型)、String(字符串)(英文双引号或英文单引号括起来的内容,被定义为字符串)、Tuple(元组)

引用数据类型对象(最常见的字符串)、接口和数组等可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
编译机制先编译再由JVM解释执行无需编译,直接由解释器解释执行
性能运行效率高于Python一般
适用场景大规模、要求高性能和高效的企业级应用,偏向于商业开发。小型的、不涉及高并发的项目,适用数据分析,人工智能领域。
学习难度面向对象的语言,其概念较为抽象,需要一定的编程基础才能熟练掌握。此外,Java的语法较为严谨,需要代码质量的保证,这也增加了初学者的学习难度。语法简单、易懂,上手较快,适合初学者。
生态圈有很好的生态圈,但是Java的框架、库和工具有些过于繁琐、庞大,使得在开发过程中容易出现调用混乱。有大量的开源软件和库,使得其开发效率和生态建设水平上非常高。
学习资料学习资料多,中文资料多。偏少

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Q.ZHA

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值