標籤:
一、枚舉動手動腦
枚舉變數只能從提供的已知變數中尋找抽取
二、數值的二進位表示
在電腦內,定點數有3種標記法:原碼、反碼和補碼。
原碼就是二進位定點標記法,即最高位為符號位,“0”表示正,“1”表示負,其餘位表示數值的大小。
[+7]原= 0 0000111 B
[-7]原= 1 0000111 B
反碼:正數:正數的反碼與原碼相同。
負數:負數的反碼,符號位為“1”,數值部分按位取反。
[+7]反= 0 0000111 B
[-7]反= 1 1111000 B
補碼的表示:
正數:正數的補碼和原碼相同。
負數:負數的補碼則是符號位為“1”。並且,這個“1”既是符號位,也是數值位。數值部分按位取反後再在末位(最低位)加1。也就是“反碼+1”。
[+7]補= 00000111 B
[-7] 補= 11111001 B
三、樣本:兩數相加
四、運行時讀取使用者輸入
五、Java中的類型轉換
byte:0~255
short:-32768-32767
int:-2^16~2^16-1
char:-128~127
long:-2,147,483,648 ~ 2,147,483,647
float:-2^128 ~ +2^128
double:負數範圍:-1.797,693,134,862,32E308 ~-4.940,656,458,412,47E-324
正數範圍:4.940,656,458,412,47E-324 ~1.797,693,134,862,32E308
位元少的向位元多的轉換,不損失精度。相反則有損失。
六、動手實驗 TestDouble.java
資料精度有極大的損失
解決方案:使用BigDecimal類來進行精確小數計算,使用BigInteger來進行無限位的整數計算。這兩個類提供了加減乘除等各種方法。
七、動手動腦
代碼輸出結果
第一個是當做字串處理,兩個字串相加,直接合并在一起。
第二個是當作兩個整數,計算兩個的和。
八、課後實驗
訊息框顯示兩個數的加減乘除
// An addition program
import javax.swing.JOptionPane; // import class JOptionPane
public class A {
public static void main( String args[] )
{
String firstNumber, // first string entered by user
secondNumber; // second string entered by user
double number1, // first number to add
number2, // second number to add
sum, // sum of number1 and number2
cha, // 兩個數的差
ji, // 兩個數的積
shang; // 兩個數的商
// read in first number from user as a string
firstNumber =
JOptionPane.showInputDialog( "Enter first integer" );
// read in second number from user as a string
secondNumber =
JOptionPane.showInputDialog( "Enter second integer" );
// convert numbers from type String to type int
number1 = Integer.parseInt( firstNumber );
number2 = Integer.parseInt( secondNumber );
// add the numbers
sum = number1 + number2;
cha = number1 - number2;
ji = number1 * number2;
shang = number1 / number2;
// display the results
JOptionPane.showMessageDialog(
null, "The sum is " + sum, "Results",
JOptionPane.PLAIN_MESSAGE );
JOptionPane.showMessageDialog(
null, "The cha is " + cha, "Results",
JOptionPane.PLAIN_MESSAGE );
JOptionPane.showMessageDialog(
null, "The ji is " + ji, "Results",
JOptionPane.PLAIN_MESSAGE );
JOptionPane.showMessageDialog(
null, "The shang is " + shang, "Results",
JOptionPane.PLAIN_MESSAGE );
System.exit( 0 ); // terminate the program
}
}
僅在來源程式上有些許刪減增改
課堂作業集