精品午夜福利中文字av_国产成人综合网_av毛片免费观看网站_欧美影视国产综合_野花香视频中文免费观看_亚洲无码要在线视频_又粗又大又用力大交换好大好爽小静_欧美贵妇v办公室高跟鞋_亚洲国产高清a∨网站_免费中文少妇亚洲

知ing

Java面向?qū)ο蟪绦蛟O(shè)計(jì)

耿祥義,張躍平 編 / 清華大學(xué)出版社

青澀當(dāng)初 上傳

查看本書(shū)


習(xí)題13

1一個(gè)使用鏈?zhǔn)浇Y(jié)構(gòu),一個(gè)使用順序結(jié)構(gòu)。?

28。

3ABCD。

4選用HashMap<K,V>來(lái)存儲(chǔ)。

5

import java.util.*;

class UFlashKey implements Comparable {

???double d=0;

???UFlashKey (double d) {

?????this.d=d;

???}

???public int compareTo(Object b) {

?????UFlashKey st=(UFlashKey)b;

?????if((this.d-st.d)==0)

????????return -1;

?????else

????????return (int)((this.d-st.d)*1000);

??}

}

class UFlash {

????String name=null;

????double capacity,price;

????UFlash(String s,double m,double e) {

???????name=s;

???????capacity=m;

???????price=e;

????}

}

public class Xiti5?{

???public static void main(String args[ ]) {

??????TreeMap<UFlashKey,UFlash> ?treemap= new TreeMap<UFlashKey,UFlash>();

??????String str[]={"U1","U2","U3","U4","U5","U6","U7","U8","U9","U10"};

??????double capacity[]={1,2,2,4,0.5,10,8,4,4,2};

??????double price[]={30,66,90,56,50,149,120,80,85,65};

??????UFlash UFlash[]=new UFlash[10];

??????for(int k=0;k<UFlash.length;k++) {

?????????UFlash[k]=new UFlash(str[k],capacity[k],price[k]);

??????}

??????UFlashKey key[]=new UFlashKey[10] ;

??????for(int k=0;k<key.length;k++) {

?????????key[k]=new UFlashKey(UFlash[k].capacity); //關(guān)鍵字按容量成績(jī)排列大小

??????}

??????for(int k=0;k<UFlash.length;k++) {

?????????treemap.put(key[k],UFlash[k]); ?????????

??????}

??????int number=treemap.size();

??????System.out.println("樹(shù)映射中有"+number+"個(gè)對(duì)象,按容量成績(jī)排序:");

??????Collection<UFlash> collection=treemap.values();

??????Iterator<UFlash> iter=collection.iterator();

??????while(iter.hasNext()) {

?????????UFlash stu=iter.next();

?????????System.out.println("U"+stu.name+" 容量 "+stu.capacity);

??????}

??????treemap.clear();

??????for(int k=0;k<key.length;k++) {

?????????key[k]=new UFlashKey(UFlash[k].price);//關(guān)鍵字按價(jià)格成績(jī)排列大小

??????}

??????for(int k=0;k<UFlash.length;k++) {

?????????treemap.put(key[k],UFlash[k]);

??????}

??????number=treemap.size();

??????System.out.println("樹(shù)映射中有"+number+"個(gè)對(duì)象:按價(jià)格成績(jī)排序:");

??????collection=treemap.values();

??????iter=collection.iterator();

??????while(iter.hasNext()) {

?????????UFlash stu=(UFlash)iter.next();

?????????System.out.println("U"+stu.name+" 價(jià)格 "+stu.price);

??????}

????}

}

習(xí)題14

1

(1)創(chuàng)建數(shù)據(jù)源

選擇“控制面板”→“管理工具”→“ODBC數(shù)據(jù)源”(某些window/xp系統(tǒng),需選擇“控制面板”→“性能和維護(hù)”→“管理工具”→“ODBC數(shù)據(jù)源”)。雙擊ODBC數(shù)據(jù)源圖標(biāo),選擇“系統(tǒng)DSN”或“用戶DSN”,單擊“添加”按鈕,可以創(chuàng)建新的數(shù)據(jù)源。

(2) 數(shù)據(jù)源選擇驅(qū)動(dòng)程序

選擇單擊“添加”按鈕,出現(xiàn)為新增的數(shù)據(jù)源選擇驅(qū)動(dòng)程序界面,如果要訪問(wèn)Access數(shù)據(jù)庫(kù),選擇Microsoft Acess Driver*.mdb)。單擊完成按鈕。

(3) 數(shù)據(jù)源名稱及對(duì)應(yīng)數(shù)據(jù)庫(kù)的所在位置

在設(shè)置數(shù)據(jù)源具體項(xiàng)目的對(duì)話框,在名稱欄里為數(shù)據(jù)源起一個(gè)自己喜歡的名字。這個(gè)數(shù)據(jù)源就是指某個(gè)數(shù)據(jù)庫(kù)。在“數(shù)據(jù)庫(kù)選擇”欄中選擇一個(gè)已經(jīng)準(zhǔn)備好的數(shù)據(jù)庫(kù)。

2.參照本章例子14.2。

3.參照本章例子14.3。

4.參照本章例子14.4

5使用預(yù)處理語(yǔ)句不僅減輕了數(shù)據(jù)庫(kù)的負(fù)擔(dān),而且也提高了訪問(wèn)數(shù)據(jù)庫(kù)的速度。

6事務(wù)由一組SQL語(yǔ)句組成,所謂事務(wù)處理是指:應(yīng)用程序保證事務(wù)中的SQL語(yǔ)句要么全部都執(zhí)行,要么一個(gè)都不執(zhí)行。步驟:

(1)使用setAutoCommit(boolean autoCommit)方法
con對(duì)象首先調(diào)用setAutoCommit(boolean autoCommit)方法,將參數(shù)autoCommit取值false來(lái)關(guān)閉默認(rèn)設(shè)置:

con.setAutoCommit(false);

(2) 使用commit()方法。con調(diào)用commit()方法就是讓事務(wù)中的SQL語(yǔ)句全部生效。

(3) 使用rollback()方法。con調(diào)用rollback()方法撤消事務(wù)中成功執(zhí)行過(guò)的SQL語(yǔ)句對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)所做的更新、插入或刪除操作,即撤消引起數(shù)據(jù)發(fā)生變化的SQL語(yǔ)句操作,將數(shù)據(jù)庫(kù)中的數(shù)據(jù)恢復(fù)到commi()方法執(zhí)行之前的狀態(tài)。

7.參照本章例子14.2


查看更多