java和python都是面向对象的语言,但是各种都有不同的特点,本文从对比的角度去看,java和python3的相同和不同之处。
首先不同的是java是先编译后运行,java文件必选编译为class文件才可以运行,而不存在直接交互输出。而python3中可以直接在安装了python3之后直接输入print("helloworld")运行即可输出。不过java在将要推出的java9中同样也增加了这种jshell的交互,到时候也可以直接运行,而不再需要每次都编写java类。
其次从变量和简单数据类型对比:
java中有八中基本类型,string类型,对象类型;而且java是一种强类型语言,也就是每个变量在使用之前必须明确的告知虚拟机该变量是什么类型的,虽然在java的包装类型中变量在有效范围之内可以互相转换,但是变量的定义必须在变量的使用之前;
python中对变量并没有强制要求先定义再使用,对变量的使用比较随意,可以随意使用如:message="abc" print(message) message='34' print(message);对于变量的定义python类似于javascript语言是一种弱类型的语言;
再次是java和python3的分隔符;在java中通过;表明上一句结束,下一句开始,但是python中没有;只有空格,:,换行,和缩进。
例如:print(message);print(message1)这是java的写法;
print(message)
print(message)
这是python的写法
if(a>0){
print(ddd)
}else{print(eee)}这是java
if a>0:
print(ddd)
else:
print(eee) 这是python
通过:和缩进来分格和判断
java和python中数字计算的区别:
java中更原始一点只支持简单的+,-,*,/,和%等;但是python除了这几个还有支持立方运算等:
如:3*3在java中写,但是python中可以写3**2;3*3*3在java中,但是python中3**3
类型转换:
java中将数字转换为字符串可以直接拼接""+32="32";
但是python中则必选通过str()函数来转换才可以。
java中的数组和python中的列表,都是数据的集合;都是通过下标来获取集合中的元素
不同之处在于java中的数组必选在初始化的时候指定数组大小,而python中的列表则并没有这个限制可以通过append()方法一直追加,在这点上python的列表也是java中集合中的列表,可以自动完成扩展。同样列表的使用也无需指定其中存储的类型,直接使用即可,但是java必须要知道数组中存储的是什么类型,当然如果你定义为Object类型,那就是可以存储一切了。
java中数组的遍历可以通过for循环数组长度,或者讲数组转换为java中其他集合类型可以迭代遍历,但是python则可以直接通过:
message=['a','b','c']
for mes in message:
print(mes)
python特有的列表的切片,类似java中字符串的截取:
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[0:3]) //表示获取列表players中的下标为0,1,2的三个元素并输出:
结果为:
['charles', 'martina', 'michael']
要复制列表,可创建一个包含整个列表的切片,方法是同时省略起始索引和终止索引([:])。这让Python创建一个始于第一个元素,终止于最后一个元素的切片,即复制整个 列表:
python中新类型--元组
列表非常适合用于存储在程序运行期间可能变化的数据集。列表是可以修改的,这对处理网站的用户列表或游戏中的角色列表至关重要。然而,有时候你需要创建一系列不可修
改的元素,元组可以满足这种需求。Python将不能修改的值称为不可变的 ,而不可变的列表被称为元组 。其类似于java中的枚举类型。都不可变;
元祖中的值是不可以改变的只能是读取,元祖的定义:
dimensions = (200, 50) ,其和列表的明显区别在于括号一个是方括号,一个是圆括号。
if-else if -else 和if -elif -else的不同
java的格式:
if(){}else if(){}else{}
python的格式
if 条件判断:
elif 条件判断:
else:
通过:和缩进来区别格式和语句:
python中特有的类型字典:通过{}来定义的类型,里面的属性都是键值对形式定义的。类似于java编程中的map对象
如:
alien_0 = {'color': 'green', 'points': 5}
print(alien_0['color'])
遍历字典:
for key, value inalien_0.items():
print("\nKey: " + key)
print("\nValue: " + value)
到这里关于python和java的简单的不同,大概就介绍完了,后续会有其他不同的对比来慢慢学习。入用户输入,异常,文件的读写等