本篇適合之前學過c和c++語言,現在要學java的人進行學習。由於之前學習過c++同為物件導向的程式語言,基礎語法在相對比之下學習,對比c++與java的差異,會快速掌握基本語法。學程式語言,語法不是重點,用時即查,程式設計思路才是重點。
1.註釋、識別符號、關鍵字、資料型別,變數定義,運算子與c++基本一致
public class HelloWorld {
public static void main(String[] args) {
int a=1;
// int b=2;
char c='1';
long d;
}
}
int、char等定義變數,
//作為註釋符號
2.陣列的建立不同
public class HelloWorld {
public static void main(String[] args) {
int[]arr2={11,12,13};//定義時初始化
int []arr1;//定義後再初始化
arr1=new int[]{11,12,13};
int [][]arr3={{11,12},{21,11}};//二維陣列
}
}
對比c++
#include<iostream>
using namespace std;
int main()
{
int arr[] = { 11,12,13 };//定義時初始化
int arr1[4];//定義後初始化
arr1[0] = 11;
arr1[1] = 12;
arr1[2] = 13;
int *arr2 = new int[n];
int arr2[1][3];//二維陣列
int arr3[2][2] = { {11,12} ,{21,11} };
}
對比中可以看出區別,定義時初始化只是將[ ]的順序變了,定義後初始化java和c++都可以用new來定義動態陣列,c++靜態陣列的話必須在初始化時在[ ]中輸入初始值。
3.輸入輸出與c++稍有不同
java的輸出
public class HelloWorld {
public static void main(String[] args) {
int a=123;
System.out.println("hello,world");
System.out.print("Hello, World!"+a);
}
}
輸出結果為
hello,world
Hello, World!123
System.out.println()輸出後自動換行
System.out.print()少了ln後輸出不會換行
IDEA中輸入 sout+回車 就能快速打出System.out.println();
對比c++的輸出
#include<iostream>
using namespace std;
int main()
{
int a=123;
cout << "hello,world\n";
cout<< "hello,world"<<a;
}
java的輸入
import java.util.Scanner;
public class HelloWorld {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int numInt = scanner.nextInt();
System.out.println("你輸入的為: " + numInt);
double numDouble = scanner.nextDouble();
System.out.println("你輸入的為: " + numDouble);
}
}
java的輸出需要在前面匯入
import java.util.Scanner;
類似於c++的標頭檔案
<iostream>
c++的輸入
#include<iostream>
using namespace std;
int main()
{
int numint;
double numdouble;
cin >> numint;
cout << "你輸入的為" << numint<<endl;
cin >> numdouble;
cout << "你輸入的為" << numdouble<<endl;
}
java是以類為基礎的,類比c++中的類看Scanner會更容易理解
Scanner是提前寫好的類,我們在這裡用這一個類建立了一個名字為scanner的物件
這一個物件裡面又有很多的內建函式,分別對應不同資料型別的輸入
於是我們能透過這個物件來輸入我們對應的資料
內建函式有
nextInt():讀取一個整數。
nextDouble():讀取一個雙精度浮點數。
next():讀取一個字串,以空格為分隔符。
nextLine():讀取整行輸入,包括空格。
4.流程控制語句與c++相同:
順序、選擇、迴圈
選擇
·if
·else if
·else
·switch
·case
·defult
迴圈
·while()
·for()
·do...while()
import java.util.Scanner;
public class HelloWorld {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int numInt = scanner.nextInt();
if(numInt!=0)
{
for(int i=0;i<=numInt;i++)
{
System.out.println(i);
}
}
else
{
System.out.println(0);
}
}
}
與c++中基本一致
下一篇文章中開始對比c++與java物件導向程式思想,抽象,封裝,繼承,多型的異同點,這些過完後,就可以著手做專案,做專案是學習其程式設計思維最快的方式,讓你明白,在這門語言中專案是如何從無到有搭建起來的。
末尾自身總結
因為我之前學過c,c++這兩個程式語言,所以學其他的程式語言就需要這麼對比著來,這樣能大大加快基本語法的學習。
我先是跟著b站教程下載了IDEA,後來又為了寫部落格著手看看markdown文件的基礎用法。
你要你開始跟著敲程式碼熟悉,這些也就能很快的記入心中,
就如部落格的寫作一樣,多寫,才能發現缺點,才能讓下一個寫作,變的更好
2024.7.6