java基礎語言

来源:https://www.cnblogs.com/birdshdbn/archive/2018/08/14/9457861.html
-Advertisement-
Play Games

一.標識符 標識符:在java程式中,有些名字是我們自己定義的,那麼這些我們自己定義的名字就叫做自定義的標識符 標識符的命名規則: 1.標識符是由字母(a-z A-Z)、數字、下劃線(_)、美元符號($)組成的 2.標識符不能以數字開頭 3.標識符是嚴格區分大小寫的 4.標識符是沒有長度限制的 5. ...


一.標識符

    標識符:在java程式中,有些名字是我們自己定義的,那麼這些我們自己定義的名字就叫做自定義的標識符

    標識符的命名規則:

        1.標識符是由字母(a-z  A-Z)、數字、下劃線(_)、美元符號($)組成的

        2.標識符不能以數字開頭

        3.標識符是嚴格區分大小寫的

        4.標識符是沒有長度限制的

        5.標識符的命名要有意義,最好是一看到名字就知道它的意思

        6.關鍵字、保留字不能用於自定義的標識符

    標識符的命名規範:

        1.類名、介面名的每一個單詞的首字母大寫,其他小寫。如:RunTime

        2.變數名、方法名的首單詞全部小寫,其他單詞的首字母大寫,其他小寫。如:readBook

        3.包名所有單詞全部小寫。如:java.lang

        4.常量名所有的單詞全部大寫,如果有多個單詞,那麼單詞與單詞之間用下劃線分開。如:PI、AGE_OF_PERSON

    關鍵字:就是在java程式中具有特殊含義的標識符,一般用於描述程式的結構和表示的數據類型

               

    保留字:是系統保留起來不允許用戶使用的標識符(保留字有const、goto)

 

二.註釋

    註釋:使用文字對程式的說明,註釋是寫給程式員看的,讓程式員更容易瞭解程式的內容,編譯器會忽略註釋的內容

    註釋的類別:

        1.單行註釋       //註釋的內容

        2.多行註釋  /*註釋的內容*/

        3.文檔註釋  /**註釋的內容*/  文檔註釋也算是多行註釋

    註釋的作用:

        1.使用文字對程式的說明,方便程式員瞭解程式的內容

        2.調試程式

    文檔註釋與多行註釋的區別:

        多行註釋的內容不能生成開發者文檔,而文檔註釋的內容可以生成開發者文檔

    如何生成開發者文檔?

        使用javadoc開發工具即可生成開發者文檔

            使用Javadoc工具的格式:

                javadoc -d 存放文檔的路徑   java的源文件 

            使用javadoc需要註意的細節:

                1.如果一個類需要使用Javadoc工具生成開發者文檔,那麼這個類必須要用public修飾

                2.文檔註釋的內容一般位於類或者方法的上面

    寫註釋的規範:

        單行註釋一般位於程式的右側,多行註釋和文檔註釋一般位於類或方法的上面

三.常量

    常量:程式在運行過程中其值不會發生改變的量

    常量的類別:

        1.整數常量:1、2、3

        2.小數常量:1.2、2.3、3.14

        3.布爾常量:布爾常量就只有兩個值,分別是true、false

        4.字元常量:單個字元用單引號引起來的內容。如:'a'、'b'

        5.字元串常量:使用雙引號引起來的內容。如:"Hello World"

    整數常量的表現形式是以不同的進位(二進位、八進位、十六進位....)表現出來的

        二進位由0、1組成;八進位由0~7組成;十六進位由0~9、a(10)、b(11)、c(12)、d(13)、e(14)、f(15)組成

        十進位與二進位之間的轉換:

                十進位轉換成二進位:十進位的數據不斷除以2,直到商為0為止,然後從下往上取餘數就是對應的二進位。

                例子如下:

                    

                二進位轉換成十進位:二進位的數據每一位數都乘以2的n次方,n從0開始遞增,然後把各部分的數據相加

                例子如下:

                      1110(二進位)--------------------->14(十進位)

                      1110(十進位)=0*2^0+1*2^1+1*2^2+1*2^3

                             =0+2+4+8

                             =14(十進位)

        

        十進位與八進位之間的轉換:

                十進位轉換成八進位:十進位的數據不斷除以8,直到商為0為止,然後從下往上取餘數就是對應的八進位。

                例子如下:

                     

                八進位轉換成十進位:八進位的數據每一位數都乘以8的n次方,n從0開始遞增,然後把各部分的數據相加

                例子如下:

                      55(八進位)--------------------->45(十進位)

                      55(八進位)=5*8^0+5*8^1

                            =5+40

                            =45(十進位)

                八進位的數據相當於3個二進位位  

                例子如下:

                      55(八進位)--------------------->101101(二進位)

        十進位與十六進位之間的轉換:

                十進位轉換成十六進位:十進位的數據不斷除以16,直到商為0為止,然後從下往上取餘數就是對應的十六進位。

                例子如下:

                           

                十六進位轉換成十進位:十六進位的數據每一位數都乘以16的n次方,n從0開始遞增,然後把各部分的數據相加

                例子如下:

                      26(十六進位)--------------------->38(十進位)

                      26(十六進位)=6*16^0+2*16^1

                             =6+32

                             38(十進位)

                十六進位的數據相當於4個二進位位

                例子如下:

                      26(十六進位)--------------------->00100110(二進位)

        使用進位的數據時,有幾點要註意下:

                1.如果一個數據沒有加上任何標識符時,預設的是十進位的數據

                2.如果一個數據要表示成二進位時,要在數據前面加上0b

                3.如果一個數據要表示成八進位時,要在數據前面加上0

                4.如果一個數據要表示成十六進位時,要在數據前面加上0x

System.out.println(10);//表示的是十進位的數據        輸出的結果:10
System.out.println(0b10);//表示的是二進位的數據       輸出的結果:2 
System.out.println(010);//表示的是八進位的數據       輸出的結果:8
System.out.println(0x10);//表示的是十六進位的數據      輸出的結果:16

四.變數與數據類型

        變數:程式在運行過程中其值會發生改變的量

        變數可以理解為一個存儲數據的容器,每一個容器都會有他固定的大小、容器里存儲的東西以及容器的名字,往往我們人一般放東西(比如放蘋果)的時候,都會說把蘋果放到多大的籃子當中,java當中也是如此,所以java在聲明變數時,其格式大概是    容量  變數名=數據,這裡的容量就相當於java當中的數據類型,數據就是上述說的常量,接下來我們來說說java的數據類型

        java的數據類型有兩種

                1.基本數據類型

                2.引用數據類型

  java的基本數據類型有八種:

    1.整數的數據類型:

        名稱          記憶體空間    數值範圍

        byte(位元組)      8bit(位)    2^8=256(-128~127)

        short(短整型)      16bit(位)     2^16=65536(-32768~32767)

        int(整型)         32bit(位)     2^32=4294967296(-2147483648~2147483647)

        long(長整型)     64bit(位)     2^64(-9223372036854774808~9223372036854774807)

    2.小數的數據類型:

        float(單精度浮點型)  32bit(位)     2^32=4294967296(-2147483648~2147483647)

        double(雙精度浮點型) 64bit(位)     2^64(-9223372036854774808~9223372036854774807) 

    3.字元的數據類型:

        char(字元)      16bit(位)     2^16=65536(-32768~32767)

    4.布爾的數據類型:

        boolean(布爾)      8bit\32bit(位)  2^8\2^32

        在使用八種數據類型,有幾點要註意下:

                1.如果一個整數沒有加上任何標識的時候,那麼預設的是int類型的數據;如果需要把該數據表示成long類型的時候,那麼需要在數據後面加上L,L是不區分大小寫的,但是建議最好用大寫表示

                2.如果一個小數沒有加上任何標識的時候,那麼預設的是double類型的數據;如果需要把該數據表示成float類型的時候,那麼也需要在數據後面加上F,F也是不區分大小寫的

        聲明變數的方式:

                1.數據類型  變數名;

                2.數據類型  變數名1,變數名2.......;

        聲明變數要註意的幾點:

                1.變數必須是先聲明後使用

                2.在一個作用域中是不能聲明同一個變數名

        字元串的數據類型:String,他是屬於引用類型數據

 

class Demo1 
{
	public static void main(String[] args) 
	{
		byte age = 120;  //聲明瞭一個byte類型的變數,該變數的名字叫age,把120存儲到了age變數中。
		short money = 128;
		int bossMoney = 1000000000;
		long bankMoney = 10000000000000000L;
		//存儲小數
		float f = 3.14f;
		double d = 3.1415926537;
                //存儲布爾值
		boolean b = false;
                //存儲位元組
		char c = 'a'; 
                //存儲字元串
		String str = "hello world";
		System.out.println(str); //獲取一個變數存儲的數據時,只需要使用變數名即可。
	}
}    

 

        數據類型轉換:

                小數據類型------------>大數據類型      自動類型轉換

                大數據類型------------>小數據類型      強制類型轉換

        數據類型轉換可以理解為小容器(小數據類型)里的東西放到大容器(大數據類型)里,是可以放進去的;如果把大容器(大數據類型)里的東西放到小容器(小數據類型)里,那麼就可能沒辦法全部放進去,這樣就會造成大容器里的東西丟失一部分(溢出)

        強制類型轉換的格式:

                小數據類型  變數名=(小數據類型)大數據類型 

        數據類型轉換要註意幾點:

                1.凡是byte、short、char類型的數據在運算的時候都會自動轉換成int類型的數據在運算

                2.兩個不同類型的數據在運算的時候,結果取決於大的數據類型

   

class Demo2 
{
	public static void main(String[] args) 
	{
		byte  b=  11;   
		short s = b; // 把b變數存儲的值賦予給s變數。
		int i = s;  
		long l = i;   
		System.out.println(l);//輸出的結果:11

		int i = 128;  //4個位元組
		byte b =(byte) i;  // 4位元組->1個位元組,需要強制類型轉換
		System.out.println(b);  //輸出的結果: -128

		//凡是byte、short 、 char數據類型數據在運算的時候都會自動轉換成int類型的數據再運算。
		byte b1 =1;
		byte b2 = 2;
		byte b3 = (byte)(b1+b2);
		System.out.println(b3); //輸出的結果:3  
		
		System.out.println('a'+1); //輸出的結果:98 
				
		//兩個不同數據類型的數據在運算的時候,結果取決於大的數據類型
		int i =10;
		long l = 20;
		i = (int)(i+l); 
		System.out.println(i);//輸出的結果:30
	}
}

 

  

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 說起來做一個支付系統最基礎的就是支付功能了,對於我們來說除了各大銀行以外微信和支付寶也是必選項,畢竟人家這個龐大的用戶群在那裡擺著呢,你不用那不是想著放棄這些用戶麽。 今天我們就來看一看對於我們開發者來說如何快速的進行接入。 首先我們要做的就是先去螞蟻金服開放平臺註冊賬號https://open.a ...
  • 這篇文章主要介紹了Python異常處理總結,需要的朋友可以參考下本文較為詳細的羅列了Python常見的異常處理,供大家參考,具體如下: 1.入門讀物 2.進階讀物 3.Web框架 4.爬蟲開發 5.圖形圖像6.數據分析 7.機器學習等等資料!需要的可以加QQ群:832339352!進群免費獲取! 拋 ...
  • Description George took sticks of the same length and cut them randomly until all parts became at most 50 units long. Now he wants to return sticks to ...
  • 1、Java支持基於流的通信和基於包的通信 基於流的通信使用TCP協議(傳輸控制協議)進行數據傳輸,傳輸是無損可靠的 基於包的通信使用UDP協議(用戶數據報協議)進行數據傳輸,不能保證傳輸沒有丟失 2、服務端和客戶端套接字--基於流的通信 客戶端代碼 如果服務端的埠服務沒有起來,運行客戶端的程式會 ...
  • '''re模塊 內部實現不是Python 而是調用了c的庫 re是什麼 正則 表達 式子 就是一些帶有特殊含義的符號或者符號的組合 作用: 對字元串進行過濾 在一對字元串中找到所關心的內容 你就需要告訴電腦過濾規則是什麼樣 通過什麼方式來告訴電腦 就通過正則表達式 re模塊常用方法findall ...
  • 最近發現一個網站www.unsplash.com ( 沒有廣告費哈,純粹覺得不錯 ),網頁做得很美觀,上面也都是一些免費的攝影照片,覺得很好看,就決定利用蹩腳的技能寫個爬蟲下載圖片。 先隨意感受一下這個網站: 接下來開始對網頁進行解析: 在該網頁檢查元素,選擇其中一張圖片查看它的代碼 可以看到,圖片 ...
  • 教材:《彙編語言》 王爽 第三版 Charpter 1. 基礎知識 1.1 : 機器語言 1.2 : 彙編語言的產生 1.3 : 彙編語言的組成 1.4 : 存儲器 1.5 : 指令和數據 1.6 : 存儲單元 1.7 : CPU對於存儲器的讀寫 1.8 : 地址匯流排 1.9 : 數據匯流排 1.10 ...
  • JMM簡介 Java Memory Model簡稱JMM, 是一系列的Java虛擬機平臺對開發者提供的多線程環境下的記憶體可見性、是否可以重排序等問題的無關具體平臺的統一的保證。(可能在術語上與Java運行時記憶體分佈有歧義,後者指堆、方法區、線程棧等記憶體區域)。併發編程有多種風格,除了CSP(通信順序 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...