1. 程式人生 > >JavaSE學習總結(二)——Java語言基礎

JavaSE學習總結(二)——Java語言基礎

默認 ase oid 64位 pac 交互 log 類型 blank

目錄

  • 一、Java程序預覽
    • 1.1、Hello World
    • 1.2、Eclipse使用
      • 1.2.1、項目位置
      • 1.2.2、重置窗口布局
      • 1.2.3、設置字體
      • 1.2.4、修改控制臺字體
      • 1.2.4、項目的導入與保存
      • 1.2.5、修改快捷鍵
      • 1.2.6、重命名
      • 1.2.7、編碼
      • 1.2.8、設置JDK本地JavaDOC API路徑及源碼路徑
    • 1.3、快捷鍵
      • 1.3.1、Eclipse快捷鍵大全
    • 1.4、調試(debug)
      • 1.4.1、設置斷點
      • 1.4.2、啟動調試
      • 1.4.3、執行調試
  • 二、類型
    • 2.1、java中常用的類型
  • 三、輸入與包
  • 四、流程控制
    • 4.0、if條件分支
    • 4.1、for循環
    • 4.2、while循環
    • 4.3、do-while循環
    • 4.4、if-else多條件分支
    • 4.5、switch開關分支
  • 五、包與註釋
  • 六、數組
    • 6.1、 一維數組
    • 6.2、二維數組
      • 6.2.1、二維數組的定義與使用基礎
      • 6.2.2、二維數組賦值
      • 6.2.3、二維數組應用
      • 6.2.4、方法與排序
  • 七、練習與筆記
  • 八、推薦學習網站
  • 八、示例與視頻

一、Java程序預覽

Java的語法與C非常類似,這裏先使用幾個非常簡單的程序以點帶面來區分C語Java的區分再細講每個知識點。該文僅針對有編程基礎的朋友參考。

1.1、Hello World

創建java項目

技術分享圖片

技術分享圖片

新建一個類

技術分享圖片

技術分享圖片

運行

技術分享圖片

1.2、Eclipse使用

1.2.1、項目位置

在項目上右鍵 ->properties ->location

技術分享圖片

技術分享圖片

在項目上alt+enter鍵也可以打開項目屬性

1.2.2、重置窗口布局

技術分享圖片

顯示窗口,如控制臺

選擇show view

技術分享圖片

1.2.3、設置字體

技術分享圖片

window->preferences

1.2.4、修改控制臺字體

技術分享圖片

1.2.4、項目的導入與保存

技術分享圖片

點擊選擇項目

技術分享圖片

完成

技術分享圖片

1.2.5、修改快捷鍵

默認快捷鍵為alt+/,可以修改為其它習慣的快捷鍵,如tab,tab

技術分享圖片

1.2.6、重命名

有時我們需要將類名或文件名修改,不能隨意的原因是因為一個類可能被其它的類所引用

技術分享圖片

1.2.7、編碼

Window -> Preferences -> General -> Workspace -> Text file encoding -> Other

萬國碼 unicode

utf-8 gb-2312-80 big5

技術分享圖片

Window -> Preferences -> Web -> JSP Files -> Text file encoding-> Other:

技術分享圖片

1.2.8、設置JDK本地JavaDOC API路徑及源碼路徑

技術分享圖片

還都生成的是無意義的變量名,這樣可能會對含有相同類型的變量參數的調用順序造成幹擾;

按Ctrl+點擊系統對象可以查看源代碼,源代碼位置:

技術分享圖片

這種問題,我們把JDK或者相應Jar包的源碼導入進去就能避免了:

Window -> Preferences -> Java -> Installed JREs -> Edit:

選中設置好的JRE目錄,編輯,然後全選 JRE system libraries 下的所有Jar包,點擊右邊的 Source Attachment;

技術分享圖片

External location 下,選中JDK安裝目錄下的src.zip 文件,一路OK 下來。

技術分享圖片

1.3、快捷鍵

1.3.1、Eclipse快捷鍵大全

Ctrl+1 快速修復(最經典的快捷鍵)

Ctrl+D: 刪除當前行

Ctrl+Alt+↓ 復制當前行到下一行(復制增加)

Ctrl+Alt+↑ 復制當前行到上一行(復制增加)

Alt+↓ 當前行和下面一行交互位置(特別實用,可以省去先剪切,再粘貼了)

Alt+↑ 當前行和上面一行交互位置(同上)

Alt+← 前一個編輯的頁面

Alt+→ 下一個編輯的頁面(當然是針對上面那條來說了)

Alt+Enter 顯示當前選擇資源(工程,or 文件 or文件)的屬性

Shift+Enter 在當前行的下一行插入空行(這時鼠標可以在當前行的任一位置,不一定是最後)

Shift+Ctrl+Enter 在當前行插入空行(原理同上條)

Ctrl+Q 定位到最後編輯的地方

Ctrl+L 定位在某行 (對於程序超過100的人就有福音了)

Ctrl+M 最大化當前的Edit或View (再按則反之)

Ctrl+/ 註釋當前行,再按則取消註釋

Ctrl+O 快速顯示 OutLine

Ctrl+T 快速顯示當前類的繼承結構

Ctrl+W 關閉當前Editer

Ctrl+K 參照選中的Word快速定位到下一個

Ctrl+E 快速顯示當前Editer的下拉列表(如果當前頁面沒有顯示的用黑體表示)

Ctrl+/(小鍵盤) 折疊當前類中的所有代碼

Ctrl+×(小鍵盤) 展開當前類中的所有代碼

Ctrl+Space 代碼助手完成一些代碼的插入(但一般和輸入法有沖突,可以修改輸入法的熱鍵,也可以暫用Alt+/來代替)

Ctrl+Shift+E 顯示管理當前打開的所有的View的管理器(可以選擇關閉,激活等操作)

Ctrl+J 正向增量查找(按下Ctrl+J後,你所輸入的每個字母編輯器都提供快速匹配定位到某個單詞,如果沒有,則在stutes line中顯示沒有找到了,查一個單詞時,特別實用,這個功能Idea兩年前就有了)

Ctrl+Shift+J 反向增量查找(和上條相同,只不過是從後往前查)

Ctrl+Shift+F4 關閉所有打開的Editer

Ctrl+Shift+X 把當前選中的文本全部變為小寫

Ctrl+Shift+Y 把當前選中的文本全部變為小寫

Ctrl+Shift+F 格式化當前代碼

Ctrl+Shift+P 定位到對於的匹配符(譬如{}) (從前面定位後面時,光標要在匹配符裏面,後面到前面,則反之)

下面的快捷鍵是重構裏面常用的,本人就自己喜歡且常用的整理一下(註:一般重構的快捷鍵都是Alt+Shift開頭的了)

Alt+Shift+R 重命名 (是我自己最愛用的一個了,尤其是變量和類的Rename,比手工方法能節省很多勞動力)

Alt+Shift+M 抽取方法 (這是重構裏面最常用的方法之一了,尤其是對一大堆泥團代碼有用)

Alt+Shift+C 修改函數結構(比較實用,有N個函數調用了這個方法,修改一次搞定)

Alt+Shift+L 抽取本地變量( 可以直接把一些魔法數字和字符串抽取成一個變量,尤其是多處調用的時候)

Alt+Shift+F 把Class中的local變量變為field變量 (比較實用的功能)

Alt+Shift+I 合並變量(可能這樣說有點不妥Inline)

Alt+Shift+V 移動函數和變量(不怎麽常用)

Alt+Shift+Z 重構的後悔藥(Undo)

1.3.2、

1.4、調試(debug)

1.4.1、設置斷點

當程序運行到該位置時將中斷,等待你的下一步指示。

技術分享圖片

在代碼前雙擊用於設置與取消斷點。

1.4.2、啟動調試

點擊工具欄中的“debug”按鈕可以啟動調試。

技術分享圖片

可以選擇切換視圖,切換後的效果:

技術分享圖片

技術分享圖片

1.4.3、執行調試

單步進入:一步一步執行到每一個細節

單步跳過:只計算當前結果不會進行細節

技術分享圖片

查看運行時的變量

技術分享圖片

在遇到邏輯錯誤時請調試。

二、類型

2.1、java中常用的類型

技術分享圖片 double 是64位 技術分享圖片
package com.zhangguo.c139.chapter2;

public class Demo1 {
    
    public static void main(String[] args) {
        
        //數字
        //整型
        int i1=100;
        //長整型
        long i2=998877665544332211l;
        //短整型
        short i3=235;
        //浮點型
        double d1=3.5;  //雙精度
        double d2=3;
        float f1=(float)3.5;   //單精度
        float f2=3.5f;   //單精度
        
        //布爾類型 boolean true真/false假
        boolean isPass=true;
        boolean isOk=false;
        boolean isBig=5>8;
        if(isPass){
            System.out.println("通過了");
        }else{
            System.out.println("未通過");
        }
        
        //單字符
        char f=‘女‘;
        char m=‘男‘;
        
        //字符串
        String s1="Hello 中文!";
        String s2=1+"";  //轉換成String
        
    }

}
技術分享圖片

運行:

技術分享圖片

小轉大,類型匹配

double d=5;

String s="Hello"+9527

2.3、強制轉換

大轉小,類型適應(數字轉數字)

int i=(double)198.5;

2.4、不同類型間的強制轉換

技術分享圖片
        String name = "9527";
        int brother = Integer.parseInt(name) + 1;
        System.out.println(brother);

        double d = Double.parseDouble(name);
        Boolean.parseBoolean(name);
        float f = Float.parseFloat(name);
技術分享圖片

輸出:

技術分享圖片

三、輸入與包

技術分享圖片
package com.zhangguo.chapter1;

//導入包,同一個包不用導入直接使用,不同的包需導入
import java.util.Scanner;
import com.zhangguo.chapter1.Math1;

/**
 * 輸入
 * @author Administrator
 *
 */
public class Math2 {
    
    public static void main(String[] args) {
        //定義掃描器
        Scanner input=new Scanner(System.in);
        
        //定義變量
        int n=input.nextInt();  //等待輸入
        
        //String name=input.next();  //輸入字符
        //float mark=input.nextFloat();  //輸入單精度數字
        //double pi=input.nextDouble();  //輸入雙精度數字
        
        //條件 判斷
        if(n==0){
            System.out.println("零");
        }else if(n%2==1){  //如果一個數與2求余為1
            System.out.println("奇數");
        }else{
            System.out.println("偶數");
        }
    }

}
技術分享圖片

輸出3位數到指定數之間的中能同時被3或5整除的數

技術分享圖片
package com.zhangguo.c139.chapter2;   //包

//導包
import java.util.Scanner;

public class InputDemo {

    public static void main(String[] args) {
        
        //創建掃描器對象
        Scanner input=new Scanner(System.in);
        
        // 輸出3位數到指定數之間的中能同時被3或5整除的數
        System.out.print("請輸入n:");
        //從鍵盤輸入
        int n = input.nextInt();
        
        for (int i = 100; i <= n; i++) {
            if(i%3==0&&i%5==0){
                System.out.println(i);
            }
        }

    }

}
技術分享圖片

技術分享圖片

a)、導入包,導入類

同一個包中的類可以直接引用

不同包中的類型需要導入,使用import,import java.util.Scanner;

如需使用某個包下的所有類,則使用*號,如import java.util.*;

b)、輸入

定義掃描器

使用掃描器對象的next*()方法

技術分享圖片
package com.zhangguo.chapter1;

//導入包,同一個包不用導入直接使用,不同的包需導入
import java.util.Scanner;/**
 * 輸入
 * @author Administrator
 *
 */
public class Math2 {
    
    public static void main(String[] args) {
        //定義掃描器
        Scanner input=new Scanner(System.in);
        
        System.out.print("請輸入一個數:");
        //定義變量
        int n=input.nextInt();  //等待輸入
        
        //String name=input.next();  //輸入字符
        //float mark=input.nextFloat();  //輸入單精度數字
        //double pi=input.nextDouble();  //輸入雙精度數字
        
        //條件 判斷
        if(n==0){
            System.out.println("零");
        }else if(n%2==1){  //如果一個數與2求余為1
            System.out.println("奇\t數");
        }else{
            System.out.println("偶數");
        }
    }

}
技術分享圖片 技術分享圖片

四、流程控制

4.0、if條件分支

判斷一個數是奇數還是偶數

技術分享圖片
package com.zhangguo.chapter1;

/**
 * 判斷一個數是奇數還是偶數
 * @author Administrator
 *
 */
public class Math1 {
    
    public static void main(String[] args) {
        //定義變量
        int n=0;
        
        //條件 判斷
        if(n==0){
            System.out.println("零");
        }else if(n%2==1){  //如果一個數與2求余為1
            System.out.println("奇數");
        }else{
            System.out.println("偶數");
        }
    }

}
技術分享圖片

4.1、for循環

for循環計算1到該數間能被3和5同時整除的數之和

技術分享圖片
package com.zhangguo.chapter1;

//導入包,同一個包不用導入直接使用,不同的包需導入
import java.util.Scanner;

/**
 * 計算1到該數間能被3和5同時整除的數之和
 * 
 * @author Administrator
 *
 */
public class Math3 {

    public static void main(String[] args) {
        // 定義掃描器
        Scanner input = new Scanner(System.in); // 默認的提示 alt+/

        // 提示輸入
        System.out.print("請輸入一個數:");

        // 執行輸入
        int n = input.nextInt();
        int sum = 0;

        // 循環
        for (int i = 1; i <= n; i++) {

            // 判斷,邏輯運算,與C一樣,&&與,||或,!非
            if (i % 3 == 0 && i % 5 == 0) {
                // 累加
                sum = sum + i;
            }
        }

        System.out.println("總和是:" + sum);
    }

}
技術分享圖片

運行結果:

技術分享圖片

4.2、while循環

while循環計算1到該數間能被3和5同時整除的數之和

技術分享圖片
package com.zhangguo.chapter1;

import java.util.Scanner;

/**
 * while循環計算1到該數間能被3和5同時整除的數之和
 *
 */
public class Math6 {

    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.print("請輸入一個數:");
        int n=input.nextInt();
        int i=1,sum=0;
        
        while(i<=n){
            if(i%3==0&&i%5==0){
                sum=sum+i;
            }
            i++;
        }
        
        System.out.println("總和是:"+sum);
    }

}
技術分享圖片

技術分享圖片

break:結束當前循環

技術分享圖片
package com.zhangguo.chapter1;

import java.util.Scanner;

/**
 * while循環計算1到該數間能被3和5同時整除的數之和
 *
 */
public class Math6 {

    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.print("請輸入一個數:");
        int n=input.nextInt();
        int i=1,sum=0;
        
        while(i<=n){
            if(i%3==0&&i%5==0){
                sum=sum+i;
                System.out.println(i);
                break;
            }
            i++;
        }
        
        System.out.println("總和是:"+sum);
        System.out.println("i的值:"+i);
    }

}

技術分享圖片

技術分享圖片

continue:結束當次循環,繼續下一次循環

技術分享圖片
package com.zhangguo.chapter1;

import java.util.Scanner;

/**
 * while循環計算1到該數間能被3和5同時整除的數之和
 *
 */
public class Math7 {

    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.print("請輸入一個數:");
        int n=input.nextInt();
        int i=1,sum=0;
        
        while(i<=n){
            if(i%3==0&&i%5==0){
                sum=sum+i;
            }
            i++;
            if(i<=15) {continue;}
            System.out.println(i);
        }
        
        System.out.println("總和是:"+sum);
        System.out.println("i的值:"+i);
    }

}
技術分享圖片

技術分享圖片

4.3、do-while循環

do-while 輸入年齡,介於1-100之間

技術分享圖片
package com.zhangguo.chapter1;

import java.util.Scanner;

/**
 * do-while 輸入年齡,介於1-100之間
 *
 */
public class Math8 {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int age = 0;

        do {
            System.out.print("請輸入年齡:");
            age = input.nextInt();
        } while (age < 1 || age > 100);   //條件為真,循環繼續

        System.out.println("年齡是:" + age);
    }

}
技術分享圖片

技術分享圖片

4.4、if-else多條件分支

if-else 輸入購物金額,完成商場打折功能

0-99 打9折

100-500 打8折

500以上打7折

技術分享圖片
package com.zhangguo.chapter1;

import java.util.Scanner;

/**
 * do-while 輸入年齡,介於1-100之間
 *
 */
public class Math8 {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        int age = 0;
        String range = "";

        do {
            System.out.print("請輸入年齡:");
            age = input.nextInt();
        } while (age < 1 || age > 100); // 條件為真,循環繼續

        System.out.println("年齡是:" + age);

        if (age >= 0 && age <= 30) {
            range = "青年";
        } else if (age >= 31 && age <= 60) {
            range = "中年";
        } else if (age >= 61 && age <= 90) {
            range = "老年";
        } else {
            range = "晚年";
        }

        System.out.println("年齡段是:" + range);

    }

    // 0-30 青年
    // 31-60 中年
    // 61-90 老年
    // 晚年

}
技術分享圖片

技術分享圖片

4.5、switch開關分支

switch 輸入1-7 輸出星期一到星期天

等值比較

技術分享圖片
package com.zhangguo.chapter1;

import java.util.Scanner;

public class Math9 {

    public static void main(String[] args) {
        
        Scanner input = new Scanner(System.in);
        int week = 0;
        System.out.print("請輸入周:");
        week = input.nextInt();
        
        switch (week) {   //char int
        case 1:
            System.out.println("星期一");
            break;
        case 2:
            System.out.println("星期二");
            break;
        case 3:
            System.out.println("星期三");
            break;
        case 4:
            System.out.println("星期四");
            break;
        case 5:
            System.out.println("星期五");
            break;
        case 6:
            System.out.println("星期六");
            break;
        case 7:
            System.out.println("星期天");
            break;
        default:
            System.out.println("輸入錯誤");
            break;
        }
        
        
        
    }

}
技術分享圖片

技術分享圖片

五、包與註釋

a)、指定包名,相當於文件夾,一般使用倒置的域名如(com.baidu.項目名)

整理代碼

避免沖,如一個項目中有多個同名的類,可以處在不同的包中間

類可以不在任何包中,一個包中也可以有0-N個類

包與文件夾一一對應

包的聲明要放在第一行

技術分享圖片

b)、類型名,首字母大小

c)、代碼中自動插入:public static void main(String[] args)

技術分享圖片
//包名,1單行註釋
package com.zhangguo.chapter1;

/**
 * 判斷一個數是奇數還是偶數
 * @author 張果
 *2文檔註釋
 */
public class Demo1 {

    /*
     * 主方法,程序的入口
     * 3多行註釋
     */
    public static void main(String[] args) {
        //語句
        System.out.println("Hello World!");
    }

}
技術分享圖片

e)、註意java中有3種類型的註釋

六、數組

Java 語言中提供的數組是用來存儲固定大小的同類型元素。你可以聲明一個數組變量,如 numbers[100] 來代替直接聲明 100 個獨立變量 number0,number1,....,number99

6.1、 一維數組

a)、計算5位同學的平均成績

技術分享圖片
package com.zhangguo.chapter1;

public class Math91 {

    public static void main(String[] args) {
        int[] a=new int[10];
        
        for (int i = 0; i < a.length; i++) {
            a[i]=i*i;
        }
        
        for (int i = 0; i < a.length; i++) {
            System.out.println(a[i]);
        }
        
    }

}
技術分享圖片

輸出:

技術分享圖片

求平均成績與總分

技術分享圖片
package com.zhangguo.chapter2;

import java.util.Scanner;

public class Array2 {

    public static void main(String[] args) {
        //統計平均成績
        //實例化(創建)長度為5的數組
        int[] scores=new int[5];
        int sum=0;
        //int[] scores2={20,30,50,90,100,99,19,78};
        //int[] scores3=new int[]{20,30,50,90,100,99,19,78};
        //int[] scores2=new int[8];
        //scores2[0]=20;
        //scores2[1]=30; //...
        
        //輸入器
        Scanner input=new Scanner(System.in);
        
        //scores.length 數組的長度
        for (int i = 0; i <scores.length; i++) {
            scores[i]=input.nextInt();
        }
        
        //遍歷數組
        for (int i = 0; i < scores.length; i++) {
            sum=sum+scores[i];
        }
        
        System.out.println("總分是:"+sum+",平均分:"+(sum/scores.length));
    }

}
技術分享圖片

技術分享圖片

技術分享圖片
package com.zhangguo.chapter2;

import java.util.Scanner;

public class Array2_2 {

    public static void main(String[] args) {
        //統計平均成績
        //實例化(創建)行為3的數組,列為2的數組
        double[][] scores=new double[3][2];
        double sum=0;
        int n=0;  //個數,輸入
        
        //輸入器
        Scanner input=new Scanner(System.in);
        
        //scores.length 數組的長度
        for (int i = 0; i <scores.length; i++) {
            for (int j = 0; j < scores[i].length; j++) {
                scores[i][j]=input.nextDouble();
                n++;
            }
        }
        
        //遍歷數組
        for (int i = 0; i <scores.length; i++) {
            for (int j = 0; j < scores[i].length; j++) {
                sum+=scores[i][j];   //sum=sum+scores[i][j]; 
            }
        }
        
        System.out.println("總分是:"+sum+",平均分:"+(sum/n));
    }

}
技術分享圖片

技術分享圖片

6.2、二維數組

6.2.1、二維數組的定義與使用基礎

定義數組並賦初值:

技術分享圖片
package zhangsan;

public class C1 {

    public static void main(String[] args) {
        System.out.println("Hello");

        int[][] a = new int[][] { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
        
        System.out.println(a[0][2]);
        
        for (int i = 0; i < a.length; i++) {  //行
            
            for (int j = 0; j < a[i].length; j++) {  //列
                System.out.print(a[i][j]+" ");
            }
            System.out.println();
        }

    }

}
技術分享圖片

輸出:

技術分享圖片

6.2.2、二維數組賦值

定義數組並賦值

技術分享圖片
package zhangsan;

import java.util.Scanner;

public class C2 {

    public static void main(String[] args) {

        int sum=0;
        Scanner input=new Scanner(System.in);
        
        int[][] a = new int[3][2];
        
        //a[0][0]=98;
        //a[0][1]=89;
        
        for (int i = 0; i < a.length; i++) {
            for (int j = 0; j < a[i].length; j++) {
                System.err.print("請輸入a["+i+"]["+j+"]=");
                a[i][j]=input.nextInt();
            }
        }
        
        for (int i = 0; i < a.length; i++) {  //行
            for (int j = 0; j < a[i].length; j++) {  //列
                sum+=a[i][j];
            }
        }
        
        System.out.println(sum);

    }

}
技術分享圖片

輸出:

技術分享圖片

6.2.3、二維數組應用

有3名同學,每名同學有語文與數學考試成績,求平均分與總分?

技術分享圖片
package com.zhangguo.chapter2;

import java.util.Scanner;

public class Array2_2 {

    public static void main(String[] args) {
        //統計平均成績
        //實例化(創建)行為3的數組,列為2的數組
        double[][] scores=new double[3][2];
        double sum=0;
        int n=0;  //個數,輸入
        
        //輸入器
        Scanner input=new Scanner(System.in);
        
        //scores.length 數組的長度
        for (int i = 0; i <scores.length; i++) {
            for (int j = 0; j < scores[i].length; j++) {
                scores[i][j]=input.nextDouble();
                n++;
            }
        }
        
        //遍歷數組
        for (int i = 0; i <scores.length; i++) {
            for (int j = 0; j < scores[i].length; j++) {
                sum+=scores[i][j];   //sum=sum+scores[i][j]; 
            }
        }
        
        System.out.println("總分是:"+sum+",平均分:"+(sum/n));
    }

}
技術分享圖片

運行結果:

技術分享圖片

6.2.4、方法與排序

java中內置了非常多的工具方法如Math類、Arrays類等,使用sort可以實現給數組排序:

技術分享圖片
package com.zhangguo.chapter2;

import java.util.Arrays;

public class Method {

    public static void main(String[] args) {
        int a=1,b=2;
        int max=a>b?a:b;  //三目
        System.out.println(max);
        
        //算術
        System.out.println(Math.max(9, 10));
        
        int[] a1={8,9,1,3,4,5,0,-1};
        
        //排序
        Arrays.sort(a1);
        
        for (int i = a1.length-1; i>=0; i--) {
            System.out.print(a1[i]+" ");
        }
        
        
        //字符,字符串比較只能用equals, ==
        String x="abc";
        System.out.println(x.equals("abc"));
        System.out.println("abc"==x);
    }

}
技術分享圖片

技術分享圖片

?:表達式的作用是如果表達式1為真則返回或執行第2個表達式,如果表達式為假則執行或返回第3個表達式

表達式1?表達式2:表達式3

如:int min=a<b?a:b;

七、練習與筆記

請說出下面程序的運行結果?

技術分享圖片
package a.b.c.d;

public class Test {

    public static void main(String[] args) {
        for (int i = 1; i <=10; i++) {
            if(i%2==0){
                System.out.print("a");
            }else if(i%3==0){
                System.out.print("b");
            }else {
                System.out.print("c");
            }
        }
    }
}
技術分享圖片

cabacacaba

break在程序中的作用是什麽?他能用在那些結構中?

技術分享圖片
package a.b.c.d;

public class Test2 {

    public static void main(String[] args) {
        for (int i = 0; i <10; i++) {
            if(i%2==0){
                System.out.print("a");
            }else if(i%7==0){
                System.out.print("b");
                break;
            }else {
                System.out.print("c");
            }
        }
    }
}
技術分享圖片

acacacab

continue在程序中的作用是什麽?他能用在那些結構中?

當輸入0、2、7時程序分別輸出什麽?

技術分享圖片
package a.b.c.d;

import java.util.Scanner;

public class TestC {

    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        String[] weeks={"天","一","二","三","四","五","六"};
        int index=input.nextInt();
        System.out.println("星期"+weeks[index]);
    }
}
技術分享圖片

上機練習,用戶註冊示例

技術分享圖片
package com.zhangguo.chapter2;

import java.util.Scanner;

/**
 * 註冊
 *
 */
public class Math9 {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        String uid,pwd;
        String flag;

        do {
            System.out.print("請輸入帳號:");
            uid = input.next();
            System.out.print("請輸入密碼:");
            pwd = input.next();
            System.out.println("註冊成功,您的用戶為:"+uid+"\t密碼:"+pwd);
            
            System.out.print("是否繼續(y/n):");
            flag=input.next();
        } while (flag.equals("y"));   //條件為真,循環繼續

    }

}
技術分享圖片

運行結果:

技術分享圖片

八、推薦學習網站

http://www.maiziedu.com/

技術分享圖片

http://www.imooc.com/

技術分享圖片

http://www.jikexueyuan.com/

技術分享圖片

https://ke.qq.com/

技術分享圖片

http://www.chuanke.com/

技術分享圖片

八、示例與視頻

第一次視頻:http://pan.baidu.com/s/1bp7pTjL

JDK8下載:http://pan.baidu.com/s/1nuSuIKT

Eclipse下載:http://pan.baidu.com/s/1c2koakg

第三次視頻:http://pan.baidu.com/s/1mhAfWSg (JavaSE_第2章第3次_數組,方法,復習流控)

上課示例:http://files.cnblogs.com/files/best/JavaSE02.7z

作業:

在這裏找 http://www.cnblogs.com/best/p/5991771.html 5個題

在這裏找 http://www.cnblogs.com/best/p/5991751.html 5個題

所有課後練習,包含預習,簡答,編程 All

JavaSE學習總結(二)——Java語言基礎