馬凱軍201771010116《面向對象程序設計(java)》第二周學習總結

第一部分:理論知識學習部分

(1)基本知識:簡單應用程序的結構;Java環境里的注釋方式;

(2)數據類型(4種整型、2種浮點型、1種字符型‘char’、真值型‘Boolean’。

(3)變量,每個變量都有一個type。在聲明變量時,變量的類型位于變量名之前(不能用Java保留字作為變量名);變量初始化;常量。

(4)運算符‘+、-、*、/’。當用到/運算符時,兩個數都是整數時,表示整數除法,不然表示浮點數除法。整數求余用%(15%2等于1)。注意整數被零除時會出現異常,浮點數被零除時得到無群大或NaN的結果。數學函數與常量。

(5)數據類型的轉換:強制類型的轉換;數值類型之間的轉換;轉換過程涉及到各種運算符。

(6)字符串是字符序列組成的串(用法類似于數組);字符串的拼接;不可變字符串(String沒有提供用于修改字符串的方法;檢測字符串是否相等;空串與NUll串(使用條件:if(str==null,if(str!=null&&str.length()!=0));構建字符串(StringBuilder實現)節約時間和空間。

輸入輸出,要想通過控制臺進行輸入,首先需要構造一個Scanner對象,并與“標準輸入流”System.in關聯。格式化輸出,使用System.out.print(x)將要輸出的對對象進行輸出;文件的輸入與輸出,首先用file構造一個scanner對象(例如:Scanner in=new Scanner(Paths.get(“myfile.txt”),”UTF-8”);,寫入文件要構造一個PrintWriter對象PrintWriter out=new PrintWriter(“myfile.txt”),”UTF-8”);。

(7)數組是一種數據結構,它是有序數據的集合, 數組中的每個元素的數據類型都是相同的。

?對元素的確定是由數組名和它的下標實現的, 如a[0]代表數組a的第一個元素,a[1]代表數組 a的第二個元素,依次類推。

第二部分:實驗部分

1.?實驗名稱:實驗一?Java基本程序設計(1)

2. ?實驗目的與要求:

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

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

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

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

3. 實驗步驟與內容

2、實驗內容和步驟

實驗1:編寫java 應用程序,輸出以下4個表達式的值。

????int i=1;

????double d=1.0;

???(1) 45+45*50%i--

???(2) 1.5*3+d++

???(3) (true)&&(3>4)

???(4) (i>0)||(i<0)

?

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

String s1=“Hello!”;

String s2=“World”;

String s3=s1+s2;

?

實驗3:更改實驗2中s1、s2、s3為StringBuilder類對象,觀察程序運行結果并與實驗2結果進行對比,理解String類對象與StringBuilder類對象的區別。

?

? ? string本身是不可改變的,它只能賦值一次,每一次內容發生改變,都會生成一個新的對象,然后原有的對象引用新的對象,而每一次生成新對象都會對系統性能產生影響,這會降低.NET編譯器的工作效率。而StringBuilder類則不同,每次操作都是對自身對象進行操作,而不是生成新的對象,其所占空間會隨著內容的增加而擴充,這樣,在做大量的修改操作時,不會因生成大量匿名對象而影響系統性能。String是不可變化的字符,StringBuilder是可以變化的字符。String的不可變是由于它的底層是一個private final char[],沒有方法可以修改它的值,所以它是不可變化,而StringBuilder底層也是一個char[],修飾符是缺省的,同包類都可以修改它,所以StringBuilder是一個可變的字符。StringBuilder可以通過append,insert來修改char[]的值。。

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

public class Mes

{ ?

public static void main(String[] args)

??{ ????

??if (args[0].equals(“-t”))

System.out.print(“today”);

else if(args[0].equals(“-m”);

?System.out.print(“morning,”);

??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的內容,掌握文件的輸入輸出操作。

實驗7:按照實驗5的操作步驟,導入第3章示例程序,每個示例程序從語法、算法兩個角度總結學習內容。

?

?

?

(1)測試Retirement.java,Retirement2.java,LotteryOdds.java掌握循環控制結構;

?

(2)測試BigIntegerTest.java,掌握大數值類的用法;

?

(3)測試LotteryDrawing.java,掌握數組的用法;

?

?

(4)測試CompoundInterest.java,掌握多維數組的用法;

?

(5)測試LotteryArray.java,掌握不規則數組的用法。

實驗總結:

? ? ? 在本次的實驗中自己對Java編程的環境更加的熟悉,進一步熟悉命令行和IDE兩種方式下java程序開發的基本步驟,對運算符在Java中的運用也有了掌握,理解String類對象與StringBuilder類對象的區別。(string本身是不可改變的,它只能賦值一次,每一次內容發生改變,都會生成一個新的對象,然后原有的對象引用新的對象,而每一次生成新對象都會對系統性能產生影響,這會降低.NET編譯器的工作效率。而StringBuilder類則不同,每次操作都是對自身對象進行操作,而不是生成新的對象,其所占空間會隨著內容的增加而擴充,這樣,在做大量的修改操作時,不會因生成大量匿名對象而影響系統性能。String是不可變化的字符,StringBuilder是可以變化的字符。String的不可變是由于它的底層是一個private final char[],沒有方法可以修改它的值,所以它是不可變化,而StringBuilder底層也是一個char[],修飾符是缺省的,同包類都可以修改它,所以StringBuilder是一個可變的字符。StringBuilder可以通過append,insert來修改char[]的值。)在本次的實驗中最大的收獲是經過后面幾個小實驗的進行,熟練的掌握了Eclipse集成開發環境下從文件中導入程序的步驟。掌握Java語言構造基本程序的數據類型、變量、運算符、各類表達式、輸入輸出、流程控制的基本語法;對用程序輸出的數組,多維數組,不規則數組有了基本的了解,對以后數組在Java中的應用有了初步的認識。

轉載于:https://www.cnblogs.com/zero--/p/9612866.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/537901.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/537901.shtml
英文地址,請注明出處:http://en.pswp.cn/news/537901.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【代碼質量管理工具】-由sonar引發的思考

原文路徑&#xff1a;https://blog.csdn.net/luckystar689/article/details/53968102 ---------------------------------------------------------------------------------------- 之前&#xff0c;在看《笑傲江湖》的時候&#xff0c;郭德綱在給一對夫妻的表演做評審的時候…

php curl 模擬多線程,php利用curl 多線程 模擬 并發的詳解

php利用curl 多線程 模擬 并發的詳解發布于 2014-12-07 10:17:25 | 265 次閱讀 | 評論: 0 | 來源: 網友投遞PHP開源腳本語言PHP(外文名: Hypertext Preprocessor&#xff0c;中文名&#xff1a;“超文本預處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點&…

新版DAEMON Tools Lite打不開 bin 文件解決方法

DAEMON Tools Lite 支持打開 *.cue 解決方法很簡單&#xff1a;將*.bin 重命名為 *.cue 就可以打開

Linux集群架構(LVS DR模式搭建、keepalived + LVS)

為什么80%的碼農都做不了架構師&#xff1f;>>> LVS DR模式搭建 準備工作&#xff1a;三臺機器 分發器&#xff0c;也叫調度器&#xff08;簡寫為dir&#xff09;&#xff1a;192.168.248.128 rs1 &#xff1a;192.168.248.129 rs2 : 192.168.248.130 vip : 192.16…

java手機狀態欄圓形圖標,android實現狀態欄添加圖標的函數實例

本文實例講述了android實現狀態欄添加圖標的函數。分享給大家供大家參考。具體如下&#xff1a;private void showNotification() {// 創建一個NotificationManager的引用NotificationManager notificationManager (NotificationManager)AutoFile.this.getSystemService(andro…

Windows下SVN回滾到舊版本(TortoiseSVN)

原文地址&#xff1a;https://www.cnblogs.com/tommy-huang/p/4729634.html ---------------------------------------- 當發現新提交的代碼有問題&#xff0c;然后想將某個舊的版本作為最新的版本時&#xff0c;可以使用回滾&#xff0c; 操作步驟如下&#xff1a; 1. 簽出…

看懂架構設計中的服務隔離

前言 我們在做系統架構設計的時候&#xff0c;經常離不開的一個話題就是進行服務的隔離設計。 那什么是「服務隔離」呢&#xff1f; 顧名思義&#xff0c;它是指將系統按照一定的原則劃分為若干個服務模塊&#xff0c;各個模塊之間相對獨立&#xff0c;無強依賴。當有故障發生時…

2018最新蘋果APP上架App Store流程(超詳細)

內容很豐富&#xff0c;點擊查看博文 https://blog.csdn.net/xxw888/article/details/73618837/

[五] JavaIO之InputStream OutputStream簡介 方法列表說明

InputStream 和 OutputStream 對于字節流的輸入和輸出 是作為協議的存在 所以有必要了解下這兩個類提供出來的基本約定 這兩個類是抽象類,而且基本上沒什么實現,都是依賴于子類具體的去實現 但是他是對于其子類 協議綱領一般的存在 了解清楚每一個方法含義,對于后續具體的子類將…

Mysql yum 安裝后,一些重要的文件路徑

默認配置文件路徑&#xff1a; 配置文件&#xff1a;/etc/my.cnf 日志文件&#xff1a;/var/log//var/log/mysqld.log 服務啟動腳本&#xff1a;/usr/lib/systemd/system/mysqld.service socket文件&#xff1a;/var/run/mysqld/mysqld.pid #(a)數據庫目錄 /var/lib/mysql…

mysql雙機熱備 配置文件,MYSQL 雙機熱備配置手冊()

[原創] MYSQL 雙機熱備配置手冊[原創]http://www.chinaunix.net 作者:squall1 發表于&#xff1a;2007-07-23 19:01:43【發表評論】【查看原文】【存儲備份之家討論區】【關閉】作者&#xff1a;CU-squall發表于&#xff1a;2005年4月18日 8:21 可以不經作者同意自由傳播&…

[轉]資本經營董事長班告訴你:不只企業有商業模式,個人商業價值更重要

本文轉自&#xff1a;http://blog.sina.com.cn/s/blog_181b5b47e0102xz4v.html 東方財智-資本經營董事長班>>> 經營者如何輕松駕馭金融工具為企業發展加速、升級互聯網工具實現品牌營銷裂變、利用管理工具優化公司內部結構&#xff0c;把握前沿視角&#xff0c;實現快…

CentOS 7添加開機啟動服務腳本

原文路徑&#xff1a;https://blog.csdn.net/wang123459/article/details/79063703 --------------------------------------------------------- 一、添加開機自啟服務 在CentOS 7中添加開機自啟服務非常方便&#xff0c;只需要兩條命令(以Jenkins為例)&#xff1a; system…

php 彩票系統,hsyl12141511 一套完整的PHP版彩票系統 - 下載 - 搜珍網

文件名大小更新時間BOEKJ02017-12-14BOEKJ\.idea02017-12-13BOEKJ\.idea\BOEKJ.iml2812017-04-28BOEKJ\.idea\modules.xml2622017-04-28BOEKJ\.idea\workspace.xml100272017-04-28BOEKJ\String-ext.js10402015-05-30BOEKJ\TianHeng.exe230402015-05-05BOEKJ\config.js309232017…

CPR認證-建材CE認證-305/2011/EU

建材CPR認證 - Regulation (EU) No 305/2011  2011年3月&#xff0c;歐盟頒布了新建筑產品法規RETULATION &#xff08;EU&#xff09; No 305/2011 – CPR&#xff0c;并通告了新法規于2013年7月進入強制執行&#xff0c;取代了老CPD指令89/106/EEC。  新的建材CPR認證也是…

python支持復數類型以下什么說法是錯誤的,【Python】專項練習題(1)

1.python代碼如下:foo [1,2]foo1 foofoo.append(3)A.foo 值為[1,2]B.foo 值為[1,2,3]C.foo1 值為[1,2]D.foo1 值為[1,2,3]答案&#xff1a;B D鏈接&#xff1a;https://www.nowcoder.com/profile/153165401/myFollowings/detail/20055659來源&#xff1a;牛客網2.下列程序打印…

ios10不能定位 window.navigator.geolocation.getCurrentPosition(定位第一節)

原文連接&#xff1a; https://blog.csdn.net/michael_ouyang/article/details/54137709 --------------------------------------------------------- 問題分析&#xff1a; 目前由于許多蘋果用戶都升級到了iOS系統&#xff0c;蘋果的iOS 10已經正式對外推送&#xff0c;…

php網站無法顯示,php – 在UTF-8網站上無法正確顯示的字符

我已經完成了我能想到的一切,但是在這個網頁上沒有正確顯示特殊字符.例如,在數據庫中它是&#xff1a;但在網站上它是&#xff1a;Nouveaux R&#xfffd;alistes這是我檢查過的一切……數據庫設置為UTF-8&#xff1a;該頁面是用NetBeans編寫的,文檔編碼設置為UTF-8&#xff1a…

ios如何獲取gps坐標(定位第二節)

原文連接&#xff1a; https://blog.csdn.net/michael_ouyang/article/details/54378338 -------------------------------------------------------------------- 在上一篇文章&#xff0c;解決ios 10不能定位的問題&#xff0c;把navigator.geolocation.getCurrentPosition…