1. 程式人生 > 其它 >(轉)Python-functools詳解

(轉)Python-functools詳解

1 JavaSE資料型別與運算子

1.1 回顧

語言:java [編譯+解釋] C[編譯] JavaScript【解釋】

Java語言:特性:面向物件,跨平臺,健壯性,分散式,多執行緒等

Jdk:jdk->jre->jvm

Java 程式碼的執行過程:

Java原始檔 [javac] ->位元組碼檔案[.class] ->java ->二進位制,執行

Eclipse:配置jdk,修改編碼,變數,常量,變數命名規則

1.2 Java資料型別概述

1.2.1 資料型別

1.2.2 記憶體區域

1.3 基本型別

1.3.1 分類

1.3.2 範圍

1.3.3 預設值

注意:雖然有預設值,但是作為區域性變數,如果使用前,需要賦值;否則編譯錯誤;而類成員變數則可不賦值。

1.4 引用型別和型別轉換

1.4.1 引用型別有哪些?

除了上節學習到的8種基本資料型別,其他型別都是引用型別;

類,介面,null,陣列,列舉,註解等

1.4.2 基本型別和引用型別差異

1.4.3 型別轉換:

1.5 小練習:

package day02;

/**

* 求"和" : int變數+char變數+float變數+double變數,求和的結果儲存在一個變數中 輸出

*

* @author Administrator

*

*/

public class DemoCalc {

public static void main(String[] args) {

// 定義一個int型別變數

int a = 1;

//定義一個char變數

char ch = 'D';

//定義一個float型別的變數

float f = 2.1212f;

//定義一個double型別的變數

double d = 3.23232d;

// ? sum =int + char + float + double

//Type mismatch(不匹配): cannot convert from double to int

//數學計算的時候,最終結果和表示式中精度最大的那個型別相同

double

sum= a + ch + f + d;

// sysout sum

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

}

}

1.6 運算子

1.6.1 算術

四位數2345,計算各個位上的數字的和,輸出結果.

1.6.2 關係

1.6.3 練習:

package day02;

/**

* 關係運算符介紹(水仙花數判斷)

*

* @author Administrator

*

*/

public class Operator03 {

public static void main(String[] args) {

int n = 153; // 153%10 =>除法得到整數商15 ,餘數為3 =》 % 得到個位數字

int bai = n / 100;

int shi = n / 10 % 10;

int ge = n % 10;

// 判斷153這個數字是否是水仙花數 輸出true或者false就可以.

// sysout(1*1*1 + 5*5*5 +3*3*3 == 153)

System.out.println(bai * bai * bai + shi * shi * shi + ge * ge * ge == n);

}

}

1.6.4 位

8<<2

先將10進位制的8轉換為2進位制; 1000

.

0

0

0

0

0

1

0

0

0

.

0

0

0

1

0

0

0

0

0

再移位

1

0

0

0

0

0

25 =>32

再將2進位制的值轉換為10進位制;

10進位制轉換為2進位制: 除以2取餘數;

2進位制轉換為10進位制: 乘以2的n次方,累加求和。

100000000

28…22 21 20

8>>2

先將10進位制的8轉換為2進位制; 1000

.

0

0

0

0

0

1

0

0

0

.

0

0

0

0

0

0

0

1

0

10轉換後變成了2

1.6.5 練習題:

3<<3

32>>2

1.6.6 邏輯

1.6.7 賦值

1.6.8 條件

1.7 課堂練習:

交換兩個數,要求不能定義第三個變數:

1.8 總結:

  1. 資料型別:基本型別和引用型別
  2. 基本型別的8個型別要記熟;int ->4位元組
  3. 型別轉換: 自動轉換(隱式) , 強制轉換(顯式)
  4. 運算子: 算術,比較,賦值

1.9 作業:

  1. 智慧教學雲平臺的作業
  2. 本週內容總結,思維導圖,word文件,手寫都行.
  3. 編碼題目一定要數量,下週一默寫.

1.10 控制檯輸入:

package day02;

import java.util.Scanner;//"匯入"java.uitl包中的Scanner類

/**

* 控制檯輸入

*

* @author Administrator

*

*/

public class Demo07 {

public static void main(String[] args) {

// java工具 ,掃描器 Scanner 類 所在的包java.util

//1- Scanner類 引用名= new Scanner(System.in);

Scanner input = new Scanner(System.in);

//2- 輸入提示文字

System.out.println("請輸入整數x,y,z");

//3- 以空格或者回車作為一個輸入結束

//nextInt接收

int x = input.nextInt();

int y = input.nextInt();

int z = input.nextInt();

// 4 求三個數字中的最大(小)值

// x和y比較,得到最大值 m;

// 用m和z比,得到最大值

int m = x > y ? x : y;

m = m > z ? m : z;

System.out.println("max is :" + m);

}

}

控制檯輸入三個不同型別的資料,求和後輸出:

package day02;

import java.util.Scanner;

/**

* 控制檯輸入三個分別int float double 求和輸出

*

* @author Administrator

*

*/

public class Demo1010 {

// 入口 main alt+/

public static void main(String[] args) {

// 1. 建立Scanner物件

Scanner i = new Scanner(System.in);

// 2.提示使用者輸入

System.out.println("請輸入int float double..");

// 3.呼叫方法完成輸入

int x = i.nextInt();

float y = i.nextFloat();

double z = i.nextDouble();

// 4.計算

double sum = x + y + z;

// 5.輸出結果

System.out.println("sum :" + sum);

}

}