你知道怎么從Python角度學(xué)習(xí)Java基礎(chǔ)
1. 變量
賦值
| 項目 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 必須先聲明 | 是 | 否 | 否 | 否 |
| 聲明 | int x; | 無 | 無 | dim x% |
| 賦值 | x=1; | x=1 | x=1 | x=1 |
| 聲明并賦值 | int x=1; | x=1 | x=1 | 無 |
| 空 | null | None | null undefined | Null |
數(shù)據(jù)類型
| 項目 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 整數(shù) | int x=1; | x=1 | x=1 | x=1 |
| 字符 | char a='A'; | 無 | 無 | 無 |
| 字符串 | String a="A"; | a="A"a='A' | a="A"a='A' | a="A" |
| 小數(shù) | float f=3.14f;double d=1.7d | f=3.14 | f=3.14 | f=3.14 |
| 布爾 | boolean b=true; | b=True | b=true | b=True |
| 常量 | final double PI=3.14; | PI=3.14 | const PI=3.14 | Const PI=3.14 |
| 對象 | StringBuilder sb = new StringBuilder();var sb = new StringBuilder(); | sb = ShaBi() | sb = new Shabi() | x = CreateObject("Scripting.Dictionary") |
| 類型轉(zhuǎn)換 | 只允許向上轉(zhuǎn)換 | 允許 | 允許 | 允許 |
2. 符號
計算運算符
| 運算符 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 加 | + | + | + | + |
| 減 | - | - | - | - |
| 乘 | * | * | * | * |
| 除 | / | / | / | / |
| 求余 | % | % | % | mod |
| 次冪 | 無 | 3**2 | 3**2 | 無 |
| 自增 | ++ | ++ | 無 | 無 |
| 自減 | -- | -- | 無 | 無 |
| 疊加 | += | += | += | 無 |
| 疊減 | -= | -= | -= | 無 |
| 疊乘 | *= | *= | *= | 無 |
| 疊除 | /= | /= | /= | 無 |
| 括號 | () | () | () | () |
| 字符串連接 | + | + | + | + |
比較運算符
| 運算符 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 大于 | > | > | > | > |
| 大于等于 | >= | >= | >= | >= |
| 小于 | < | < | < | < |
| 小于等于 | <= | <= | <= | <= |
| 等于 | == | == | == | == |
| 不等于 | != | != | != | != |
| and | && | and | && | and |
| or | || | or | || | or |
| not | ! | not | ! | not |
代碼符
| 符號 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 轉(zhuǎn)義符 | \ | \ | \ | “” |
| 換行符 | ; | : | ; | : |
| 換行符是否可省略 | 不可省略 | 大部分可省略 | 大部分可省略 | 可 |
注釋
| 符號 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 單行注釋 | // | # | // | ’ |
| 多行注釋 | /*…*/ | “”"…""" ’’’…’’’ | /*…*/ | 無 |
文本符
| 符號 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 單行字符 | ’ | " ’ | " ’ | " |
| 單行字符串 | " | " ’ | " ’ | " |
| 多行字符串 | “”"…""" | “”"…""" ’’’…’’’ | 無 | 無 |
3. if
一行if
// Javax = a > b ? c : d;
# Python x = c if a > b else d
// JavaScript x = a > b ? c : d
' VBA if a > b Then x = c Else x = d
一次判斷
// Java
if (a > b) {
x = c;
} else {
x = d;
}
# Python if a > b: x = c else: x = d
// JavaScript
if (a > b) {
x = c
} else {
x = d
}
' VBA If a > b Then x = c Else x = d End If
多次判斷
// Java
if (a > b) {
x = c;
} else if (a > bb) {
x = cc;
} else {
x = d;
}
# Python if a > b: x = c elif a > bb: x = cc else: x = d
// JavaScript
if (a > b) {
x = c
} else if (a > bb) {
x = cc
} else {
x = d
}
' VBA If a > b Then x = c ElseIf a > bb Then x = cc Else x = d End If
4. for
下標(biāo)循環(huán)
// Java
for (int i=0;i<100;i++) {
System.out.println(i);
}
# Python for i in range(100): print(i)
// JavaScript
for (var i=0;i<100;i++) {
console.log(i)
}
' VBA For i = 1 to 100 step 1 Debug.Print i next
數(shù)組遍歷循環(huán)
// Java
for (int a:arr) {
System.out.print(a);
}
# Python for a in arr: print(a)
// JavaScript
for (a in arr) {
console.log(a)
}
' VBA For Each a in arr Debug.Print a Next
| 項目 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 中斷循環(huán) | break | break | break | Exit For |
| 跳過循環(huán) | continue | continue | continue | goto |
5. while
// Java
int i;
while (i < 100) {
System.out.println(i);
i++;
}
// java的另一個while
int i;
do {
System.out.println(i);
i++;
} while (i < 99);
# Python i = 0 while True: if i < 100: print(i) else: break
// JavaScript
i = 0
while (i < 100) {
console.log(i)
i++
}
' VBA ' 1 i = 0; While i < 100 Debug.Print(i) Wend
' VBA ' 2 i = 0; Do While i < 100 Debug.Print(i) Loop
' VBA ' 3 i = 0; Do Debug.Print(i) Loop While i < 99
' VBA ' 4 i = 0; Do Until i >= 100 Debug.Print(i) Loop
' VBA ' 5 i = 0; Do Debug.Print(i) Loop Until i >= 99
| 項目 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 中斷循環(huán) | break | break | break | Exit For |
| 跳過循環(huán) | continue | continue | continue | goto |
6. 數(shù)組
| 項目 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 定義 | int[] x = {1,2,3,4,5}; | x = [1,2,3,4,5] | x = [1,2,3,4,5] | dim Arr() |
| 符號 | {} | [] {} () | [] | Array() |
| 索引 | x[0]; | x[0] | x[0] | Arr(0) |
| 類型混用 | 不允許 | x=[1,'a'] | x=[1,'a'] | Arr=Array(1,"a") |
| 增 | 不允許 | x.append('b')x.insert(0,'c') | x.push('b') | Redim Preserve Arr(4)Arr(4) = 3 |
| 刪 | 不允許 | x.pop(1)del x[1] | x.pop(1) | Redim Arr(1) |
| 改 | x[0] = 6; | x[0] = 6 | x[0] = 6 | Arr(0)=6 |
7. 程序結(jié)構(gòu)
Java
/**
* 文檔注釋
*/
public class Hello {
public static void main(String[] args) {
// 主程序說明
userFunction usf = new userFunction();
usf.setArg("Hello");
System.out.println(usf.getArg());
/* 多行注釋
分行 */
}
}
class userFunction {
private String arg;
public void setArg(String arg) {
// 設(shè)置
this.arg = arg;
}
public String getArg() {
// 返回
return this.arg;
}
}
Python
'''
文檔說明
'''
class userFunction:
def __init__(self):
pass
def setArg(self,arg):
self.arg = arg
def getArg(self):
return self.arg
if __name__ == '__main__':
usf = userFunction()
usf.setArg("Hello")
print(usf.getArg())
JavaScript
function userFunction(args) {
x = process(args)
return x
}
VBA
Sub userSub() x = userFunction(args) Debug.Print x End Sub Function userFunction(args) as String userFunction = process(args) End Function
8. 輸入輸出
輸出
| 項目 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 輸出 | System.out.printlnSystem.out.print | print | console.log | Debug.Print |
| 格式化輸出 | System.out.printfSystem.out.format | format | 無 | 無 |
| 快速格式化 | 無 | f'sksqeck is a number' | `$amgeoae is a number` | 無 |
輸入
| 項目 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 輸入 | import java.util.Scanner… Scanner scanner = new Scanner(System.int);String ipt = scanner.nextLine(); | ipt = input('請輸入:') | var ipt = prompt('請輸入','預(yù)設(shè)值') | ipt = InputBox("請輸入",,"預(yù)設(shè)值") |
9. 異常捕獲
| 項目 | Java | Python | JavaScript | VBA |
|---|---|---|---|---|
| 異常捕獲 | try {..}catch {...}finally {...} | try:except:finally: | try {..}catch {...}finally {...} | On error goto tag |
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
詳解在SpringBoot應(yīng)用中獲取應(yīng)用上下文方法
本篇文章主要介紹了詳解在SpringBoot應(yīng)用中獲取應(yīng)用上下文方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-04-04
SpringBoot+Mybatis-Plus實現(xiàn)mysql讀寫分離方案的示例代碼
這篇文章主要介紹了SpringBoot+Mybatis-Plus實現(xiàn)mysql讀寫分離方案的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
Java如何接收XML格式參數(shù)并轉(zhuǎn)換為JSON
在 Java 應(yīng)用程序中,處理 XML 數(shù)據(jù)并將其轉(zhuǎn)換為 JSON 格式是很常見的任務(wù),這篇文章為大家整理了一下具體的實現(xiàn)方法,希望對大家有所幫助2025-03-03
jeefast和Mybatis實現(xiàn)三級聯(lián)動的示例代碼
這篇文章主要介紹了jeefast和Mybatis實現(xiàn)三級聯(lián)動的示例代碼,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10
詳解Java的MyBatis框架和Spring框架的整合運用
在Web端的SSH框架整合中Spring主要負責(zé)數(shù)據(jù)庫處理,而引入MyBatis后二者的集成使用效果更佳,下面我們就來詳解Java的MyBatis框架和Spring框架的整合運用2016-06-06
spring boot整合log4j2及MQ消費處理系統(tǒng)日志示例
這篇文章主要為大家介紹了spring boot整合log4j2及MQ消費處理系統(tǒng)日志的示例過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2022-03-03
Java利用ElasticSearch實現(xiàn)增刪改功能
這篇文章主要為大家詳細介紹了Java如何利用ElasticSearch實現(xiàn)增刪改功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-08-08

