1.c++、java和python都是面向對象的編程語言,可是c++和java都是強類型語言,而python是一種弱類型語言java
2.垃圾回收機制:c++須要程序員收到回收,而java和python都有本身的垃圾回收機制GC。具體二者又有不一樣,python的垃圾收集機制主要是用的是引用計數方式。python
3.c和java中變量的存儲是真實值,而python總存儲的是引用,因此python不用聲明類型名稱,它的輸入均默認爲字符串。ios
4.c++中用const來聲明常量,java中使用final來聲明,python中沒有常量。c++
5.for循環語句結構不一樣程序員
例:求1-5的算數和編程
(1)Java:編程語言
public class test {函數
public static void main(String[] args) {spa
// TODO Auto-generated method stub對象
int sum = 0;
for(int i=1;i<6;i++) {
sum+=i;
}
System.out.println(sum);
}
}
(2)Python:
i=1
sum=0
for i in range(6):
sum+=i
print(sum)
(3)c/c++
#include<iostream>
using namespace std;
void main()
{
int sum = 0;
for (int i = 0; i < 6; i++)
{
sum += i;
}
cout << sum;
}
6.輸入語句不一樣
(1)Python
a=input()
print(a)
(2)Java
import java.util.Scanner;
public class test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
String name=sc.nextLine();
System.out.println(name);
}
}
(3)C++
string a;
cin >> a;
cout << a;
(4)C
char str[5] = {0};
scanf("%s",str);
printf("%s",str);
7.輸出語句不一樣
(1)Python
print("python輸出語句")
(2)Java
System.out.println("java輸出語句");
(3)c++
#include<iostream>
using namespace std;
void main()
{
cout << "c++輸出方式"<<endl;
}
(4)C
printf("%s","c輸出語句");
8.c++和python中0表明false,其餘的整數表明true,可用在if判斷中,而java不行。
(1)Python
if(1):
print("python輸出語句")
(2)Java
if(1)
System.out.println("java輸出語句");
代碼不符合語法規則,不能執行
(3)C++
if (1)
cout << "c++"<<endl;
9.計算精度:計算1/1000時,python和c++的結果都是0.001,java獲得的結果是0。
(1)Python
print(1/(10**3))
(2)Java
System.out.println(1/1000);
(3)C/c++
cout << 1/pow(10,3)<<endl;
10.字符串比對方法不一樣
(1)Python中==是判斷兩個值是否相等
i='mql'
m='mql'
if i==m:
print('yes')
else:
print('no')
(2)Java中複合數據類型比對用.equals()方法,用==是在比對兩個對象的地址是否相同。
String str1 = new String("java");
String str2 = "java";
System.out.println("str1==str2: " + (str1==str2));
System.out.println("str1.equals(str2): " + str1.equals(str2));
(3)c++中使用string類的compare函數,若是值相等返回0,若字符串 str1 按字典順序要先於 str2,則返回負值;反之,則返回正值。
string str1="mql";
string str2 = "mql";
int result = str1.compare(str2);
cout << result;
11.異常捕獲處理結構:java和c++使用的是try catch結構,python使用的是try except結構。
(1)Python
try:
print(1/0)
except Exception as e:
print("除數不能爲0")
(2)Java
try {
System.out.println(1/0);
} catch (Exception e) {
// TODO: handle exception
System.out.println("除數不能爲0");
}
(3)c++
void main()
{
int a = 0;
try{
if (a==0)
throw "除數不能爲0";
}
catch (const char* msg)
{
cout << msg << endl;
}
}
12.判斷結構不一樣
(1)Python
a="true"
b="true"
if a==b:
print("兩個值相等")
(2)Java
String a="true";
String b="true";
if(a.equals(b))
{
System.out.println("兩值相等");
}
(3)c/c++
string a = "true";
string b = "true";
if (a.compare(b)==0)
{
cout << "兩個值相等";
}