201871010124 王生濤 第二週學習總結

項目html

內容java

這個做業屬於哪一個課程程序員

https://www.cnblogs.com/nwnu-daizh/算法

這個做業的要求在哪裏數組

https://www.cnblogs.com/nwnu-daizh/p/11475377.html安全

做業學習目標app

  1. 適應老師教學方式,能按照自主學習要求完成本週理論知識學習;
  2. 掌握Java Application程序結構;
  3. 掌握Java語言的數據類型與變量;
  4. 學會使用Java運算符構造各種表達式;
  5. 掌握Java Application輸入輸出技術;
  6. 掌握Java流程控制技術(分支、循環);(重點)

隨筆博文正文內容包括:框架

第一部分:結合Java和C基礎語法的異同比較,總結本週理論知識eclipse

第三章:JAVA的基本程序設計結構編輯器

一:一個簡單的JAVA程序

在本練習中將指導咱們完成咱們的第一個Java應用程序HelloWorld的編寫、編譯和運行,分析糾正可能出現的錯誤。HelloWorld程序將實現顯示輸出問候語「Hello,World」的簡單功能。

1.建立Java應用程序源文件

1)打開文本編輯器NotePad(記事本)

    【開始】→【程序】 →【附件】 →【記事本】

2)在該新建文件中,輸入下述代碼:

    public class HelloWorld {

       public static void main(String[] args) {

        System.out.println("Hello,World!");

       }

  }

注意:所輸入的代碼、命令和文件名的拼寫應與給出的徹底相同,Java語言是大小寫敏感的(case-sensitive),所以必須保持大小寫的拼寫一致,不然會致使編譯或運行出錯。例如:

-          System ≠ system 

-          String ≠ string  

-          public ≠ Public

-          HelloWorld ≠ helloworld

3)保存文件

在記事本(NotePad)窗口的菜單條上選擇菜單【文件】→【另存爲】,在打開的「另存爲」窗口中進行以下操做:

a)使用「保存在」下拉式列表框,指定要將文件保存在哪一個目錄下。例如,將文件保存到d:\javaex目錄下。

b)在「文件名」下拉式列表框中直接輸入「HelloWorld.java」;

c)在「保存類型」下拉式列表框中選擇「全部文件」。

完成上述步驟後,「另存爲」對話框界面應如圖E02-1所示,而後點擊【保存】並退出記事本程序。

2.編譯源文件

1)啓動Win2000命令行窗口

此時默認當前路徑爲系統的安裝路徑(C:\),進入Java源文件所在路徑"D:\javaex"後,運行命令"dir"能夠在該目錄的文件列表中發現文件"HelloWorld.java"

1)在上述命令行窗口中運行命令:javac HelloWorld.java

若是窗口中未出現任何報錯信息,則編譯成功,編譯器會自動生成字節碼文件"HelloWorld.class"並保存在當前路徑下,可再次運行dir命令或在資源管理器中查看該字節碼文件信息。

3.運行程序

在Win2000命令行窗口的同一目錄"D:\javaex"中,運行命令:java HelloWorld

程序將開始運行並顯示輸出"Hello,World!"

二:數據類型

1.四種整數類型(byte、short、int、long): 
byte:8 位,用於表示最小數據單位。
short:16 位,不多用
int:32 位、最經常使用
long:64 位、次經常使用

2.兩種浮點數類型(float、double): 
float:32 位,後綴 F 或 f,1 位符號位,8 位指數,23 位有效尾數。
double:64 位,最經常使用,後綴 D 或 d,1 位符號位,11 位指數

3.一種字符類型(char):
char:16 位,是整數類型,用單引號括起來的 1 個字符(能夠是一箇中文字符),使用 Unicode 碼錶明字符,0~2^16-1(65535) 。

4.一種布爾類型(boolean):true真和false假。

三:JAVA中的變量及常量

1.Java常量

常量一般也被稱爲「final變量」。常量在整個程序中只能被賦值一次。在爲全部對象共享值時,常量是很是有用的。在Java語言中聲明一個常量,除了要指定數據類型外,還須要經過final關鍵字進行限定。聲明常量的標準語法格式以下:

final 數據類型 常量名稱(=值)

在Java編碼規範中,要求常量名必須大寫,而且中間最好使用下劃線做爲分隔符來進行鏈接多個單詞。

當定義的常量若是屬於「成員變量」,則必須在定義時就賦給初值,不然將會在編譯時出先錯誤。

常量在程序運行過程當中主要做用——

1). 表明常數,便於程序的修改,好比:圓周率的值;

2).加強程序的可讀性,好比:常量UP、DOWN、LEFT和RIGHT分辨表明上下左右,其數值分別是一、二、3和4)。

2.Java變量

在Java語言中,全部的變量在使用前必須聲明。聲明變量的基本格式以下:

type identifier [ = value][, identifier [= value] ...] ;

格式說明:type爲Java數據類型;identifier是變量名;可使用逗號隔開來聲明多個同類型變量。

變量雖然是由程序員所命名的,可是變量的命名並非任意的,須要遵循必定的規則:

1). 變量名必須是一個有效的標識符。

2). 變量名不能重複。

3). 應選擇有意義的單詞做爲變量名。在命名變量名時,最好能經過變量名看出變量的內容,這樣既能方便讀者對程序的理解,增長可讀性,又方便程序的維護,減輕程序維護人員的工做負擔。


變量的有效範圍是值程序代碼可以訪問該變量的區域,若超出變量所在區域訪問該變量則編譯時會出現錯誤。在程序中,通常會根據變量可以訪問的區域將變量分爲成員變量和局部變量。

在類體中定義的變量被稱爲成員變量,成員變量在整個類中都有效。類的成員變量又分爲靜態變量(也稱類變量)和實例變量兩種。


3.局部變量(本地變量)

1). 聲明在方法、構造方法或者語句塊中;

2). 在方法、構造方法、或者語句塊被執行的時候建立,當它們執行完成後,變量將會被銷燬;

3). 訪問修飾符不能用於局部變量;

4). 只在聲明它的方法、構造方法或者語句塊中可見;

5). 在棧上分配的;

6). 沒有默認值,因此局部變量被聲明後,必須通過初始化,纔可使用。

4.實例變量

1). 聲明在一個類中,但在方法、構造方法和語句塊以外;

2). 當一個對象被實例化以後,每一個實例變量的值就跟着肯定;

3). 在對象建立的時候建立,在對象被銷燬的時候銷燬;

4). 值應該至少被一個方法、構造方法或者語句塊引用,使得外部可以經過這些方式獲取實例變量信息;

5). 能夠聲明在使用前或者使用後;

6). 訪問修飾符能夠修飾實例變量;

7). 對於類中的方法、構造方法或者語句塊是可見的,通常狀況下應該把實例變量設爲私有,經過使用訪問修飾符可使實例變量對子類可見;

8). 具備默認值,數值型變量的默認值是0,布爾型變量的默認值是false,引用類型變量的默認值是null。變量的值能夠在聲明時指定,也能夠在構造方法中指定;

9)能夠直接經過變量名訪問。


5.類變量(靜態變量)


1). 在類中以static關鍵字聲明,但必須在方法構造方法和語句塊以外;

2). 不管一個類建立了多少個對象,類只擁有類變量的一份拷貝;

3). 除了被聲明爲常量外不多使用。常量是指聲明爲public/private,final和static類型的變量。常量初始化後不可改變;

4). 儲存在靜態存儲區。常常被聲明爲常量,不多單獨使用static聲明變量;

5). 在第一次被訪問時建立,在程序結束時銷燬;

6). 與實例變量具備類似的可見性。但爲了對類的使用者可見,大多數靜態變量聲明爲public類型;

7). 默認值和實例變量類似。數值型變量默認值是0,布爾型默認值是false,引用類型默認值是null。變量的值能夠在聲明的時候指定,也能夠在構造方法中指定。此外,靜態變量還能夠在靜態語句塊中初始化;

8). 能夠經過:ClassName.VariableName的方式訪問;

9). 類變量被聲明爲public static final類型時,類變量名稱通常建議使用大寫字母。若是靜態變量不是public和final類型,其命名方式與實例變量以及局部變量的命名方式一致。
四:運算符

1.算術運算符:
單目:+(取正)-(取負) ++(自增1) - -(自減1) 雙目:+ - * / %(取餘) 三目:a>b?true:false 說明:當a大於b的時候,爲true(也就是冒號以前的值),不然爲false;這整個運算符包括一個關係運算符(能夠是 「>」"<""!="等等),一個「?」,一個「:」,冒號先後須要有兩個表達式或者是值或者是對象。


2。關係運算:
等於符號:==,不等於符號: != ,大於符號:>, 小於符號:<,大於等於符號: >= ,小於等於符號: <= 。


3位運算符 邏輯運算符:
位運算符 與(&)、非(~)、或(|)、異或 (^)&:當兩邊操做數的位同時爲1時,結果爲1,不然爲0。如1100&1010=1000 | :當兩邊操做數的位有一邊爲1時,結果爲0,否.則爲1。如1100|1010=1110 ~:0變1,1變0 ^:兩邊的位不一樣時,結果爲1,不然爲0.如1100^1010=0110 邏輯運算符 與(&&)、非(!)、或(||)

04

賦值運算符
= += -= *= /= %= &= ^= |= <<= >>=

05

instanceof運算符
該運算符是雙目運算符,左面的操做元是一個對象,右面是一個類。當左面的對象是右面的類建立的對象時,該運算符運算結果是true,不然是false。

06

運算符綜述
Java 的 表達式就是用運算符鏈接起來的符合Java 規則的式子.運算符的優先級決定了表達式中運算執行的前後順序.例如,x<y&&!z至關於(x<y)&& (!z),沒有必要去記憶運算符號的優先級別,在編寫程序時可儘可能的使用括號來實現你想要的運算次序,以避免產生難以閱讀或含糊不清的計算順序.
運算符的結合性決定了並列相同級別的運算符的前後順序,例如,加減的結合性是從左到右,8-5+3 至關於(8-5)+3.邏輯否運算符 的結合性是右到左, x 至關於!(!x).表3.4是Java全部運算符的優先級和結合性。

07

位移運算符
<< 帶符號左移 >>帶符號右移 >>> 無號右移

五:字符串

一、Java 中的 StringBuilder 類的經常使用方法

          append(參數):追加內容到當前StringBuilder對象的末尾

          insert(位置,參數):將內容插入到StringBuilder對象的指定位置

          toString():將StringBuilder對象轉換爲String對象

          length():獲取字符串的長度

          toLowerCase():轉換成小寫

          charAt(int i):獲取索引爲i的值

          getBytes():轉換爲字節數組

          indexOf(int ch):查找ch字符在該字符串第一次出現的位置

          indexOf(String str):查找str字符串在該字符串第一次出現的位置

          lastIndexOf(int ch):查找ch字符在該字符串最後一次出現的位置

          lastIndexOf(String str):查找str字符串在該字符串最後一次出現的位置

          split():將字符串拆分紅子串;

        


注意:StringBuffer和StringBuilder 功能同樣,可是StringBuffer 是線程安全的,而 StringBuilder 則沒有實現線程安全功能,因此性能略高。所以通常狀況下,若是須要建立一個內容可變的字符串對象,應優先考慮使用 StringBuilder 類。

二、「==」 和 equals() 有什麼區別呢?

      ==: 判斷兩個字符串在內存中首地址是否相同,即判斷是不是同一個字符串對象

      equals(): 比較存儲在兩個字符串對象中的內容是否一致

六:輸入與輸出語句

  1. 輸入語句

    1).使用Scanner類:

    (1)使用java.util包。  import java.util.*;

    (2)構造Scanner類對象,它附屬於標準輸入流System.in。   Scanner s = new Scanner(System.in); 

    2.使用java.io.BufferedReader和java.io.InputStreamReader:


    步驟:

    (1)使用java.io包。  import java.io.*;

    (2)構造 BufferedReader類對象,它附屬於標準輸入流System.in。   

    2.輸出語句

    Java中的輸出語句有如下四種:

    System.out.println(1111);//換行打印
    System.out.print(1111);//不換行打印
    System.out.write(2222);//字節輸出
    System.out.printf("%+8.3f\n", 3.14);//按格式輸出
    System.out.println(); 是最經常使用的輸出語句,它會把括號裏的內容轉換成字符串輸出到輸出窗口(控制檯),而且換行,當輸出的是一個基本數據類型時,會自動轉換成字符串,若是輸出的是一個對象,會自動調用對象的toString();方法,將返回值輸出到控制檯
    System.out.print(); 與第一個很類似,區別就是上一個輸出後會換行,而這個命令輸出後並不換行。
    System.out.printf(); 這個方法延續了C語言的輸出方式,經過格式化文本和參數列表輸出。

    七:數組
  2. 使用數組的三個步驟,

    1).聲明一個用於存儲數據的變量 

    2).建立一個數組並給他賦值。

    3).在數組中儲存信息 

    2.工具/原料
    javaide
    3.方法/步驟
    聲明數組變量
      建立數組時,首先須要聲明一個用來儲存數據的變量。數組變量之出了數組將儲存的對象數組類型以及數組名稱。
    4.語法:

1).數據類型 [] 變量名;
.數據類型 變量名[];
5.建立對象數組
聲明數組變量後,而後就是須要建立一個數組對象,並將它賦給數組變量:
1).  使用new  關鍵字
2).  初始化數組的類容
由於在java中數組是對象,因此可使用new 關鍵字來建立,用new 關鍵字建立數組的時候必須指定數組的長度,使用new關鍵字建立數組的時候,全部元素都會被自動初始化,(int數組爲0 , 字符串數組爲 「\0」,布爾數組爲false ,對象數組爲null )。

6.語法:
數據類型  []變量名=new 數據類型[數組長度];
數Demo [2]=35;
組建立好以後就能夠賦值了,在數組中每一個元素都是經過下標來訪問的。

第二部分:實驗部分

實驗名稱:實驗二 Java基本程序設計(1)

1.  實驗目的:

(1)進一步熟悉命令行和IDE兩種方式下java程序開發的基本步驟;

(2)掌握Eclipse集成開發環境下導入Java源程序的過程;

(3)掌握Java語言構造基本程序的數據類型、變量、運算符、各種表達式、輸入輸出、流程控制的基本語法;

(4)掌握Math類、String類、StringBuilder類的用法。

3. 實驗步驟與內容:

實驗1 程序互評

在程序測評這節課中,咱們修改了上上節課的九九乘法表,在修改的過程當中咱們對九九乘法表的程序有了更近一步的瞭解,並且意識到在此次實驗中咱們對乘法表的掌握不夠深入,犯了許多簡單的錯誤,甚至連最基礎的框架都沒記下來,讓咱們意識到在之後的學習在必定要認真,仔細,老師講的做業要認真完成。

2:編寫包含如下代碼片斷的java應用程序,輸出字符串類對象s3的值。

String s1=「Hello!」;

String s2=「World」;

String s3=s1+s2;

程序運行結果及代碼截圖以下:

實驗3:更改實驗2中s一、s二、s3爲StringBuilder類對象,觀察程序運行結果並與實驗2結果進行對比,理解String類對象與StringBuilder類對象的區別。

實驗4:在命令行方式下調試運行下列程序,理解java應用程序命令行參數的用法。

public class Message

{  

public static void main(String[] args)

  {     

  if (args[0].equals(「-h」)) System.out.print(「Hello」);

    else if(args[0].equals(「-g」)) System.out.print(「goodbye,」);

  for(int i=1;i<args.length;i++)

    System.out.print(「  」+args[i]);

  System.out.println(「!」);

  }

}

實驗過程當中的截屏以下:

 

 

 

 

 

實驗5:Eclipse環境下導入第3章示例程序InputTest.java步驟:

 

(1) 新建java project以下圖:

 

 

 

 

 

 

(2) 選擇File->import->File ystem->Next,打開文件導入窗口以下圖,點擊上方Browse選擇導入源程序並選中,點擊下方Browse選擇源程序導入位置爲新項目InputTest/src位置後,點擊finish完成導入。

 

 

 

 

 

 

(3) 打開InputTest項目src文件夾的缺省包,雙擊InputTest.java在IDE源程序編輯區打開文件。

 

(4) 右鍵單擊InputTest.java文件名打開快捷菜單,選擇Run as->java application運行此程序,結合程序運行結果,理解代碼中Scanner類對象用法,掌握java控制檯輸入方法。

實驗截圖以下:

實驗6:按照實驗5操做步驟,導入WriteReadFileTest.java示例程序,運行程序並理解程序代碼,觀察項目文件夾下文件myfile.txt的內容,掌握文件的輸入輸出操做。

1):實驗運行結果以下:

 

 2):myfile.txt內容以下:

 

 

 

 實驗7:按照實驗5的操做步驟,導入第3章3-3——3-4示例程序,掌握兩個程序循環控制結構的用途。

3-3截圖以下:

3-4截圖以下:

實驗8:按照實驗5的操做步驟,導入第3章3-5示例程序,理解抽獎機率計算算法。

實驗截圖以下:

實驗總結:

意識到了個人不足,理解了String類對象與StringBuilder類對象的區別。而且嘗試了一些經常使用的String類和StringBuilder類的方法。對程序在eclipse中的運行更加熟練,以及將文件導入eclipse中進行運行與輸出,在導入的過程當中出現了許多的問題,尤爲是後面的許多實驗,但經過助教老師的講解修改了以後都一一獲得瞭解決。學習了文件的輸入輸出。加深了對三種循環的理解,Java語言的循環是和C語言沒有太大差異的。

相關文章
相關標籤/搜索