摘要:現(xiàn)在我們開始說編程特性第一條變量和數(shù)據(jù)類型,賦值和輸出。從廣為流傳的說起,用建立一個新的工程在目錄建一個文件變量和數(shù)據(jù)類型,賦值和輸出在中,方法是應用程序的入口方法。變量包含三個知識點,新建變量是字符串類型給變量賦值。
用9天入門三門編程語言,有可能嘛,尤其是對沒有基礎的同學來說?對于想學好的編程的人來說,無論從哪一門語言開始入手,語言的本身其實并不是我們最應該的關心的,至少不是作為一個初學者首先關心的。
網(wǎng)絡上,網(wǎng)友們爭論的哪個語言是最好的語言在我看來是這個世界上最無聊的爭論。語言只是最基礎的工具,是為我們服務,為業(yè)務服務的。如果你會編程,從A語言切換到B語言不會有太大的gap。以后我要寫的一系列文章,總結了如何快速入門一門新語言。核心思想是重視編程特性,而不是具體的語言。先把編程實現(xiàn)的特性拿出來,再看看某種語言是怎么做到的。
先說編程特性,任意一門編程語言都會具有以下特性:
變量和數(shù)據(jù)類型,賦值和輸出
算術運算
選擇結構
循環(huán)結構
函數(shù)定義,函數(shù)調用
變量作用域
棧,程序運行的基石
面向對象
語言提供的公用包
如果你不同意,請給我留言!如果是零基礎的同學,請把以上幾個關鍵字背下來。
如果是已經(jīng)有編程基礎的同學,相信用不了9天,大概3天是完全可以入門一門新語言的。
后面我會講的三門語言的入門。先講Java,后講Python和JavaScript。講Java時只講Java的知識點,到后面講Python和JavaScript時會類比其他語言,橫向做比較。
解釋一下為什么是Java,Python,JavaScript。Java是廣泛使用的后端語言,Python是廣泛使用的腳本語言,當膠水,做數(shù)據(jù)處理,做后端都可以。JavaScript是前端語言。這三門語言都是適合初學者入門,也是工業(yè)界廣泛使用的,如果同時學這三門語言不難,以后學習其他語言肯定不會再有門檻。
在開始講語言入門之前,我再舉一個例子說明我們?yōu)槭裁匆日莆站幊烫匦?。如果你要DIY一臺電腦,你肯定要買CPU,內存,主板,硬盤,機箱,顯示器,鼠標鍵盤外設。這是一臺電腦的基本組成,這個基本組成可以類比成我所說的編程特性。好了,當我們了解這些基本特性之后,我可能會有一些選擇,比如CPU買Intel的還是AMD的,對應的主板也會有不同的選擇。Intel還是AMD就可以類比成我要用Java還是Python。
所以呀,初學者千萬不要糾結學哪門語言,糾結來糾結去,時間都浪費了什么都沒掌握。掌握了編程特性之后,隨著思考和實踐的深入,學什么語言用什么語言是信手拈來的事。
我見過一些已經(jīng)有工作經(jīng)驗的工程師,用Java寫排序引擎,代碼一團亂,自己罵Java這不好那不好,宣稱用Go寫肯定性能就好如何如何。我相信他不能用Java的基本特性做好一個工程,換一種語言也是于事無補的。能否寫出好代碼在于人,在于設計,在于實踐,不在于語言。
真正有經(jīng)驗的程序員會如何學一門新語言呢,他肯定不是去看磚頭厚的書籍學幾個月再出山。往往是碰到一個需要解決的問題,然后花幾分鐘了解一下這門語言的特性,參考例子代碼修改搗鼓,接著開始修改代碼,實現(xiàn)新需求。整個過程中,他是利用編程特性解決自己的問題,而不是特意去學習一門語言。
說了半天,還沒講怎么準備編程環(huán)境工具之類的。對于Java,網(wǎng)絡上很多安裝教程,just Google it,IDE我推薦使用Intellij idea。對于Python,安裝教程同樣很多,IDE推薦PyCharm,以上都是安裝社區(qū)版即可。對于JavaScript,不需要安裝什么環(huán)境,我們直接用瀏覽器執(zhí)行。IDE推薦使用Sublime。
現(xiàn)在我們開始說編程特性第一條“變量和數(shù)據(jù)類型,賦值和輸出”。從廣為流傳的Hello World說起,
Hello World用Intellij Idea建立一個新的Java工程
在src目錄建一個FirstLesson.java 文件
/** * 變量和數(shù)據(jù)類型,賦值和輸出 */ public class FirstLesson { /** * 在java中,main()方法是java應用程序的入口方法。java虛擬機通過main方法找到需要啟動的運行程序 */ public static void main(String[] args) { /** * variable就是一個變量 * 任何一門語言都會有變量的概念 * 計算機會在內存留出一個區(qū)域存儲變量的值, * 然后使用變量名對變量進行訪問,讀取變量的值,或者修改變量的值 */ String variable = "Hello World"; /** * 輸出variable,為什么是System.out,而不是其他方式 * System里封裝了很多基本的操作系統(tǒng)接口 */ System.out.println(variable); } }
/**/ 內包含的文本是注釋,注釋即輔助你理解程序說明,但編譯器不會去編譯的文字段。
變量String variable = "Hello World";
包含三個知識點,(1)新建變量variable;(2)variable是字符串類型;(3)給變量variable賦值。
注意代碼里我對這兩行代碼的說明。
下圖講解了變量在計算機里是什么意思
k是變量的名稱,3是變量的值,還有一個變量的地址,即內存的地址。變量名稱以及值的概念一定要記住,內存地址可以暫時不理解。
"變量就像個盒子(占用存儲空間),盒子有個名字(變量名),盒子可以存放東西(存變量的值)"
變量基本類型說到變量,就得說清楚變量都有什么類型。如果我把所有的變量類型都羅列出來,恐怕太多了不好記。下面只列出常用的
字節(jié)型(byte,字節(jié)型是一種 8 位有正負的二進制整數(shù)
最小值是 -128
最大值是 127
短整數(shù)(short)
最小值是 -32768
最大值是 32767
整數(shù)型(int)
最小值是 - 2,147,483,648
最大值是 2,147,483,647
長整型(long)
長整型是一種 64 位有正負的二進制整數(shù)
最小值是 -9,223,372,036,854,775,808(-2^63)
最大值是 9,223,372,036,854,775,807 (2^63 -1)
浮點型(float)
浮點型數(shù)據(jù)是一種單精度的 32 位 IEEE 754 標準下的浮點數(shù)據(jù)。
雙精度型(double)
雙精度型數(shù)據(jù)是一種雙精度的 64 位 IEEE 754 標準下的浮點數(shù)據(jù)。
布爾型(boolean)
布爾型數(shù)據(jù)代表一個信息比特。
它只有兩個可能的值:真(true)和假(false)
賦值前面提到了,你在代碼里寫一個變量,計算機會在內存給他留出一個空間存儲他的值。但是你得給他賦值啊,不然計算機怎么知道這個變量該存什么值。
在Java里面,賦值操作符就是=。直觀理解,就是把等號右邊的值,賦予左邊的變量。
輸出我們和計算機的交互過程就是一個輸入和輸出的鍵盤,我們操作鼠標,操作鍵盤即是輸入。顯示屏幕,音箱的輸出就是計算機的輸出。
System.out.println(variable);
就是一種最簡單的輸出,Java調用系統(tǒng)函數(shù),告訴操作系統(tǒng)打印變量variable。這個輸出看起來不那么fancy,沒關系,你只要理解好他就是最簡單的輸出即可。
總結任意編程語言都有變量
變量由變量名稱和值構成
變量可以是字符串,整數(shù),布爾值,浮點數(shù)等
賦值是一個等號,把等號右邊的值賦予左邊的變量
System.out.println就是一個最簡單的輸出
作業(yè)模仿Hello World 樣例,寫下你心愛的人的名字,讓計算機輸出你心愛的人的名字
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://www.ezyhdfw.cn/yun/70249.html
摘要:選擇結構變量和數(shù)據(jù)類型,賦值和輸出算術運算選擇結構循環(huán)結構函數(shù)定義,函數(shù)調用變量作用域棧,程序運行的基石面向對象異常處理語言提供的公用包上一節(jié)介紹了的算術運算,如加減乘除等,的運算規(guī)則跟四則運算一樣。 選擇結構 變量和數(shù)據(jù)類型,賦值和輸出 算術運算 選擇結構 = 60) { System.out.println(You have passed the exam...
摘要:變量和數(shù)據(jù)類型,賦值和輸出算術運算選擇結構循環(huán)結構函數(shù)定義,函數(shù)調用變量作用域棧,程序運行的基石面向對象異常處理語言提供的公用包這次我們講的循環(huán)結構。循環(huán)結構在編程中廣泛使用,所以一定要了解好循環(huán)結構是怎么用的。正確的寫法,是用循環(huán)結構。 變量和數(shù)據(jù)類型,賦值和輸出 算術運算 選擇結構 循環(huán)結構 函數(shù)定義,函數(shù)調用 變量作用域 棧,程序運行的基石 面向對象 異常處理 語言提供的公用包...
摘要:那么這種封裝的形式就叫做函數(shù)函數(shù)的格式修飾符返回值類型函數(shù)名參數(shù)類型形式參數(shù),參數(shù)類型形式參數(shù),執(zhí)行語句返回值有可能有,有可能無函數(shù)的定義我們參考函數(shù)的格式定義幾個函數(shù)因為我們要在中調用函數(shù),所以函數(shù)也要定義成。 變量和數(shù)據(jù)類型,賦值和輸出 算術運算 選擇結構 循環(huán)結構 函數(shù)定義,函數(shù)調用 max) { max = b; } ...
摘要:那么這種封裝的形式就叫做函數(shù)函數(shù)的格式修飾符返回值類型函數(shù)名參數(shù)類型形式參數(shù),參數(shù)類型形式參數(shù),執(zhí)行語句返回值有可能有,有可能無函數(shù)的定義我們參考函數(shù)的格式定義幾個函數(shù)因為我們要在中調用函數(shù),所以函數(shù)也要定義成。 變量和數(shù)據(jù)類型,賦值和輸出 算術運算 選擇結構 循環(huán)結構 函數(shù)定義,函數(shù)調用 max) { max = b; } ...
摘要:從函數(shù)看局部變量作用域函數(shù)內定義的變量被稱為局部變量。局部變量的作用范圍從聲明開始,直到包含它的塊結束塊就是內的代碼。 變量和數(shù)據(jù)類型,賦值和輸出 算術運算 選擇結構 循環(huán)結構 函數(shù)定義,函數(shù)調用 變量作用域 = 3) { /* 進入代碼塊 */ int j = 10; /* j從這里到 } 都能訪問 */ System.out.println(i); /* 可以訪問...
閱讀 2069·2023-04-26 01:41
閱讀 2587·2021-11-24 09:39
閱讀 1998·2021-11-24 09:38
閱讀 2041·2021-11-19 09:40
閱讀 3895·2021-11-11 11:02
閱讀 3354·2021-10-20 13:48
閱讀 3351·2021-10-14 09:43
閱讀 4611·2021-09-02 15:11