最優(yōu)模式學(xué)習(xí)編程(第1章Java基礎(chǔ))譚東編寫.docx_第1頁
最優(yōu)模式學(xué)習(xí)編程(第1章Java基礎(chǔ))譚東編寫.docx_第2頁
最優(yōu)模式學(xué)習(xí)編程(第1章Java基礎(chǔ))譚東編寫.docx_第3頁
最優(yōu)模式學(xué)習(xí)編程(第1章Java基礎(chǔ))譚東編寫.docx_第4頁
最優(yōu)模式學(xué)習(xí)編程(第1章Java基礎(chǔ))譚東編寫.docx_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

最優(yōu)模式學(xué)習(xí)編程(第1章Java基礎(chǔ))最優(yōu)模式學(xué)習(xí)編程(Java Web開發(fā)與Android) 用文字總結(jié)就是: 1.Java基礎(chǔ):5天 2.Java面向?qū)ο?5天 3.Java核心:10天 4.Java項目:5天(此項目結(jié)合java期間所學(xué)的大部分技術(shù)和知識,能夠讓你理論結(jié)合實際運用) - 5.數(shù)據(jù)庫:3天 - MySQL(想學(xué)oracle的也是3天) 6.JDBC:3天(數(shù)據(jù)庫和java結(jié)合) 7.XML:2天 - 8.HTML:2天 9.CSS:2天 10.JavaScript:2天 - 11.Servlet/JSP:9天 - 12.注意:學(xué)習(xí)安卓的這里可以跳過,學(xué)習(xí)Java Web開發(fā)的看這里: 3大框架學(xué)習(xí)階段:Struts、Hibernate、Spring 每個框架各需4天(學(xué)習(xí)安卓的可以將此階段放到最后) - 13.Android核心I :7天 14.Android核心II :7天 15.Android高級:6天 16.T-Manager項目:10天 17.T-Game項目:10天 18.T-Solo項目:10天 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 第1章 Java基礎(chǔ) Java Basic(5days) Day01 Java簡介、變量、二進(jìn)制 1.Java語言簡介 1.1 Java平臺分類: JavaSE:Java標(biāo)準(zhǔn)版,Java基礎(chǔ)部分 JavaEE:Java企業(yè)版(Servlet/JSP,Struts2,Hibernate,Spring框架) JavaME:Java微型版 - Android 1.2 Java語言的特點: 1)簡單:具有簡單的語法,舍棄了多重繼承、運算符重載等,具有垃圾回收的特性 2)安全:不使用指針,避免了直接操作內(nèi)存 3)面向?qū)ο?OO,一個純粹的面向?qū)ο蟮木幊陶Z言,具有封裝、繼承、多態(tài)等特征 4)跨平臺:一次編寫,處處運行。Java程序編譯后可以運行在各種平臺上 1.3 Java為什么能夠跨平臺, 1)JVM - Java虛擬機,用于解析和執(zhí)行Java代碼,各個平臺都有自己的JVM 2)字節(jié)碼 - 是與平臺無關(guān)的指令,包含在.class文件中 過程: .java源文件-javac編譯-.class字節(jié)碼文件 可以運行在各種平臺的JVM中 1.4 JVM、JRE、JDK的關(guān)系 JVM - Java虛擬機 JRE - Java運行時(環(huán)境),JRE = JVM + JavaSE API (在用戶環(huán)境下,Java程序只需要JRE即可) JDK - Java開發(fā)工具包,JDK = JRE + Java Tools JDK主目錄bin: 包含java開發(fā)工具,如javac.exe,java.exe lib: 包含Java SE API,如rt.jar JRE=JVM+JavaSE API JDK=JRE+Java Tools 1.5 開發(fā)工具 1)記事本+命令行(配置Java環(huán)境) Java環(huán)境變量: JAVA_HOME 設(shè)置JDK的主目錄 CLASSPATH 設(shè)置Java類庫的位置 ,.;%JAVA_HOME%lib PATH 設(shè)置可執(zhí)行文件的路徑,.;%JAVA_HOME%bin SRC 源文件夾(Source Folder)包是用來管理類的 測試Java環(huán)境:c:/java -version 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 2)Eclipse - 一個Java集成開發(fā)環(huán)境 a. 工作區(qū):Workspace,用于管理Java工程 b. 工程: Project,目前使用Java Project c. 版面:由相關(guān)的多個視圖組成 d. 源文件夾:Source Folder,用于存放Java源文件,默認(rèn)的源文件夾是src 2.Java程序的基本結(jié)構(gòu) 2.1 Java源文件 是一個以.java結(jié)尾的文本文件,包含package語句、import語句和類的定 義: 如程序目錄為:day01HelloWorld.java 則程序內(nèi)容開頭應(yīng)寫為: package day01; / day01的包 public class HelloWorld /類名和文件名必須一致 2.2 package語句: 用于指定類所在的包名,Java源文件放在與包同名的目錄下。 package day01;-Java源文件放在srcday01下 可以在包中使用.分割: package day01.homework; - Java源文件放在srcday01homework下 2.3 類的定義: public修飾的類稱為公有類,公有類的類名需要和Java源文件名稱保持相同。 一個Java源文件可以包含多個類的定義,但至多能包含一個公有類。 2.4 主方法 又稱為入口方法,Java控制臺程序在運行時執(zhí)行的方法: public static void main(String args) . 2.5 命名規(guī)則: 類名通常以大寫字母開頭, 方法名通常以小寫字母開頭, 關(guān)鍵字區(qū)分大小寫,如public 2.6 方法中的語句以分號結(jié)尾 2.7 Java程序的編譯和運行過程: a. javac.exe將Java源程序編譯為字節(jié)碼文件: Demo1.java-Demo1.class b. 每次運行Java程序時,首先啟動一個單獨的JVM進(jìn)程(由java.exe提供) 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 c. JVM加載字節(jié)碼文件,并進(jìn)行安全校驗 d. JVM將字節(jié)碼二次編譯為平臺相關(guān)的機器碼: .class - 平臺相關(guān)的機器碼 e.JVM調(diào)用主方法,運行程序并輸出結(jié)果 3.掌握變量的使用 3.1 什么是變量, 用于存儲一個變化的數(shù)據(jù),運行時變量在內(nèi)存中有對應(yīng)的存儲單元 3.2 聲明變量: 數(shù)據(jù)類型 變量名稱; 常用的數(shù)據(jù)類型有int,double等 變量名稱中可以使用字母、數(shù)字、_、$,但不能以數(shù)字開頭: int _age; double $salary; int v1, v2; 3.3 變量的初始化:第一次給變量賦值稱為初始化 int v3=65; v1 = 100; 3.4 使用變量: v1 = v1 + 1; v2 = v3; System.out.println(v3); 重要規(guī)則:局部變量(方法中定義的變量)必須初始化之后才能使用。 Task:交換兩個變量的值 4.二進(jìn)制基礎(chǔ): 4.1 常用的進(jìn)制: 1)十進(jìn)制:0-9,逢10進(jìn)1 2)二進(jìn)制:0-1,逢2進(jìn)1, 計算機內(nèi)部數(shù)據(jù)采用二進(jìn)制表示,1個字節(jié)(byte)由8個二進(jìn)制位(bit)組成 int a=30; -1個整數(shù)在內(nèi)存中占4個字節(jié) 0000 0000 0000 0000 0000 0000 0001 1110 char ch = A; -1個字符在內(nèi)存中占2個字節(jié) 0000 0000 0100 0001 3)十六進(jìn)制:0-9,a,b,c,d,e,f, 每4位構(gòu)成1個十六進(jìn)制數(shù)位 二進(jìn)制 十進(jìn)制 十六進(jìn)制 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 0000 0 0x0 1001 9 0x9 1010 10 0xa 1111 15 0xf 定義十六進(jìn)制的變量: int a = 0x0000001e; 4.2 二進(jìn)制和十進(jìn)制的轉(zhuǎn)換: 1)二進(jìn)制-十進(jìn)制 關(guān)鍵理解二進(jìn)制數(shù)位的權(quán): 128 64 32 16 8 4 2 1 0 1 0 0 0 0 0 1 =1*2(0)+0*2(1)+1*2(6)+0*2(7)=65(十進(jìn)制) Task:1000個蘋果放在10個箱子中,客戶無論取多少個蘋果,都可以整箱提供,而不必拆箱。問蘋果如何分配到箱子中, 1 2 4 8 16 32 64 128 256 489 二進(jìn)制0011 1011 = 1+2+8+16+32=59 2)十進(jìn)制 - 二進(jìn)制:依次尋找最接近的權(quán) 64 32 16 8 4 2 1 十進(jìn)制59 - 0 1 1 1 0 1 1 27 11 3 1 4.3 二進(jìn)制和十六進(jìn)制的轉(zhuǎn)換: 二進(jìn)制 - 十六進(jìn)制:每4位對應(yīng)一個十六進(jìn)制數(shù)位 0011 1011 0x3b = b*16(0)+ 3*16(1) = 59 十六進(jìn)制 - 二進(jìn)制 0x4f 0100 1111 5.Integer類中與進(jìn)制轉(zhuǎn)換有關(guān)的方法: String toBinaryString(int num) - 將num轉(zhuǎn)換為二進(jìn)制形式的字符串 String toHexString(int num) - 將num轉(zhuǎn)換為十六進(jìn)制形式的字符串 int parseInt(String s,int radix) - 將指定進(jìn)制(radix)形式的字符串轉(zhuǎn)換為整數(shù) 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 Day02 基本數(shù)據(jù)類型 - 內(nèi)容回顧: 1)Java語言的特點:簡單,安全,面向?qū)ο?,跨平臺 2)Java平臺無關(guān)性:JVM,字節(jié)碼(.class) 3)JVM,JRE=JVM+JavaSE API,JDK=JRE+Java Tools 4)Eclipse: 工作區(qū),項目(Java Project),包 5)重點:Java程序的基本結(jié)構(gòu) src/day01/homework/HomeWork1.java package 語句; 類的定義 - 公有類的名稱和源文件名稱保持相同 主方法 - main方法 6)難點:變量的使用 - 聲明,初始化,變量賦值,使用變量 *局部變量必須在初始化時候才能使用 7)難點:二進(jìn)制基礎(chǔ) a. 二進(jìn)制、十六進(jìn)制的表示方式 b. 進(jìn)制的轉(zhuǎn)換 c. Integer類的相關(guān)方法: String toBinaryString(int n) String toHexString(int n) int parseInt(String s,int radix) 如int n=Integer.parseInt(ff,16);/n=255 8)System.out.Println();快捷鍵:sysout+alt+右斜杠 9) Integer類的相關(guān)方法: String toBinaryString(int num) String toHexString(int n) int parseInt(String s,int radix) 以上為將字符串轉(zhuǎn)換成整數(shù)的 下面的是將各種進(jìn)制轉(zhuǎn)換為十進(jìn)制 如 int n=Integer.parseInt(ff,16); / n=255 第一個參數(shù)的字符串要和第二個參數(shù)的屬性一樣 - 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 1. 補碼 - 負(fù)數(shù)的二進(jìn)制形式 1.1 補碼 按位取反加一。(首先得到對應(yīng)正數(shù)的二進(jìn)制形式,然后按位取反加一) 例子:-45: 45對應(yīng)的二進(jìn)制是: 0010 1101 按位取反 1101 0010 -45 - 1101 0010 加一 - 1101 0011 負(fù)數(shù)的二進(jìn)制表示形式就是補碼形式(按位取反加一) 2. 編程相關(guān) 2.1 文檔注釋 /* 文檔注釋,用于類和方法前 . */ 2.2 Eclipse常用的快捷鍵: ALT+/ : 智能產(chǎn)生補充代碼至完整,(sysout,main,for,if) ALT+UP : 將代碼向上移動一行 ALT+DOWN:將代碼向下移動一行 CTRL+ALT+UP:將代碼向上復(fù)制一行 CTRL+ALT+DOWN:將代碼向下復(fù)制一行 CTRL+D:快速刪除一行代碼 CTRL+/:添加或取消單行注釋 SHIFT+CTRL+/:添加多行注釋 SHIT+CTRL+:取消多行注釋 SHIFT+CTRL+F:格式化代碼 SHIT+ALT+X,J:運行Java Project 課堂練習(xí): 創(chuàng)建類Demo3,定義一個int變量,值為-128,分別輸出對應(yīng)的二進(jìn)制和十六進(jìn)制的字符串,添加適當(dāng)?shù)淖⑨?,練?xí)使用各種快捷鍵 3. 數(shù)據(jù)類型 3.1 數(shù)據(jù)類型 基本數(shù)據(jù)類型:byte,short,int,long,float,double,char,boolean 引用類型:如Integer,String 3.2 基本數(shù)據(jù)類型的范圍 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 基本數(shù)據(jù)類型:byte-字節(jié)類型,存儲整數(shù),占用1個字節(jié),存儲范圍-128127 short-短整型,存儲整數(shù),占用2個字節(jié)(16位),存儲范圍 -2(15) 2(15)-1 Int - 整型,占用4個字節(jié)(32位),存儲范圍-2(31) 2(31)-1,約21億+long - 長整型,占用8個字節(jié)(64位) float - 單精度浮點類型,占用4個字節(jié) double - 雙精度浮點類型,占用8個字節(jié),精度較高 char - 字符類型,存儲一個字符,占用2個字節(jié) 例如: char c1=A; char c2=中; 字符采用unicode編碼,范圍065535 A - 65 0000 0000s 0100 0001 09,AZ,az連續(xù)編碼(與ASCII編碼相同): 0 - unicode編碼為48 A - 65 a - 97 boolean - 布爾類型,存儲true ,false 4. 理解字面量 4.1 字面量 字面量又稱為直接量,在語句中直接使用的數(shù)值或字符稱為字面量。 int n=100; /100就是字面量 char c=A; /A就是字面量 數(shù)值類型的字面量 byte,short,int類型的字面量就是數(shù)值本身 short sh1=0x7fff;/十六進(jìn)制的字面量面前使用0x,否則無法識別字面量 long類型的字面量以l、L結(jié)尾;(以小寫或者大寫L結(jié)尾) 例如: long num=1L; Float 類型的字面量以f、F結(jié)尾 float f1=1.5f; double類型的字面量以d、D結(jié)尾 double d1=3.14d; (浮點數(shù)的默認(rèn)字面量類型為double類型) 字符類型的字面量使用單引號中的字符: char c1=A,c2=中;(char類型只能定義一個字符,不能定義多個字符串) 4.2 使用轉(zhuǎn)義字符: n 換行 t Tab鍵,一般是4個英文字符的寬度 u十六進(jìn)制Unicode編碼 提供字符對應(yīng)的Unicode編碼 轉(zhuǎn)義字符,這個表示一個字符單引號 (boolean類型的字面量只有true和false) 5. 數(shù)據(jù)類型的轉(zhuǎn)換 自動類型轉(zhuǎn)換:小類型自動賦值給大類型 大類型V1 = 小類型數(shù)據(jù); 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 如int n=100;long num=n; char-long byte-short-int-long -float-double 強制類型轉(zhuǎn)換: 小類型v2=(小類型)大類型數(shù)據(jù): 如:int n=0x7f01; byte b=(byte)n; 可能損失數(shù)據(jù)精度 6. 使用Scanner接收控制臺的輸入 6.1 Scanner類: JavaSE提供的一個類,位于java.util包中(也叫工具包),提供了接收控制臺輸入的各種方法 如何使用Scanner類: 首先使用import語句導(dǎo)入包java.util import java.util.Scanner; 創(chuàng)建Scanner的對象: Scanner sc=new Scanner(System.in); 調(diào)用Scanner的方法獲取相應(yīng)的輸入的數(shù)據(jù); String next() -接收輸入的字符串,不能包含空格 int nextInt() -接收輸入的整數(shù) doubble nextDouble() -接收輸入的浮點數(shù) 例如:String name=sc.next();/對象.方法 作業(yè): 創(chuàng)建Java程序,接收用戶輸入的一個整數(shù),分別輸出對應(yīng)的二進(jìn)制和十六進(jìn)制的字符串 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 Day03 基本運算符 1.基本運算符 1.1 Java語句以;結(jié)尾 int a=100+200; Java表達(dá)式 a+1 true&false 無符號右移運算符 運算符是java表達(dá)式的組成部分 1.2 運算符的分類: 算術(shù)運算符 + - * / % 賦值運算符 = += -= *= /= %= 自增運算符 + - 關(guān)系運算符 = != = = 邏輯運算符 & | ! 三元運算符 exp?exp1:exp2 位運算符 & | 1.3 算數(shù)運算符 1) / 整除運算符 int v1=10/3; /3 double v2=10/3; /3.0 double v3=10.0/3; / 3.333 2) % 取模(整數(shù)后的余數(shù)) int v=10%3; / 1 3) 表達(dá)式中只有byte或者short類型,結(jié)果是int類型 byte v1=1,v2=2; byte v3=v1+v2; /編譯不能通過 4) 表達(dá)式中小類型自動轉(zhuǎn)換為大類型,表達(dá)式結(jié)果的類型由大類型決定 5) 表達(dá)式中字符串使用+(即字符串的拼接)從左向右進(jìn)行結(jié)合 String s1=v=+100+200; /v=100200; String s2=100+200+v; /300v 1.4 賦值運算符 int a=1; int b=2; a+=b; /a=a+b; b%=a; /b=b%a; 1.5 難點:自增運算符 + - 1)后置的用法:a+ a- 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 規(guī)則:首先取出操作數(shù)a,然后對操作數(shù)進(jìn)行加一或減一的運算,最后將第一步取出的操作數(shù)賦給=左邊的變量 int a=1; int b=a+;/b=1,a=2 2)前置的用法:+a -a 規(guī)則:首先對操作數(shù)進(jìn)行加1或減1的運算, 然后取出運算后操作數(shù)的值, 最后賦給等號左邊的變量 int a=1; int a=+a;/a=2 int b=+a;/b=3,a=3 1.6 關(guān)系運算符 = != = 2;/關(guān)系運算的結(jié)果類型為boolean 1.7 難點:邏輯運算符 & | ! (邏輯運算符中的操作數(shù)必須是boolean類型) 1) & 邏輯與 boolean a=true,b=false; boolean c = a & b; 規(guī)則: a b c - true true true true false false false true false flase false false 2)| 邏輯或 boolean c = a | b 規(guī)則: a b c - true true true true false true false true true false false false 3)&和|又稱為短路邏輯運算符,當(dāng)?shù)谝粋€操作數(shù) 能夠決定表達(dá)式結(jié)果時,不再使用第2個操作數(shù)。 boolean b = flase & (1/0=1); 4)! 邏輯非 規(guī)則: !true-false !false-true 1.8 三元運算符: 語法:boolean_exp1 ? exp2 : exp3 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 規(guī)則:當(dāng)?shù)谝粋€操作數(shù)boolean_exp1為true時, 表達(dá)式的結(jié)果為exp2,否則為exp3 int result,a=1; retsult = (a=1) ? 100 : 0; 等價的if語句: if(a=1) result = 100; else result = 0; 1.9 運算符的優(yōu)先級: 規(guī)則一: + - ! | 高 * / % | + - | 關(guān)系運算符= != = 按位右移運算,向右移動一個數(shù)位,相當(dāng)于除2 int n=8;/0000 1000 n=n1;/0000 0100 特點:右移一位,相當(dāng)于除2 4)按位左移運算,向左移動一個數(shù)位,低位補0 int n=15;/0000 1111 n=1; /0001 1110 0x1e=30=15*2 特點:左移一位,相當(dāng)于乘2 int n=123456; n=n3;/相當(dāng)于n=n*8 3. 程序結(jié)構(gòu): 3.1 分類 順序結(jié)構(gòu) 選擇結(jié)構(gòu)(分支結(jié)構(gòu)):if,switch 循環(huán)結(jié)構(gòu):for,while,do.while 3.2 選擇結(jié)構(gòu): 1) 語法一: if(條件) /語句體 特點:條件必須是一個布爾表達(dá)式, 滿足條件執(zhí)行語句體。 當(dāng)語句體只有1條語句時候,可以省略大括號 Task1. 接收控制臺輸入的兩個整數(shù),輸出最大值 2) 語法二: if(條件) /語句體1 else /語句體2 特點:條件滿足時,執(zhí)行語句體1,否則執(zhí)行語句體2。else不能單獨使用 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 3) 語法三: if(條件) /語句體1 else if(條件2) /語句體2 else if(條件3) /語句體3 else /語句體4 4) 嵌套if語句: if(條件1) if(條件2) . . else . . Task:判斷一個年份是否為閏年, 計算閏年的規(guī)則:4年一潤,100年不潤,400年在潤 3.3 循環(huán)結(jié)構(gòu)中的for循環(huán) 1) 基本語法: for(exp1;exp2;exp3) /exp是表達(dá)式(表達(dá)式1,表達(dá)式2條件,表達(dá)式3) /語句體 Example: for(int i=1;i=100;i+) . . 2) for循環(huán)的執(zhí)行過程:(先表達(dá)式1,然后表達(dá)式2條件,然后表達(dá)式3) for(int i=1,sum=0;i=100;i+) sum+=i; Step1. 執(zhí)行exp1中的代碼,用于初始化相應(yīng)的變量 for(int i=1,j=100;) Step2. 判斷exp2的條件(exp2必須是布爾表達(dá)式), 如果為true,執(zhí)行Step3: 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 如果為false,結(jié)束當(dāng)前for循環(huán) 判斷條件i=100,滿足條件執(zhí)行Step3 Step3. 執(zhí)行循環(huán)體: sum+=i;/將i累加到變量sum中 Step4. 執(zhí)行exp3,一般用于處理循環(huán)變量的值 i+; 執(zhí)行exp3之后,回到Step2 Task. 計算1到100之和 3) for循環(huán)變化的寫法: a. int a=1; for(;a=100;a+) sum+=a; b. int a=1; for(;a=90 優(yōu)秀 =80 優(yōu)良 =60 及格 a,200-b 2) 調(diào)用沒有返回值類型(void)的函數(shù)或過程: print(100); 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 3) 函數(shù)的執(zhí)行過程: int nm=max(100,200) Step1. 將實參傳遞給對應(yīng)的形參: 100-a,200-b 其中100,200是實參,a和b是函數(shù)max的形參 Step2. 執(zhí)行函數(shù)max的語句體,此時形參的值是通過實參傳遞過來 的,形參此時是有具體值的 Step3. 執(zhí)行函數(shù)體的代碼,遇到return語句結(jié)束當(dāng)前函數(shù)的調(diào)用 ,如: return 200; 并將函數(shù)的返回值傳遞給調(diào)用者: nm=200; Java Basic day04 homework: - 1. 輸入一個數(shù)字,打印該數(shù)字的因式分解 如輸入90 打印90=2*3*3*5 如輸入80 打印80=2*2*2*2*5 2. 如果一個數(shù)等于其所有因子之和,我們就稱這個數(shù)為完數(shù), 例如:數(shù)字6的因子為1,2,3,而6=1+2+3,因此數(shù)字6就是一個完數(shù)。 請編程打印出1000以內(nèi)所有的完數(shù) 3. 通過鍵盤輸入數(shù)字,判斷是否為素數(shù),當(dāng)輸入-1時結(jié)束。 要求:把判斷一個數(shù)字是否為素數(shù)寫成獨立的功能單元(即函數(shù)),函數(shù)名稱為isPrimeNumber,返回值類型為boolean 4. 編寫程序,將華氏溫度轉(zhuǎn)換成攝氏溫度 要求:定義一個函數(shù)用于將華氏溫度轉(zhuǎn)換成攝氏溫度,在主方法中從控制臺輸入華氏溫度值,并輸出對應(yīng)的攝氏溫度值。 例如:提示用戶輸入華氏溫度值96, 則程序輸出: 華氏溫度值96F對應(yīng)的攝氏溫度值為36C(其中C代表攝氏溫度,F(xiàn)代表華氏溫度)。 華氏溫度與攝氏溫度轉(zhuǎn)化的公式為: C = 5 (F - 32) / 9 Day05 數(shù)組的定義、復(fù)制和擴容及排序算法 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 1. 掌握數(shù)組的定義和使用 1.1 什么是數(shù)組, 1) 一組具有相同類型的數(shù)據(jù),稱為數(shù)組 使用數(shù)組可以更加方便訪問和使用這組數(shù)據(jù) 2) 數(shù)組中的每一個數(shù)據(jù)稱為元素,一個數(shù)組中元素的類型總 是相同的 3) 數(shù)組中的元素按照順序存放,從0開始,稱為序號或下標(biāo) 1.2 數(shù)組的聲明: int arr; /數(shù)組類型 , 數(shù)組名稱arr,存放元素類型為int ,數(shù)組也為變量。等價于int arr/不常用 1.3 數(shù)組的初始化: 1) 靜態(tài)初始化: int arr6=1,3,5,7,11,13; int arr6=new int1,3,5,7,11,13;/等價,只不過是省略 * 靜態(tài)初始化必須在聲明數(shù)組時完成 2) 動態(tài)初始化: arr1=new int10; int arr8=new int10; 動態(tài)初始化時在內(nèi)存中開辟對應(yīng)的空間,如 arr1在內(nèi)存中占有40個字節(jié)的空間 每一個元素的值是對應(yīng)類型的初值,可以0,0.0,u0000 ,false,null(引用類型的初值) - java.util.Arrays.toString(數(shù)組變量) -返回數(shù)組的字符串形式,形如e1,e2,. - 1.4. 使用數(shù)組的屬性length 來獲取數(shù)組中元素的個數(shù) int n=arr1.length;/也稱為數(shù)組的大小 1.5 數(shù)組的使用和賦值: 語法: 數(shù)組名稱下標(biāo),下標(biāo)范圍0到length-1 超出下標(biāo)的范圍出現(xiàn)異常 char c=arr30; arr10=100; Task. 接收用戶輸入的10個學(xué)員的成績,分別輸出最大值和成績的總和 Task. 將一個數(shù)組的元素以倒置的方式填充到另一個數(shù)組中 購買全套叢書加視頻教程和案例代碼請聯(lián)系QQ 852041173 或訪問博客學(xué)習(xí)更多知識 2. 理解數(shù)組的復(fù)制和擴容(難點) 2.1 復(fù)制數(shù)組的兩種方式: 1) 使用Arrays的方法copyOf: 如: int a=6,7,8; int b=Arrays.copyOf(a,3);/將數(shù)組a的三個元素復(fù)制到數(shù)組b中。(超出補0) 2) 使用System的方法arrayCopy: (arr1-arr2) 方法arrayCopy具有5個參數(shù): (1) 源數(shù)組arr1 (2) 源數(shù)組中的起始位置 (3) 目標(biāo)數(shù)組arr2 (4) 目標(biāo)數(shù)組中的起始位置 (5) 復(fù)制的元素的個數(shù) 特點:目標(biāo)數(shù)組arr2需要初始化,復(fù)制之后不會改變目標(biāo)數(shù)組的大小 3) 區(qū)分?jǐn)?shù)組的復(fù)制和數(shù)組的直接賦值: int arr1=1,1,2,3,5,8; int arr=arr1;/將變量arr1直接賦值給arr 賦值后arr1和arr是同一個數(shù)組 但使用copyOf或arrayCopy復(fù)制后是兩個不同的數(shù)組 arr14=0; -arr的第5個元素也變?yōu)? 2.2 數(shù)組的擴容 1) 數(shù)組定義后,長度不能改變 int a=1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論