Java python區別

Python Java 腳本語言 Groovy java匠人 2019-06-09

python 和java 的區別、

1.在處理文件的時候,一般要求:在.py的文件的第一行寫上:# -*- coding:utf-8 -*- :用以標示文件編碼是:utf-8的.

python 是一個腳本語言,而java是一個系統語言!

一:java和python的簡單比較

1、沒有{},全部使用:和縮進代替 .

2、註釋使用# .

3、doc使用'''或者""" .

4、變量類型比較簡單,類似於js,不過定義更像vb或者groovy .

方法使用def來定義,只有整形,長整形,複數,浮點4種類型的數 .

5、比java更是一切都是對象,連int也是 .

6、輸出更像是c .

7、數組,list,map比較像js .

8、有 this,改叫self了,而且還必須手動傳,必須在第一個...

9、構造叫init,回收叫del .

10、繼承使用(),需要手動地調用父類的構造 .

二:java和python的詳細比較

1.java 中繼承用extends ,java 單繼承; 而在python中用:(Father),可以多繼承 .

java: class Son extends Father{} ; python : class Son (Father,object):

2、數

python只有4種類型的數:整數,長整數,浮點數和java中沒有的複數;

java則有char,short,byte,int,long,float,double,boolean類型;

3、字符串

python沒有表示單個字符的char類型,可以用單引號,雙引號來表示一個常量字符串,也可以用三引號('''或者“”“)來表示一個多行的字符串;

java用char來表示單個字符,用String類表示一個字符串,常量字符串由雙引號表示;

當一個字符串在一行表示不下,python中在行尾加一個反斜槓(\),表示字符串在下一行繼續;java用加號(+)連接;

python中還有可以在字符串前加前綴r或R:表示自然字符串,即不對字符串做轉移處理(比java方便);還可以加前綴u或U:表示unicode字符串;

python字符串實際上是有序的字符集合,支持索引,分片操作等。

4、縮進

python用縮進來識別語句間的邏輯層次;

java主要用花括號和分號來識別,不強制縮進;

5、 操作符

python用

**:表示冪符號,如x**y表示x的y次方;

//:表示整除,即商的整數部分;

~:按位翻轉,~x就是-(x+1)

以上這些都是java中沒有的,但是python沒有自增,自減運算符,並且python用 and,or,not表示邏輯與,或,非。

6、if語句

python的if語言的條件表達式可以不接括號,和java不同的是,else if在python中寫作elif,並且在if,elif,else語句後面需要加冒號;

python中沒有switch語句,需要用if來代替;

7、while語句

python的while語句和java的最大不同是,while語句可以接else,else語句塊在循環條件不滿足時執行。(這個是不是有點多餘呀,循環條件不滿足,程序不也是執行while塊後面的語句嘛!)

8、for語句

python的for語句與java,c,c++,c#中傳統的for語句都不一樣,它用in把表示變量的範圍,類似java中的foreach;和while一樣,也可以接else塊;

for和while中,如果被break中斷,將不執行else語句塊;

9、註釋

python中以'#'開始的行為註釋(貌似很多腳本語言都喜歡用#做註釋);

java中主要是"//"和" /* .... */ ";

#常用的構造操作符重載方法(在實例化一個類的時候,可以重載這些方法來實現不同的操作).

_init_ 構造函數

_del_ 析構函數

_add_ ‘+’

_or_ ‘|’

_repr_ 打印

_call_ 函數調用

_getattr_ 屬性應用

_setitem_ 索引

_setitem_ 索引賦值

_getslice_ 分片

_len_ 長度

_cmp_ 比較

_radd_ 右邊的操作符‘+’

相關推薦

推薦中...