VB內(nèi)部采用Unicode編碼,在這種編碼格式下,任何字符(包括半角的字母、數(shù)字、符號以及全角的漢字、符號)都是占用兩個字節(jié)的。因此,Len("1111徐")的返回值是5,表示5個字符,而LenB("1111徐")的返回值是10,表示占用10個字節(jié)。
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比寶山網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式寶山網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋寶山地區(qū)。費用合理售后完善,十載實體公司更值得信賴。
要想按ANSI編碼格式來獲取字符串的字節(jié)數(shù),必須這樣:
LenB(StrConv("1111徐", vbFromUnicode))
要注意哦,雖然返回值是6,但這個數(shù)與這個字符串在內(nèi)存中的實際占用字節(jié)數(shù)是不相符的哦!
1、字節(jié)數(shù)組轉(zhuǎn)換為字符串
byte[] byBuffer = new byte[20];
String strRead = new String(byBuffer);
strRead = String.copyValueOf(strRead.toCharArray(), 0, byBuffer.length]);
2、字符串轉(zhuǎn)換成字節(jié)數(shù)組
byte[] byBuffer = new byte[200];
String strInput=abcdefg;
byBuffer= strInput.getBytes();
注意:如果字符串里面含有中文,要特別注意,在android系統(tǒng)下,默認(rèn)是UTF8編碼,一個中文字符相當(dāng)于3個字節(jié),只有g(shù)b2312下一個中文相當(dāng)于2字節(jié)。這種情況下可采取以下辦法:
VB.NET數(shù)據(jù)類型VB.NET中有12種不同的數(shù)據(jù)類型,可以分成三類:數(shù)值類型、文本類型和混合類型。數(shù)值類型是VB.NET數(shù)據(jù)類型的主要類型,共7種。數(shù)值類型的數(shù)據(jù)類型見下表。 數(shù)據(jù)類型表示方式取 值 范 圍說 明整型Integer–2147483648~2147483647用于表示簡單整數(shù)字節(jié)型Byte0~255用于簡單算術(shù)運算。由于這個類型的變量可以在一個字節(jié)中存儲,所以運算速度最快短整型Short–32768~32767是整型的一種形式,相對表示范圍較小長整型Long–9223372036854775808~9223372036854775807是整型的一種形式,相對表示范圍較大單精
度型Single–3.402823E38~–1.401298E-45(對于負(fù)數(shù))和1.401298E-45~3.402823E38(對于正數(shù))用于存放單精度浮點數(shù)雙精
度型Double–1.79869313486232E308~–4.94065645841247E-324(對于負(fù)數(shù))和4.94065645841247E-324~1.79869313486232E308(對于正數(shù))用于存放雙精度浮點數(shù)小數(shù)Decimal當(dāng)小數(shù)位為0的時候,為–79228162514264337593543950335~
79228162514264337593543950335;當(dāng)小數(shù)位為28的時候,為–7.9228162514264337593543950335~
7.9228162514264337593543950335常用于存儲貨幣值 數(shù)值類型的數(shù)據(jù)類型 用于存放文本的數(shù)據(jù)類型有兩個。文本類型的VB.NET數(shù)據(jù)類型見下表。 數(shù) 據(jù) 類 型表 示 方 式說 明字符串型String用于存放任何形式的字符串,包括一個字符或者多行字符字符型Char用于存放一個字符,它以0~65535之間數(shù)字的形式存儲文本類型的數(shù)據(jù)類型 其中需要說明的是: (1) 對于String類型,可以存放任何形式的字符串,它可以是純粹的文本,也可以是文本和數(shù)字的組合或者是數(shù)字、日期等。例如"This is a book. "和"12345"都是字符串。對于字符串類型的數(shù)據(jù),可以進(jìn)行相關(guān)的字符串操作,例如連接、截斷等。 (2) 對于Char類型,可以存儲的只是一個字符,注意,這個字符的存儲編碼必需是一個數(shù)字。在計算機(jī)系統(tǒng)中,可以顯示很多符號(不僅僅是英文字母),為了能夠正確地顯示,國際上有通用的標(biāo)準(zhǔn)(例如Unicode編碼),為每個字符設(shè)定了一個標(biāo)準(zhǔn)的數(shù)值來表示這個字符。其余的數(shù)據(jù)類型還有:Date數(shù)據(jù)類型、布爾數(shù)據(jù)類型和Object數(shù)據(jù)類型,其說明見下表。 數(shù) 據(jù) 類 型表 示 方 式說 明日期型Date必須用mm/dd/yyyy的格式表示,也可以存儲時間(可以存儲00:00:00~23:59:59之間的任何時間)布爾型Boolean取值為True和False對象型Object 其他數(shù)據(jù)類型 其中需要說明的是:在VB.NET中,對于Boolean類型的數(shù)據(jù),當(dāng)需要把布爾類型的值轉(zhuǎn)換為數(shù)值類型的時候,會把True當(dāng)成1來處理,把False當(dāng)作0來處理。當(dāng)需要把VB.NET數(shù)值類型的值轉(zhuǎn)換為布爾類型的時候,會把0轉(zhuǎn)換為False,而把其他的非0數(shù)值轉(zhuǎn)換為True。
1. 什么是類和對象?
答:類包含某一類對象的數(shù)據(jù)和過程。對象是類的實例。
2. 為什么采用類和對象進(jìn)行程序設(shè)計?
答:以便按照對象定義類,提高程序代碼的可重用性,避免重復(fù)勞動。
3. 在同一個類中,應(yīng)當(dāng)包括哪些對象的屬性和方法?
答:同一類對象的數(shù)據(jù)和過程。
4. VB程序設(shè)計主要包括哪兩個方面的內(nèi)容?
答:Windows應(yīng)用程序界面和代碼。
5. 什么是事件驅(qū)動?
答:根據(jù)事件轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理過程。
1. 控件是窗體上的 對象 。
2. Visual Basic具有 BASIC程序語言簡單易學(xué)的 優(yōu)點,新增了 可視化和面向面向?qū)ο蟪绦蛟O(shè)計的 熱點,是 Windows編程人員廣泛使用的編程 工具。
3. 對象的 屬性 是在其類中定義的數(shù)據(jù)。
4. 對象的 方法 是在其類中定義的過程。
5. 對象本身的動作或功能稱為 方法 ,外界施加于某對象的動作或操作稱為 事件 。
1.面向過程
是指從功能的角度分析問題,將待解決的問題空間分解成若干個功能模塊,每個功能模塊描述一個操作的具體過程。
2.面向過程程序設(shè)計
主要是根據(jù)事務(wù)本身的邏輯過程進(jìn)行編程的一種方法。
3.面向?qū)ο蟪绦蛟O(shè)計
是一種計算機(jī)編程架構(gòu),是由單個能夠起到子程序作用的單元或?qū)ο蠼M合而成。即按照對象編寫程序。
4.事件驅(qū)動程序設(shè)計
是一種電腦程式設(shè)計模型。這種模型的程式執(zhí)行流程是由使用者的動作或者是由其他程式的訊息來決定的。
5.函數(shù)
是一種特定的運算,在程序中使用一個函數(shù)時,只要給出函數(shù)名并給出一個或多個參數(shù),就能得到它的函數(shù)值
6.過程
是程序中可以執(zhí)行的一段代碼,過程包含在一個聲明語句和一個結(jié)束語句之間
7.類
是所有具有共同特征的事物的抽象,是一個抽象的概念(類是一組具有相同屬性特征的對象的抽象描述,是面向?qū)ο蟪绦蛟O(shè)計的又一個核心概念或者類是對一組對象共同具有的屬性和行為的抽象,具有封裝和隱藏性、還具有繼承性)。
8.對象
是一個屬性集合及其操作的封裝體(對象是用來描述現(xiàn)實世界中客體的部件,是面向?qū)ο筌浖到y(tǒng)在運行時刻的基本單位)。
類是對象的抽象,對象是類的實例。
9.事件
窗體或控件識別的動作
10.事件驅(qū)動
根據(jù)事件轉(zhuǎn)去執(zhí)行相應(yīng)的事件處理過程。
11.屬性
是一個對象的特性,不同的對象有不同的屬性
12.算法
指解決某個問題的嚴(yán)格方法,描述有始有終的計算過程。
5.屬性窗口中屬性值被設(shè)置的方式有哪幾種?
6種:輸入 選取 瀏覽 賦值 默認(rèn) 拖動
1.程序代碼是由一行一行的 語句 所組成。
3.在程序代碼中可將一個語句分成兩段的特殊符號為( _ )。
5.數(shù)值變量如果沒有設(shè)置初值,則內(nèi)定值為 0 。
7.如果有一個變量,可能會存放數(shù)值數(shù)據(jù)或字符串?dāng)?shù)據(jù),此時可以聲明該變量為 對象變量。
9. Integer數(shù)據(jù)類型占 4 bytes的內(nèi)存空間,可以表示的數(shù)值范圍為 -2,147,483,648~2,147,483,647 的整數(shù)
3.VB.NET程序語言數(shù)據(jù)類型的種類有哪些?
(1)數(shù)值型
①整形數(shù):短整形(Short)、整形(Integer)、長整型(Long)
②字節(jié)型(Byte)
③實型數(shù):單精度型(Single)、雙精度型(Double)
④貨幣型(Decimal)
(2)字符型(Char)和字符串型(String)
(3)邏輯型/布爾型(Boolean)
(4)日期型(Date)
(5)對象型(Object)[即可變型(Variant)]
1.局部變量、全局變量、跨模塊變量分別在何處聲明?其生存期分別是多少?
局部變量在程序內(nèi)聲明。生存期為從所在的程序運行開始到程序結(jié)束。
全局變量在窗體內(nèi)所有程序的外邊聲明。生存期為由該變量聲明開始,一直到程序退出運行為止。
跨模塊變量在一般模塊的聲明區(qū)用Public來聲明。生存期為從一個Windows應(yīng)用程序項目文件開始運行到結(jié)束。
3.什么是靜態(tài)變量?
靜態(tài)變量是在離開程序時能夠繼續(xù)保留目前的值,待下回進(jìn)入該程序時能夠繼續(xù)保留的變量值的局部變量,用Static關(guān)鍵字聲明。
(一)問答題
1.請簡單說明在程序中使用程序的好處。
(1)程序可以重復(fù)使用,以方便維護(hù)與程序調(diào)試。
(2)程序可以讓其他工程或項目使用。
(3)程序的邏輯簡單、明確,可以讓程序變得簡單且可讀性高。
(4)程序具有模塊化的功能,因此可以將一個大的應(yīng)用程序分成數(shù)個小的且不同功能的程序,讓不同的程序設(shè)計師分別編寫?yīng)毩⒉煌δ艿某绦颍⒁詧F(tuán)隊開發(fā),加快應(yīng)用程序開發(fā)的時間。
3.試比較傳值調(diào)用與傳址調(diào)用的差異。
(1)聲明方式不同:
傳值——在程序中的虛自變量之前加上ByVal
傳址——在程序中的虛自變量之前加上ByRef
(2)占用內(nèi)存不同
傳值——調(diào)用程序的實自變量與被調(diào)用程序的虛自變量占用不同內(nèi)存
傳址——調(diào)用程序的實自變量與被調(diào)用程序的虛自變量占用同一地址的內(nèi)存,也就是說,在做參數(shù)傳遞時,調(diào)用程序中的實自變量是將自己本身的內(nèi)存地址傳給被調(diào)用程序的虛自變量
(3)虛自變量更改結(jié)果不同
傳值——使用傳值調(diào)用可以防止變量被程序修改
傳址——被調(diào)用程序可以通過虛自變量將值傳回給調(diào)用程序
5.什么是程序多載?
程序多載是使用不同的自變量串行或數(shù)據(jù)類型來加以區(qū)分相同名稱的程序。