2006年11月1日

          數組,集合

          1.10 星期三
          ? array 數組:數組是一個具有相同類型的數據值得索引集合.

          ? 數組申明:double[] rainfull; 推薦
          ?????????? 或
          ??? double rainfull[];
          ?
          ?? 引用數據類型:接口,對象,數組.

          ?? rainfull = new double[12];
          ?? 創建一個長度為12的數組,把空間地址賦給rainfull.

          ?? 數組索引是從0開始(沒特殊要求情況下,索引一般都是從0開始)
          ?
          ?? 動態數組--自動增長

          ?? 數組.length (屬性)
          ?? String.leng()? (方法)

          ?? String[] m = {"a","b","c"...}
          ?? 在申明初始化時,數組的大小設定.

          ?? int size;
          ?? int[] number;
          ?? size = Integer.parseInt(JOptionPane.showMessageLag(null,"size of .."));??
          ?? number = new int[size];?? (方法也不是很好.因為size不一樣,對象也就不一樣.)
          ?? 可變型數組?
          ???
          ?? 對象數組
          ?? 數組的類型不是基本數據類型;
          ?? Person[] person;
          ?? person = new Person[20];
          ?? 對象數組每個元素都是一個對象,沒初始化時是null.

          ?? Person[0] = new Person[]; 創建對象

          1.11 星期四
          ?? JCF--java集合框架
          ?? Java Collection Framework
          ?? JCF是什么?
          ?? 是java語言設計出來的針對底層算法和數據結構的一系列類.
          ?? 在哪用JCF?
          ?? 凡是提到數據結構和算法的都可以用JCF
          ?? 為什么用JCF?
          ?? 讓程序員的重點放在業務上,而不是如何去寫算法上.
          ??
          ?? 接口???????????????? Collection
          ????????????????????????? |??? |
          ????????????????????????? |??? |
          ??????????????????? set----???? ----list?????????????? map
          ?
          ?? 實現??????????? HashSet????????? ArrayList????????? SoredMap
          ?
          ?? 算法??????????? Collections

          ?? 以上構成JCF
          ?
          ?? list 列表???? map 映射
          ?? list的重要特征是幫我們管理大量對象

          ?? ArrayList 數組列表
          ?? LinkedList (單雙)鏈表 (不是連續的,通過指針連接)

          ?? ArrayList al = new ArrayList();
          ?? al.add(1);
          ?? al.add(4);
          ?? al.add(2);? 增加
          ?? ......

          ?? al.remove;? 刪除

          ?? System.out.println(al);
          ?? System.out.println(al.get(3));

          ?? 排序
          ?? Collections.sort(al); 小到大
          ?? Collections.max(al);
          ?? Collections.min(al);
          ?? Collections.sort(al,Collection.reverseOrder);? 大到小
          ?
          ?? Vector 跟 ArrayList 很相似
          ?? 向量

          ?? 如何便利集合
          ?? Iterator it = al.iterator(); 迭帶器 挨個訪問
          ?? while(it.hasNext())
          ?? {
          ????? System.out.println(al.next);
          ?? }

          ?? HashMap 不允許重復
          ?? TreeMap 自動排序
          ?
          ?? treeMap tr = new TreeMap();
          ?? tr.put(1,1);? (key,value)
          ?? .......

          ?? Object[] o = tr.keySet().ToArray();
          ?? Object[] o = tr.value().ToArray();???????????????
          ?
          ?? System.out.println(tr);

          ?? for(int i = 0;i<o.leng;i++)
          ?? {
          ????? System.out.println(0[i]);
          ?? }

          posted @ 2007-01-11 21:53 扯 閱讀(340) | 評論 (1)編輯 收藏

          java GUI

          12.25!~12.27
          GUI
          1 容器,部件
          2 事件處理

          awt和swing的特點:
          awt(抽象窗口工具集)是依賴操作系統的GUI.
          能夠顯示出來的組件是不同操作系統的共有組件.(但是不太好看.)
          swing(模擬GUI組件)速度比awt要慢的多.
          swt(sun公司的,是swing和awt的綜合體)如果swt產生的組件awt有就直接調用, 沒有就模擬出來.這樣既解決了跨平臺的問題,也解決了速度慢的問題.


          低層容器:容器是包含其他組件的組件.
          JFrame,JApplet,JDialog.?

          布局管理器:
          標準布局,自由布局.

          GUI三個步驟:
          1.選擇容器
          2.為容器設置布局方式
          3.為容器填加組件

          導入3個包
          import javax.swing.*;
          import java.awt.*;
          import awt.event.*;

          GUI底層容器的實現方式
          第一種:
          JFrame jf = new JFrame();? //拿一個容器
          jf.setLayout(null);???????
          JButton jb = new JButton();
          jb.setBounds(0,0,20,20);? //絕對布局
          jf.add(jb);

          this.setSize(200,200);
          this.setVisible(true);

          第二種:
          類 extends JFrame?? //讓自己的類變成容器
          申明組件;
          public 類
          {
          ?Container ct = this.getContentPane();
          ?ct.add();
          ?this.setSize();
          ?this.setVisible();
          }

          this.setCursor(new Cursor(Cursor.HAND_CURSOR));? //變手

          Image image = new ImageIcon("Sunset.jpg").getImage();
          setIconImage(image);//改變圖標


          容器,根容器,部件看gui資料? E盤..

          布局管理器
          FlowLayout 面板(缺省管理器) 流布局管理器
          在setLayout(null)下全是FlowLayout
          BorderLayout JFrame(缺省布局管理器) 東 西 南 北 中
          GridLayout 行列(像表格)
          CardLayout 卡片布局管理器(沒有頁簽)
          GridBagLayout 格蘭包布局管理器(標準管理器中最靈活的,不好把控)??


          FlowLayout 從上到下,從左到右放置.
          1.當第一行沒有排滿時,會把第一行排滿再排下一行.
          2.不管布局管理器是否改變,組件大小都不會改變.
          FlowLayout folw = new FlowLayout (FlowLayout.LEFT);
          3.在缺省狀態下從中部開始.


          BorderLayout
          當東西南北任何一個地區沒放置任何組件時,中部區域會把周圍的區域侵略掉.
          setLayout(new BorderLayout());
          組件會隨著容器大小的變化而變化.
          add("North",組件); 不好用
          add(組件,BorderLayout.NORTH); 清晰

          GridLayout
          組件會隨著容器大小的變化而變化.
          setLayout(new GridLayout(3,2));? 行列
          add(new Button("first",0));
          根據序列依次填進去,只有列滿了才去填行.
          validate();? 讓容器刷新

          GardLayout
          GardLayout card = new GardLayout();
          setLayout(card);
          add("1",new Button(""));


          CardLayout cl = (CardLayout)cardLayout.getLayout;
          cl.show(cardLayout,"card1");

          事件
          class 類 extends JFrame implements(實現) ActionListener(接口)
          {????????????????????? (受托事件處理)
          ?????????????????????? 不同的事件不同的部門處理
          }
          1 讓類變成監聽者
          2 賦予多少職責就實現多少
          3 建立部件與監聽者的關系
          jb.addActionListener(this);

          ?

          CardLayout cl = (CardLayout)card.getLayout();
          String s = e.getActionCommed();
          if(s.equals("上一步"))
          {
          ?cl.show(card,"card2");
          ?????? ?或者
          ??????? cl.previous(card);
          ?button.setEnabled(false);
          }
          else if(s.equals("下一步"))
          {
          ?cl.show(card,"card1");
          ?????? ?或者
          ??????? cl.previous(card);
          ?button.setEnabled(false);
          }

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          posted @ 2007-01-11 21:11 扯 閱讀(303) | 評論 (0)編輯 收藏

          java基礎

          2.19 星期二
          ? 在方法里面申明的屬性必須初始化.(局部變量)
          ? 在類里面申明的屬性不用初始化.(全局變量)

          ? 如果一個方法有返回值,那么方法里必須加上return.返回類型沒有void.

          ? 構造器就是類的構造方法.

          ? 構造方法的基本特點:
          ? 方法名和類名一致,方法名沒有返回類型.

          ? 構造方法的特性:
          ? 1.每個類一定會有一個不帶參數的默認構造方法.
          ? 2.如果一個類定義了一個帶參數的構造方法,那么不帶參數的構造方法就會被洗刷掉.
          ? 3.構造方法可以重載.(如一個帶參數的和一個帶參數的)
          ? 一個類的方法同名叫做方法重載.
          ? 4.構造方法是不能被繼承的.

          ?
          ? 實例變量:在類里面任何一個方法外面的變量.每個對象都有屬于自己實例變量的拷貝.

          ? public private這個我們稱之為"可見性修飾符".它來指定數據成員和方法的訪問能力和訪問級別.

          ? 如果這個方法的行為是改變對象的屬性,設置對象屬性的值,那么這個方法稱之為"修改器".
          ? public void setHeight(float h, float w)
          ? {
          ???? height = h;
          ???? weight = w;
          ? }?

          ? 如果這個方法只是返回對象屬性,那么我們稱這個方法為"訪問器".
          ? public void abc()
          ? {
          ???? return a;
          ? }

          12.20 星期三
          ? static int i;是類變量
          ? 缺省修飾符:本包的都可以訪問.
          ? 公共修飾符(public):任何地方都可以訪問.

          ? if()
          ? 語句1;
          ? else
          ? 語句2;
          ?
          ? ?? :?????? if else的工程用法(三目運算符)
          ?
          ? switch的條件語句只能是整數

          ? equals方法是被重寫過的.
          ?
          ? equals跟==的區別:
          ? equals比較的是內存空間的內容是否相同
          ? == 比較的是兩個對象的地址是否相同

          12.21 星期四

          properties
          ?
          import java.io.*;
          import java.util.Properties;

          class P
          {
          ?Properties pro;
          ?
          ?public P()
          ?{
          ??pro = new Properties();
          ?}
          ?
          ?public void load(String fileName)
          ?{
          ??try
          ??{
          ???pro.load(new FileInputStream(fileName));加載
          ??}
          ??catch(IOException e)
          ??{
          ???e.printStackTrace();
          ??}
          ?}
          ?
          ?public void getP(String key)
          ?{
          ??System.out.println(pro.getProperty(key));讀取
          ?}
          ?
          ?public void setP(String key,String value)
          ?{
          ??pro.setProperty(key,value);設置(在內存里)
          ?}
          ?
          ?public void storeP(String fileName,String Info)
          ?{
          ??try
          ??{
          ???pro.store(new FileOutputStream(fileName),Info);保存(在文件)
          ??}
          ??catch(IOException e)
          ??{
          ???e.printStackTrace();
          ??}
          ?}
          ?
          }


          普通文件? 后綴.peoperties

          (柔性軟件開發)目的:可以讓程序變的靈活,配置變的輕巧。

          循環語句
          while循環:循環次數未知使用。
          for 循環:已知循環次數使用。
          do-while循環

          ?


          ?

          posted @ 2007-01-11 21:11 扯 閱讀(176) | 評論 (0)編輯 收藏

          java基礎的基礎

          java基礎

          static是靜態。
          靜態方法不能訪問非靜態成員。
          非靜態方法可以訪問靜態成員。

          int i = 3;
          public static void main(String[] args)?
          {?
          ?System.out.println(i);
          }
          這個就會報錯。因為靜態方法不能訪問非靜態成員??!

          ?static int i = 3;
          ?public static void main(String[] args)
          ?{
          ??nbn n = new nbn();
          ??n.abc();
          ?}
          ?
          ?public void abc()
          ?{
          ??System.out.println(i);
          ?}

          這個就不會報錯。因為非靜態方法可以訪問靜態成員。

          ?

          public(訪問修飾符)static(訪問修飾符)void(返回類型) main(方法名)(String[] args)(參數表){}

          import javax.swing.*;
          import java.text.SimpleDateFormat;
          class jframe
          {
          ?public static void main(String[] args)
          ?{
          ??JFrame jf = new JFrame();//窗口
          ??
          ??SimpleDateFormat sf = new SimpleDateFormat("yyyy-mm-dd");//時間格式
          ??java.util.Date da = new java.util.Date();//顯示時間的對象申明
          ??
          ??
          ??jf.setTitle("w.a.n");//設置標題
          ??jf.setSize(300,300);//設置窗體大小
          ??jf.setVisible(true);//顯示
          ??JOptionPane.showMessageDialog(jf(位置),"hello");//彈出窗口顯示HELLO
          ??String a = JOptionPane.showInputDialog(null,"can you see?");//輸入窗口,窗口提示為can you see
          ??

          ??JOptionPane.showMessageDialog跟JOptionPane.showInputDialog還有一種參數寫法。
          ??JOptionPane.showMessageDialog(null," "(顯示信息)," "(標題信息),JOptionPane.INFORMATION_MESSAGE);
          ??System.out.println(sf.format(da.getTime())); //輸出年月日。用SimpleDateFormat
          ??
          ?}
          }


          三種注釋
          /**
          ?*文檔註釋,寫在開頭 ( 注明程序的功能,以及相關信息)
          ?*功能:
          ?*作者:
          ?*版本:
          ?*開發日期:
          ?**/

          /*
          ? *多行註釋
          ?
          *///單行註釋


          import javax.swing.JOptionPane;
          class Area
          {
          ?final private static double PI = 3.1415;? //常量的申明:final
          ?private String r;
          ?private double rr;
          ?private double s;
          ?
          ?
          ?public static void main(String[] args)
          ?{
          ??Area a = new Area();
          ??a.Input();
          ??a.Areas();
          ?}
          ?
          ?public void Input()
          ?{
          ??r? = JOptionPane.showInputDialog(null,"請輸入圓半徑");
          ?}
          ?
          ?public void Areas()
          ?{??
          ??rr = Double.parseDouble(r);//類型轉換?
          ??s? = rr*rr*PI;
          ??JOptionPane.showMessageDialog(null,"圓面積是:"+s);
          ?}
          }

          類型轉換

          String轉double
          xx = Double.parseDouble(要轉換的數據名字);
          String轉int
          xx = Integer.parseInt(要轉換的數據名字);

          int轉String
          String s = String.valueOf(12);

          String s = new Integer(10).toString();

          注意??!
          float f = 2.33 是錯的。因為2.33默認類型是double.
          改正:float f = 2.33 F;

          還要注意
          高內聚,松耦合。
          函數分解。
          這樣代碼看起來會很清爽。


          import java.text.DecimalFormat;
          class Dformat
          {
          ?public static void main(String[] args)
          ?{
          ??DecimalFormat df = new DecimalFormat("0");//格式0后面幾個小數點表示保留幾位小數
          ??System.out.println(df.format(66.6666)+"%");//這樣66.666就是67%
          ?}
          }


          標準輸出
          System.out.print("");//加ln是換行
          標準輸入
          System.out.println(System.in.read());//這個方法用來讀取阿科斯碼
          System.out.println((char)System.in.read());//這個方法是強制轉換,只能讀取一個字符

          import java.io.*;//用BufferedReader 要引用io包
          class c
          {?
          ?public static void main(String[] args)throws Exception //要拋異常
          ?{
          ?BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
          ?String s = br.readLine();
          ?System.out.println(s);
          ?}
          }
          ?要導入util包,util是工具包.
          ?Scanner sc = new Scanner(System.in);
          ?int s = sc.nextInt();
          ?int s1 = sc.nextInt();
          ?System.out.println(s*s1);//用Scanner可以省去判斷的步驟 在jdk1.5以下的版本不能用

          GregorianCalendar calendar = new GregorianCalendar(year,month,day);
          int d = calendar.get(Calendar.DAY_OF_WEEK);//今天是一周內的哪一天

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          ?

          posted @ 2007-01-11 21:10 扯 閱讀(253) | 評論 (0)編輯 收藏

          javascript補充

          將HTML和JS文件分離的好處.<script type="text/javascript" src="";
          1.分離的話易于維護和管理.
          2.可重用.
          javascript的作用是:1實現客戶端與網頁的交互(人機交互)
          ?????????????????????????????? 2客戶端驗證

          window的2個"兒子":document?和? history

          window有3個主要的.alert(提示框),open(新開一個窗口),prompt(對話框)

          還有window.location.href="";實現頁面跳轉

          window.status="";(狀態條下寫字).

          window.history.back();(返回)
          window.history.forward();(前進)
          window.history.go(2);(前進2步)
          window.history.go(-2);(退后2步)

          事件
          onclick單擊 ondblclick雙擊
          onfocus 聚焦 onblur 失焦
          onselect 選擇事件
          window.setTimeout("函數",時間)? (定時器)
          onmouseover 鼠標放上去
          onmouseout 鼠標離開
          下拉列表:onchange
          onload 寫在<body>里 登陸發生的事件
          onunload 寫在<body>里? 離開發生的事件


          獲取表單對象
          document.formTest(表單名);
          document.forms[0];
          document.forms["表單名"];
          document.getElementById("formId");

          posted @ 2006-12-07 22:37 扯 閱讀(254) | 評論 (0)編輯 收藏

          表單驗證

          <form name="formTest" action="#">
          ??<input type="checkbox" id="w1" name="box" value="0" />男
          ??<input type="checkbox" id="w2" name="box" value="0" />女
          ??<input type="checkbox" id="w3" name="box" value="0" />外鄉人</br>
          ??<input type="button" value="ok" onclick="w1.checked='checked';w2.checked='checked';w3.checked='checked'"/>
          簡單的按一個鍵,所有的check都被選中.

          下面的這個是關于表單驗證的一個作業.需要分析:就是在一個TEXT聚焦的時候,就會在旁邊顯示一排字告訴你里面內容必須不為空,并且要大于或者等于8位.當你輸入的內容符合要求的時候,該行字就自動小時.我算是基本實現了功能了,但是不完善.因為當我輸入9個字的時候,字并不是自動小時的,而是需要我再一次的聚焦..如果那位達人能幫忙解決下,俺感激不盡..
          代碼如下:
          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "

          <html xmlns="?<head>
          ??<!-- Created by TopStyle Pro Trial Version -
          www.bradsoft.com -->
          ??<title></title>
          ??<style>
          ???div
          ???{
          ????color: red;
          ????font-size: 13px;
          ???}
          ???
          ???
          ??
          ??</style>
          ??<script>
          ???function tixing()
          ???{
          ????
          ????var divObject = document.getElementById("div1");
          ????var text= document.getElementById("t1");
          ????if(text.value.length >=8)
          ????{
          ????divObject.innerHTML = "您輸入的用戶名必須在0-8位之間。";
          ????divObject.style.display = "none";
          ????}?
          ????else
          ????{
          ????divObject.innerHTML = "您輸入的用戶名必須在0-8位之間。";
          ????divObject.style.display = "";
          ????}
          ????
          ???}?
          ???function tixing1()
          ???{
          ????var divObject1 = document.getElementById("div2");
          ????var text2= document.getElementById("t2");
          ????if(text2.value.length >=8)
          ????{
          ????divObject1.innerHTML = "您輸入的用戶名必須在0-8位之間。";
          ????divObject1.style.display = "none";
          ????}?
          ????else
          ????{
          ????divObject1.innerHTML = "您輸入的用戶名必須在0-8位之間。";
          ????divObject1.style.display = "";
          ????}
          ???}
          ???function validate()
          ???{
          ????var te1 = document.getElementById("t1")
          ????var te2 = document.getElementById("t2")
          ????var divObject = div1;
          ????var divObject1 = div2;
          ????
          ????if(te1.value.length < 8)
          ????{
          ?????divObject.innerHTML = "您輸入的用戶名必須在0-8位之間。";
          ?????divObject.style.display = "";
          ????}????
          ????
          ????if(te2.value.length < 8)
          ????{
          ?????divObject1.innerHTML = "您輸入的密碼必須在0-8位之間"
          ?????divObject1.style.display = "";
          ????}
          ????
          ????if(te1.value.length < 8 && te2.value.length < 8)
          ????{
          ????divObject.innerHTML = "您輸入的用戶名必須在0-8位之間。";
          ????divObject1.innerHTML = "您輸入的密碼必須在0-8位之間"
          ????divObject.style.display = "";
          ????divObject1.style.display = "";
          ????}
          ???}
          ???
          ??</script>
          ?</head>

          ?<body>
          ??<form id="formTest">
          ???用戶名
          ???<input type="text" id="t1"? onfocus="tixing();"/><br /><div id="div1"? ></div>
          ???密&nbsp碼?
          ???<input type="password" id="t2"? onfocus="tixing1()" /><br /><div id="div2"></div>
          ???<input type="button" id="bt1" value="登錄" onclick="validate()"/>
          ??</form>
          ?</body>
          </html>


          再下面的這個是今天的作業.
          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "

          <html xmlns="<head>
          ?<!-- Created by TopStyle Pro Trial Version -
          www.bradsoft.com -->
          ?<title></title>
          ?<style>
          ?div
          ?{
          ??float: left;
          ?}
          ?</style>
          ?<script>
          ??function a()
          ??{
          ???var textId0 = document.getElementById("te1");
          ???var text0 = textId0.value;
          ???var areId = document.getElementById("text");
          ???areId.value = areId.value+"1."+"用戶名:"+text0+"\n";
          ???
          ??}
          ??function b()
          ??{
          ???var textId1 = document.getElementById("pa");
          ???var text1 = textId1.value;
          ???var areId = document.getElementById("text");
          ???areId.value =areId.value+"3."+"密碼:"+text1+"\n";
          ??}
          ??function c()
          ??{
          ???var radioId1 = document.getElementById("ra1");
          ???var radio1 = radioId1.value;
          ???var areId = document.getElementById("text");
          ???areId.value =areId.value+"4."+"單選:"+radio1+"\n";
          ??}
          ??function d()
          ??{
          ???var radioId2 = document.getElementById("ra2");
          ???var radio2 = radioId2.value;
          ???var areId = document.getElementById("text");
          ???areId.value =areId.value+"4."+"單選:"+radio2+"\n";
          ??}
          ??function ei()
          ??{
          ???var radioId3= document.getElementById("ra3");
          ???var radio3 = radioId3.value;
          ???var areId = document.getElementById("text");
          ???areId.value =areId.value+"4."+"單選:"+radio3+"\n";
          ??}
          ??function f()
          ??{
          ???var checkId1= document.getElementById("che1");
          ???var check1 = checkId1.value;
          ???var areId = document.getElementById("text");
          ???areId.value =areId.value+"5."+"多選:"+check1+"\n";
          ??}
          ??function g()
          ??{
          ???var checkId2= document.getElementById("che2");
          ???var check2 = checkId2.value;
          ???var areId = document.getElementById("text");
          ???areId.value =areId.value+"5."+"多選:"+check2+"\n";
          ??}
          ??function h()
          ??{
          ???var checkId3= document.getElementById("che3");
          ???var check3 = checkId3.value;
          ???var areId = document.getElementById("text");
          ???areId.value =areId.value+"5."+"多選:"+check3+"\n";
          ??}
          ??function select()
          ??{
          ???var a = document.getElementById("selectId");
          ???var b = a.options[a.selectedIndex];
          ???var c = b.value;
          ???var? areId = document.getElementById("text");
          ??
          ???areId.value = areId.value+c;
          ??}
          ?</script>
          </head>

          <body>
          ?
          ??<div>
          ???用戶名:<input type="text" id="te1" onblur="a()"/><br/>
          ???密&nbsp&nbsp碼:<input type="password" id="pa" onblur="b();"/><br />
          ???<a>
          ???<input type="radio" value="吃飯" id="ra1" name="1" onblur="c();"/>吃飯
          ???<input type="radio" value="睡覺" id="ra2" name="1" onblur="d();"/>睡覺
          ???<input type="radio" value="上學" id="ra3" name="1" onblur="ei();"/>上學
          ???</a><br />
          ???<a>
          ???<input type="checkbox" id="che1" value="巷巷" onblur="f()"/>巷巷
          ???<input type="checkbox" id="che2" value="街道" onblur="g()"/>街道
          ???<input type="checkbox" id="che3" value="邊邊" onblur="h()"/>邊邊
          ???</a><br />
          ???<textarea id="text" cols="20" rows="6"></textarea>
          ??</div>
          ??<form id="selectId0">
          ???<select id="selectId" onblur="select()"; / >
          ????<option value="東東">東東? </option>
          ????<option value="南南">南南</option>
          ????<option value="西西">西西 </option>
          ????<option value="北北">北北 </option>
          ???</select>
          ??</form>
          ?
          </body>
          </html>

          還是不完善..哎..

          posted @ 2006-12-07 22:14 扯 閱讀(206) | 評論 (0)編輯 收藏

          循環語句

          do while和 while?的區別.??
          do while? 是先執行再判斷
          while?? 是先判斷再執行

          --i;?? 減之前的值
          i--;?????? 減之后的值??? ?i的值會變
          i = i - 1;???????????????????????? i的值會變
          i - 1;?? i沒有變


          var i;
          /*for(i = 0;i<10;i++)? //;分段?? 初始化;循環條件;步進
          {
          ?document.write(i+"<br />");
          }*/

          /*for(i = 0;i<20;i++)
          {
          ?if(i == 16)
          ?{
          ??break;?
          ?}
          ?document.write(i+"&nbsp");
          }*/

          /*for(i = 0;i<20;i++)
          {
          ?if(i%2 == 1)
          ?{
          ??continue;
          ?}
          ?document.write(i+"&nbsp");
          }*/

          /*var i = 1;
          var j = 1;
          for(i = 1;i<10;i++)
          {
          ?for(j = 1;j<=i;j++)
          ?{
          ??document.write(i+"*"+j+"="+i*j);
          ??document.write("&nbsp&nbsp&nbsp&nbsp")
          ?}
          ?document.write("<br />")
          }*/

          /*var i = 1;
          var j = 1;
          ?
          for(i = 1;i<10;i++)
          {?
          ?for(j = 1;j<10;j++)
          ?{
          ??document.write(i+"*"+j+"="+i*j);
          ??document.write("&nbsp&nbsp&nbsp&nbsp")
          ?}
          ?document.write("<br />")
          }*/

          /*
          while(true)? //死循環
          {
          ?alert("fdfd");
          }
          alert("end");*/

          var i = 20;
          while(i>5010)
          {
          ?document.write(i);
          ?i=i-1;
          }
          //alert("end");

          /*var i = 0;
          while(i<100)
          {
          ?document.write(i+"&nbsp;&nbsp;&nbsp;");
          ?if(i%10 == 9)
          ?{
          ??document.write("<br /><br />");
          ?}
          ?i++;
          }*/

          posted @ 2006-12-07 22:03 扯 閱讀(269) | 評論 (0)編輯 收藏

          javascript條件語句

          <script>
          ?var b = "hello";
          ?</script>

          <script>
          alert (b);
          </script>
          這個hello能打出來嗎?這是今天黃Sir上課問的問題.好多人沒反映過來.我也算一個吧.
          答案是能打出來.*因為寫在不同塊的變量可以相互引用..!!

          邏輯運算符
          &&與.就是數學上的且!
          ||或.
          !非.
          在與里面,只要有1個是false,那結果就是false.
          在或里面,只要有個是true,那結果就是ture.
          非.如果是true那么它的非就是false,反之亦是.
          如果是數字,記住只有0是false.只要是非0就都是true.

          switch(day = 1)? //switch只能表示等或者不等的映射關系
          ?{
          ??case day = 1:
          ??{
          ???alert("monday");
          ??}break;????? //如果不加break會繼續往下執行,并且忽略后來的比對,直到遇到下一個break.
          ??case day = 2:
          ??{
          ???alert("tuesday");
          ??}break;??
          ??case day = 3:
          ??{
          ???alert("wednesday");
          ??}break;
          ??case day = 4:
          ??{
          ???alert("thursday");
          ??}break;
          ??case day = 5:
          ??{?
          ???alert("friday");
          ??}break;
          ??case day = 6:
          ??{
          ???alert("saturday");
          ??}break;
          ??case day = 7:
          ??{
          ???alert("sunday");
          ??}break;
          ??default:
          ??{
          ???alert("error");
          ??}break; //最后1個可加可不加,但是加上比較嚴謹。
          }

          var score = 99;
          if(score>=90) //表示范圍
          {
          ?alert("so cool");
          }
          else if(score>=80)
          {
          ?alert("good");?
          }
          else if(score>=70)
          {
          ?alert("so-so")
          }
          else if(score>=60)
          {
          ?("pass");
          }
          else
          {
          ?alert("not pass");
          }

          posted @ 2006-11-30 20:10 扯 閱讀(561) | 評論 (0)編輯 收藏

          javascript基本語法.

          ???(首先,今天是我的跟兒生日.跟跟,你的跟祝你生日快樂!~)
          ???進入正題....
          ???javascript是一種腳本語言.腳本語言的意思就是它生成的文件不能獨立運行,必須依賴于一種平臺.比如javascript就必須要用IE才能打開.而像java或者c語言,它們由代碼生成文件就可以獨立運行.
          ?? javascript是一種弱類型語言.它不像java,c這些強類型的語言.強類型和弱類型語言的區別就在于.在申明一個變量的時候,強類型語言必須把變量類型也指定好. int i =0;而且一旦指定好類型,就不能再改變.而javascript作為一種弱類型的語言,它在申明變量的時候就不需要指定變量類型.切數據類型是自動轉換的.
          ???如var a = 0;這個時候a這個變量的數據類型就是整形.a = "hello"這個時候a的變量類型就變成了字符型.
          ???javascript可以使用<script>嵌入進html里,也可以通過添加事件,或者用偽URL javascript..
          ???alert();可以在()內寫函數,數字,或者字符串.字符串必須用""括起來.它的效果就是彈出一個窗口.
          ????var f = true;
          ?? alert(typeof(f));? //返回數據類型
          ???
          ???函數:function functionName()?? //定義,申明
          ???{
          ????alert("Welcome to Lovo");
          ???}
          ?? functionName();?? //調用,使用

          ???function abc(o)? //o是形式參數
          ?? {
          ?? ?alert(o);
          ?? }
          ??// o = "hello";
          ?? abc("hello");? //"hello"是實際參數

          ??
          ?? function a(i,o)
          ?? {
          ?? ?alert(i+o)
          ?? }
          ?? a(5,9);
          ???這個的結果是14.很簡單,就是2個數字相加.
          ???
          ?? function a(i,o)
          ?? {
          ?? ?alert(i+o)
          ?? }
          ?? a("500",9);
          ???這個呢?是5009.這個因為500打了"",所以它就變成了字符串相加.

          ??? function b(i,o)
          ?? {
          ?? ?var w;
          ???w = i + o;
          ???alert(w);
          ???return w;? //程序到return就自動跳出
          ???}
          ??b(1,3);
          ???之前我犯了個錯誤,我把?alert(w);寫在了??return w;?之后..我就奇怪為什么W的值打不出來...好白癡,因為函數return w;的時候就直接跳出了.就不會接續執行函數里面??return w;?后面的語句了.?

          ? function b(i,o)
          ?? {
          ?? ?var w;
          ???w = i + o;
          ???return w;?
          ???}
          ?????
          ??? function c()
          ??? {
          ??? ?var result;
          ???result = b(3,3);
          ???alert(result);
          ??? }
          ?? c();
          ???這個是函數c調用函數b,函數b里面有個返回值,它把需要的結果返回給它的調用者.

          posted @ 2006-11-30 19:57 扯 閱讀(933) | 評論 (0)編輯 收藏

          html

          ???(哎..終于還是降級了..只能從HTML重新學過了..哎..學習終究是不能騙自己的..好好學習吧!~~...)
          ???HTML我是用TopStyle來寫.CSS是2.0..(我知道是廢話...)
          ???要在HTML里面寫個button or test就很簡單了..
          ???就是在<head>里寫 <form action="#"(這個表示發到哪里.."#"表示提交到當前頁面) method="post" (這個是發送方法,一共有2種.一種是GET.這個方法相對比較不安全.因為它會把你提交的信息以一個"?"打頭粘到URL后面第2種就是POST.這個就比較安全了.你所提交的東西是在URL上是看不到的)>
          ???然后<input type="button"(這如果填TEST就是TEST了) id="bt1" name="bt1"(ID跟NAME最好都寫上,這個是好習慣,在以后會很有用.ID跟NAME可以不一樣) value="登錄"(這個就是你BUTTON上顯示的字.)>
          相同..<input type="text" id="te2" name="te2">...
          ???如果要想寫個單選框或者復選框.
          ?? <input type="checkbox"(CHECKBOX就是復選框) id="cb1" name="cb1">記住我(表示你復選框后面跟的字).怎么樣讓你的這個復選框為默認呢?就在<input>里添上一個checked="checked".如果不能選就添上一個disabled="disabled".
          ???接下來是單選框.其他的都跟復選框一樣,唯一不同的就是.在type=""填"radio".
          ???除此之外,還有password(跟TEST有點像,不同的是輸入信息是以星星的形式) submit(跟button,reset是一組.按了submit整個表單都提交了) reset(重置) file(上傳文件) image(圖片 后跟src=""選擇URL)
          ????選擇框.
          ???<select>
          ???<option value="sh">上海</option>
          ???<option value="sh">成都</option>
          ???<option value="sh">廣州</option>
          ???</select>
          ?? 也可以<select size="5"(表示同時有幾個被選項可以在不拉滾動條的情況下直接選擇) multiple="multiple"(可以多選 在按中SHIFT的情況下)>
          ??? 多行輸入的文本框????
          ???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? <textarea cols="10" rows="10"(設置長寬不用說了.)></textarea>
          ??? 最后1個是一個框框把你想框的內容全部框住,并且可以取個標題.
          ??? <fieldset>
          ??????<legend>dsada</legend>
          ????</fieldset>
          ??? <fieldset>?</fieldset>這個標簽中間放你想被框的內容.<legend></legend>這個標簽中間寫標題名.
          ???
          ??? CSS我簡單說一下.CSS是樣式層疊表..它確實是層疊的.關于盒式模型的布局屬性一共有三種. margin: border:? padding: .margin: 是調整邊框和邊框的距離.border:是調整邊框的厚度.padding:是調整邊框跟內容之間的距離.
          ???? 以下是我用CSS以及HTML寫的一個網頁的代碼.
          ??????<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "

          <html>
          ?<head>
          ??<!-- Created by TopStyle Pro Trial Version -
          www.bradsoft.com -->
          ??<title>用戶注冊</title>?
          ??<style>
          ??#a,#b,#d,#e,#i,#j
          ??{
          ??? ?padding:;
          ???padding-left: 208px;
          ??}
          ??
          ??#c
          ??{
          ???padding: 30px;
          ???padding-left: 208px;
          ??}
          ??
          ??#f
          ??{
          ???padding:;
          ???padding-left: 193px;
          ??}
          ??
          ??#h
          ??{
          ???padding:;
          ???padding-left: 193px;
          ??}
          ??
          ??#g
          ??{
          ???padding:;
          ???padding-left: 224px;
          ??}
          ??
          ??? #f2
          ??{
          ??? ?margin:;
          ???margin-bottom: 29px;
          ???margin-left: 31px;
          ???margin-right: 43px;
          ??}
          ??
          ??? #f3
          ??{
          ??? ?margin:;
          ???margin-bottom: 29px;
          ???margin-left: 31px;
          ???margin-right: 43px;
          ??}
          ??
          ??#bt1
          ??{
          ???margin:;
          ???margin-left: 36px;
          ??}
          ??
          ??#cb1
          ??{
          ???margin:;
          ???margin-left: 30px;
          ??}
          ??
          ??/*#f4
          ??{
          ??
          ???? margin:;
          ???margin-right: 778px;
          ??}*/
          ??
          ??#f5
          ??{
          ???margin:;
          ???margin-right: 778px;
          ??}
          ??</style>
          ?
          ?</head>

          ?<body>
          ??<form action="#" method="post">
          ???<fieldset id="f1">
          ???<h2>已注冊用戶登錄</h2>
          ???<fieldset id="f2">
          ????<legend >
          ?????<h3 >登錄用戶</h3 >
          ????</legend>
          ????
          ????<p id="a" >用戶名
          ?????<input type="text" id="te1" name="te1">
          ????</p>

          ????<p id="b">密&nbsp&nbsp碼
          ?????<input type="text" id="te2" name="te2">
          ????</p>
          ????
          ????<p id="c">
          ?????<input type="checkbox" id="cb1" name="cb1">記住我
          ?????<input type="button" id="bt1" name="bt1" value="登錄">
          ????</p>
          ????</fieldset>

          ???<h2>未注冊創建帳戶</h2>
          ????<fieldset id="f3">
          ?????<legend >
          ??????<h3><fieldset id="f5">用戶注冊</fieldset></h3>?
          ?????</legend>
          ?????
          ?????<p id="d">
          ??????<h4>您的電子郵箱不會被公布出去,但是必須填寫.</h4>在您注冊之前請先認真閱讀服務條款
          ?????</p>
          ?????
          ?????<p id="e">用戶名
          ??????<input type="text" id="te3" name="te3">*(最多30個字符)
          ?????</p>

          ?????<p id="f">電子郵箱
          ??????<input type="text" id="te4" name="te4">*
          ?????</p>
          ?????
          ?????<p id="g">密碼
          ??????<input type="text" id="te5" name="te5">*(最多15個字符)
          ?????</p>

          ?????<p id="h">重復密碼
          ??????<input type="text" id="te6" name="te6">*
          ?????</p>

          ?????<p id="i">同意服務條款
          ??????<input type="checkbox" id="cb2" name="cb2">先看看條款?*
          ?????</p>

          ?????<p id="j">
          ??????<input type="submit" id="bt2" name="bt2" value="提交">
          ??????<input type="reset" id="bt3" name="bt3" value="重置">
          ?????</p>
          ?????
          ?????<h3>*在提交您的注冊信息時,我們認為您已經同意了我們的服務條款</h3>
          ?????<h3>*這些條款可能在未經您同意的時候進行修改</h3>
          ???
          ???</fieldset>
          ??</form>
          ?</body>
          </html>


          ? 以上便是我的總結!

          posted @ 2006-11-28 16:49 扯 閱讀(337) | 評論 (0)編輯 收藏

          數據庫第2章

          ??????數據規范化???
          ??????第一范式
          ??????1.每一行的每一列必須只有一個值.
          ??????2.每一行的列相同.
          ??????3.所有行必須唯一.
          ??????第二范式
          ??????1.遵守所有第一范式的規則.
          ??????2.所有非主鍵列必須依賴主鍵列.
          ??????第三范式
          ??????1.遵守所有第二范式的規則.
          ??????2.所有非主鍵列必須依賴主鍵列,并且必須相互獨立.
          ??????關系型數據庫的關系
          ??????一對一關系.
          ??????一對多關系.
          ??????多對多關系.
          ??????其中一對一關系主要因為1.敏感信息.2.列太多.3.提高性能.
          ??????多對多關系是不存在的,一般中間都會加個連接表.
          ??????創建數據模型
          ??????邏輯型模型
          ??????物理型模型
          ??????邏輯型模型是抽象的考慮數據存儲,并且嚴格遵守范式規則和關系模型.物理型模型是提供的數據庫如何在RDBMS實現的表現.所以,邏輯型模型與數據庫如何實現無關,而物理型模型就是一個特定的實現.
          ??????數據型模型是創建表,定義列,以及設置表間關系的藍圖.它必須實現:
          ??????1.組成數據庫的表
          ??????2.組成每個表的列.
          ??????3.列的數據類型.
          ??????4.標識每一行的主鍵.
          ??????5.標明表間的關系.
          ??????創建數據模型的4個步驟:
          ??????1.識別實體??
          ??????2.規范化數據
          ??????3.識別關系
          ??????4.改進數據模型

          posted @ 2006-11-01 22:55 扯 閱讀(160) | 評論 (0)編輯 收藏

          數據庫

          ??????數據庫就是一系列有一定關系的數據的集合.(某種方式相關的數據的集合).在數據庫中,數據的描述必須? 是以一定的格式被組織或者分類.這種格式叫做元數據(metadata)
          ??????常見的數據模型有3種.
          ??????層次模型
          ????? 層次模型就好象是一棵倒掛的樹.數據是以父類子類的形式存在.每個父類可以有多個子類,但是每個子類只能有1個父類.其形狀跟WINDOWS資源管理器一樣.其缺點就是
          過于呆板,導航非常的麻煩.
          ????? 網狀模型
          ??????網絡型相比層次模型提供了更多的可伸縮性.他允許有多個父子關系.他的缺點是如果數據庫變動,或者程序變動,那就會引起更多的變動.
          ??????關系模型
          ????? 這個較上兩個,可伸縮性就更強.他對于應用程序是獨立的.就是說如果應用程序有改動,但是數據庫卻可以不變.
          ??????數據庫管理系統(DBNS)他的功能基本上是:
          ??????管理存儲
          ??????維護安全
          ??????維護元數據
          ??????管理事務
          ??????支持連接性
          ??????優化性能
          ??????提供備份和恢復機智
          ??????處理數據反饋和更改的請求
          ????? 一個關系型數據庫(RDBNS)分成兩個主要組成部分.
          ????? 數據庫引擎
          ??????數據
          ??????關系型數據庫分兩種類型.
          ??????本地數據管理系統
          ??????數據庫服務器管理系統
          ??????SQL是機構化查詢語言的英文縮寫.它是一門非過程的語言.它是實現必須要有一個宿主語言.它本身是一種沒有多少基本編程能力的次語言.
          ??????SQL語句分為三種.
          ??????DDL.數據定義語句.
          ??????DML.數據操作語言.
          ??????DCL數據控制語言.
          ??????DDL執行的任務是:創建刪除數據庫;創建,修改,重命名,刪除表;創建刪除索引.
          ??????DML執行的任務是:SQL查詢;將數據插入一個表中;更改表中已有數據;刪除表中數據.
          ??????DCL執行的任務是:給用戶授予訪問權限;取消用戶訪問權限.
          ??????Oracle的體系結構
          ????? Oracle主要由數據庫引擎和數據庫結構兩部分組成.
          ??????數據庫引擎又分為數據全局區(SGA)和后臺處理程序兩部分.

          posted @ 2006-11-01 00:09 扯 閱讀(255) | 評論 (0)編輯 收藏

          <2006年11月>
          2930311234
          567891011
          12131415161718
          19202122232425
          262728293012
          3456789

          導航

          統計

          常用鏈接

          留言簿(1)

          隨筆檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 玉林市| 淮南市| 蕲春县| 松江区| 华宁县| 淮北市| 灵宝市| 连州市| 韩城市| 梁河县| 滕州市| 三明市| 高尔夫| 鲁山县| 长春市| 延安市| 扶余县| 罗定市| 宣武区| 巩义市| 江口县| 遵化市| 竹溪县| 宜君县| 奈曼旗| 黄石市| 兴仁县| 堆龙德庆县| 横峰县| 丰顺县| 兴海县| 陇南市| 连南| 丘北县| 水城县| 铅山县| 松原市| 宁河县| 盐津县| 汝州市| 灵石县|