# Ruby 數據類型
> 原文: [https://zetcode.com/lang/rubytutorial/datatypes/](https://zetcode.com/lang/rubytutorial/datatypes/)
在 Ruby 教程的這一部分中,我們將討論數據類型。
各種計算機程序(包括電子表格,文本編輯器,計算器和聊天客戶端)都可以處理數據。 用于各種數據類型的工具是現代計算機語言的基本組成部分。 數據類型是一組值,以及對這些值的允許操作。
## Ruby 數據類型列表
Ruby 有幾種數據類型。 所有數據類型均基于類。 以下是 Ruby 識別的數據類型:
* 布爾值
* 符號
* 數字
* 字符串
* 數組
* 哈希
在以下示例中,我們具有所有重要的 Ruby 數據類型。
```ruby
#!/usr/bin/ruby
h = { :name => "Jane", :age => 17 }
p true.class, false.class
p "Ruby".class
p 1.class
p 4.5.class
p 3_463_456_457.class
p :age.class
p [1, 2, 3].class
p h.class
```
我們打印他們的類名稱。 一個類是從每個對象創建的模板。
```ruby
p true.class, false.class
```
布爾值由`true`和`false`對象表示。
```ruby
p "Ruby".class
```
這是字符串。
```ruby
p 1.class
p 4.5.class
p 3_463_456_457.class
```
這些是數字。
```ruby
p :age.class
```
這是一個符號,一種特定于 Ruby 的數據類型。
```ruby
p [1, 2, 3].class
p h.class
```
這是兩個容器,數組和哈希。
```ruby
$ ./types.rb
TrueClass
FalseClass
String
Fixnum
Float
Bignum
Symbol
Array
Hash
```
該程序列出了屬于 Ruby 數據類型的類。
## Ruby 布爾值
我們的世界建立了雙重性。 有天與地,水與火,陰與陽,男人與女人,愛與恨。 這就是我們生存的“布爾”性質。 在 Ruby 中,布爾數據類型可以具有兩個值之一:`true`或`false`。 布爾是一種基本的數據類型:在計算機程序中非常常見的一種。
快樂的父母正在等待孩子的出生。 他們為兩種可能性都選擇了名稱。 如果要成為男孩,他們選擇了約翰。 如果要成為女孩,他們會選擇維多利亞。
```ruby
#!/usr/bin/ruby
# kid.rb
bool = [true, false]
male = bool[rand(2)]
if male
puts "We will use name John"
else
puts "We will use name Victoria"
end
```
該程序使用隨機數生成器來模擬我們的情況。
```ruby
bool = [true, false]
```
我們有一個`bool`變量。 它是兩個布爾值的數組。 用方括號創建一個數組。
```ruby
male = bool[rand(2)]
```
我們使用`rand()`方法創建一個隨機數。 該方法返回 0 或 1。返回的數字是`bool`數組的索引。
```ruby
if male
puts "We will use name John"
else
puts "We will use name Victoria"
end
```
根據公變量,我們打印一條消息。 如果將`male`變量設置為`true`,則選擇名稱 John。 否則,我們選擇名稱 Victoria。 諸如`if/else`語句之類的控制結構可使用布爾值。
```ruby
$ ./kid.rb
We will use name Victoria
$ ./kid.rb
We will use name Victoria
$ ./kid.rb
We will use name John
$ ./kid.rb
We will use name John
$ ./kid.rb
We will use name John
```
多次運行該程序。
## Ruby 符號
符號用于表示其他對象。 使用符號代替字符串可以節省一些資源。 符號是`Symbol`類的實例對象。 通過在標識符(如`:name`)之前使用冒號來生成符號。 幾個對象也具有`to_sym`方法。 這些方法將那些對象轉換為符號。
Ruby 符號不能在運行時更改。 Ruby 符號通常用作哈希鍵,因為我們不需要鍵的字符串對象的全部功能。
```ruby
#!/usr/bin/ruby
p :name
p :name.class
p :name.methods.size
p "Jane".methods.size
p :name.object_id
p :name.object_id
p "name".object_id
p "name".object_id
```
在第一個示例中,我們展示了一些使用 Ruby 符號的基本操作。
```ruby
p :name
p :name.class
```
我們將符號及其類輸出到控制臺。 符號的類別為`Symbol`。
```ruby
p :name.methods.size
p "Jane".methods.size
```
我們比較了與符號和字符串實例關聯的方法的數量。 字符串的方法數量是符號的兩倍以上。
```ruby
p :name.object_id
p :name.object_id
p "name".object_id
p "name".object_id
```
相同的符號具有相同的 ID。 相同的字符串具有不同的 ID。
```ruby
$ ./symbols.rb
:name
Symbol
79
162
10328
10328
77344750
77344730
```
樣本輸出。
符號可以用作標志。 在這種情況下也可以使用常量。 在 C/C++ 中,我們將使用枚舉。
```ruby
#!/usr/bin/ruby
light = :on
if light == :on
puts "The light is on"
else
puts "The light is off"
end
light = :off
if light == :on
puts "The light is on"
else
puts "The light is off"
end
```
指示燈點亮或熄滅。 對于這兩種狀態,我們都可以定義符號。
```ruby
light = :on
```
燈亮。
```ruby
if light == :on
puts "The light is on"
else
puts "The light is off"
end
```
程序的邏輯取決于`light`變量的狀態。
符號通常用作哈希容器中的鍵。 它們比字符串更有效。
```ruby
#!/usr/bin/ruby
domains = {:sk => "Slovakia", :no => "Norway", :hu => "Hungary"}
puts domains[:sk]
puts domains[:no]
puts domains[:hu]
```
在腳本中,我們有一個域哈希。 哈希中的鍵是符號。
```ruby
puts domains[:sk]
puts domains[:no]
puts domains[:hu]
```
鍵用于訪問哈希值。 在這里,我們打印哈希的三個值。
```ruby
$ ./symbols3.rb
Slovakia
Norway
Hungary
```
示例的輸出。
Ruby 解釋器在內部將一些引用存儲為符號。
```ruby
#!/usr/bin/ruby
class Being
def initialize
@is = true
end
def say
"I am being"
end
end
b = Being.new
p b.method :say
p b.instance_variable_get :@is
```
定義了`Being`類。 該類具有一個自定義實例變量`@is`和`say`方法。 這兩個實體由 Ruby 使用符號存儲。
```ruby
p b.method :say
```
`method`方法在`b`對象中查找具有給定名稱的接收器方法。 我們在尋找`:say`符號。
```ruby
p b.instance_variable_get :@is
```
我們使用`instance_variable_get`檢查`@is`是否是`b`對象的實例變量。 在內部,變量存儲為`:@is`符號。
```ruby
$ ./symbols4.rb
#<Method: Being#say>
true
```
生成的輸出。
所有符號都存儲在符號表中。 在下一個示例中,我們看一下表格。 `Symbol`類的`all_symbols`方法返回表中所有符號的數組。
```ruby
#!/usr/bin/ruby
def info
"info method"
end
@v = "Ruby"
@@n = "16"
p Symbol.all_symbols.include? :info
p Symbol.all_symbols.include? :@v
p Symbol.all_symbols.include? :@@n
```
在 Ruby 腳本中創建方法,實例變量和類變量。 我們檢查這些實體是否存儲在符號表中。
```ruby
p Symbol.all_symbols.include? :info
```
我們檢查`:info`符號是否在符號表中。 該行返回`true`。
```ruby
$ ./symbols5.rb
true
true
true
```
這三個符號都存在于 Ruby 符號表中。
## Ruby 整數
整數是實數的子集。 它們寫時沒有小數或小數部分。 整數屬于集合`Z = {..., -2, -1, 0, 1, 2, ......}`此集合是無限的。
在計算機語言中,整數是原始數據類型。 實際上,由于計算機的容量有限,因此計算機只能使用整數值的子集。 整數用于計算離散實體。 我們可以有 3、4 或 6 個人,但不能有 3.33 個人。 我們可以有 3.33 公斤。
整數是 Ruby 中`Fixnum`或`Bignum`類的實例對象。 與 Java 或 C 這樣的語言不同,Ruby 中的整數是對象。 這兩個類別的大小不同。 `Fixnum`數字是不超過一定限制的整數。 該限制取決于機器。 `Bignum`值保存`Fixnum`范圍之外的整數。 如果對`Fixnum`的任何操作超出其范圍,則該值將自動轉換為`Bignum`。 程序員通常不需要關心整數的類類型。
```ruby
#!/usr/bin/ruby
p -2
p 121
p 123265
p -34253464356
p 34867367893463476
p 1.class
p 23453246.class
p 234532423563456346.class
p 2345324235632363463456456346.class
p 5 / 2
p 5.div 2
```
在此示例中,我們處理整數。
```ruby
p -2
p 121
p 123265
p -34253464356
p 34867367893463476
```
這些是各種大小的正整數和負整數。
```ruby
p 1.class
p 23453246.class
p 234532423563456346.class
p 2345324235632363463456456346.class
```
我們打印這些整數的類。 前兩個整數是`Fixnum`類的實例。 另外兩個是`Bignum`類的實例。
```ruby
p 5 / 2
p 5.div 2
```
這兩行顯示整數除法。 當我們使用整數除法運算符/方法除以兩個整數時,結果也是一個整數。
```ruby
$ ./integers.rb
-2
121
123265
-34253464356
34867367893463476
Fixnum
Fixnum
Bignum
Bignum
2
2
```
示例的輸出。
可以在 Ruby 中使用不同的表示法指定整數:十進制,十六進制,八進制和二進制。 據我們所知,通常使用十進制數。 十六進制數字以`0x`字符開頭,八進制以`0`字符開頭,二進制以`0b`字符開頭。
```ruby
#!/usr/bin/ruby
puts 122
puts 0x7a
puts 0172
puts 0b1111010
```
在代碼示例中,我們以所有這些符號打印十進制 122。
```ruby
$ ./inotations.rb
122
122
122
122
```
示例的輸出。
如果我們使用整數,那么我們將處理離散實體。 我們將使用整數來計算蘋果。
```ruby
#!/usr/bin/ruby
baskets = 16
apples_in_basket = 24
total = baskets * apples_in_basket
puts "There are total of #{total} apples"
```
在我們的程序中,我們計算了蘋果的總量。 我們使用整數。
```ruby
$ ./apples.rb
There are total of 384 apples
```
程序的輸出。
大數字很難閱讀。 如果我們有一個像 245342395423452 這樣的數字,我們會發現很難快速閱讀。 在計算機外部,大數字之間用空格或逗號分隔。 為了提高可讀性,Ruby 允許整數包含下劃線。 Ruby 解釋器將忽略整數中的下劃線。
```ruby
#!/usr/bin/ruby
p 23482345629
p 23_482_345_629
p 23482345629 == 23_482_345_629
```
該示例演示了下劃線的用法。
```ruby
p 23482345629 == 23_482_345_629
```
此行表明兩個數字相等。 它打印真實。
```ruby
$ ./underscore.rb
23482345629
23482345629
true
```
示例輸出。
## Ruby 浮點數
浮點數表示計算中的實數。 實數測量連續的量,例如重量,高度或速度。 在 Ruby 中,十進制數字是`Float`或`BigDecimal`類的對象。 `BigDecimal`類是 Ruby 的核心類,是 Ruby 標準庫的一部分。 另外,我們也可以使用`Rational`對象。
我們需要了解十進制數字并不精確。 Ruby 的官方文檔明確指出,浮點對象表示不精確的實數。
```ruby
#!/usr/bin/ruby
p 15.4
p 0.3455
p -343.4563
p 12.5.class
p -12.5.class
p (5.0 / 2).class
p 5.fdiv 2
p 12.to_f
```
在上面的程序中,我們使用浮點值。
```ruby
p 15.4
p 0.3455
p -343.4563
```
在這里,我們打印三個十進制值。 小數點有小數點字符。
```ruby
p 12.5.class
p -12.5.class
p (5.0 / 2).class
```
上面的代碼行顯示了數字的類型。 全部都是花車。 至少在一個`Float`上應用整數除法也會產生`Float`。
```ruby
p 5.fdiv 2
p 12.to_f
```
在這里,我們通過使用浮點`fdiv`除法和轉換`to_f`方法來創建浮點值。
```ruby
$ ./decimals.rb
15.4
0.3455
-343.4563
Float
Float
Float
2.5
12.0
```
輸出。
默認情況下,顯示的十進制數字在小數點后最多 16 個數字。 我們可以使用`sprintf`或`printf`方法控制浮點值的格式。
```ruby
#!/usr/bin/ruby
p 1/3.0
p 1.fdiv 2
puts sprintf "%.4f" % (1/3.0)
puts sprintf "%.7f" % (5/3.0)
```
格式化十進制數字。
```ruby
p 1/3.0
p 13.fdiv 4
p 1.fdiv 2
```
第一行打印一個小數點后的 16 位。 第二行在該點之后打印兩個數字,第三行打印。
```ruby
puts sprintf "%.4f" % (1/3.0)
puts sprintf "%.7f" % (5/3.0)
```
在這里,我們使用`sprintf`方法控制小數點后的值數量。 `sprintf`方法的格式說明符存在精度。 它是`%`字符后的數字。 `f`是一個轉換說明符,表示我們正在處理浮點值。
```ruby
$ ./formatfloat.rb
0.3333333333333333
3.25
0.5
0.3333
1.6666667
```
Output.
Ruby 支持對浮點值使用科學計數法。 也稱為指數表示法,它是一種寫數字太大或太小而不能方便地用標準十進制表示法寫的方式。
```ruby
#!/usr/bin/ruby
p 1.2e-3
p 0.0012
p 1.5E-4
p 0.00015
```
該示例顯示了兩個用科學計數法表示的十進制數字。
```ruby
$ ./scientific.rb
0.0012
0.0012
0.00015
0.00015
```
這是上面程序的輸出。
如前所述,浮點值有些不準確。 對于許多計算,普通的浮點數足夠精確: 如果我們的體重是 60kg 或 60.000023kg,那不是很重要。 對于其他計算,包括許多科學和工程應用,精度至關重要。
Ruby 在標準庫中有一個`BigDecimal`。 此類為非常大或非常準確的浮點數提供任意精度。
```ruby
#!/usr/bin/ruby
require 'bigdecimal'
sum = 0
1000.times do
sum = sum + 0.0001
end
p sum
sum = BigDecimal.new("0")
1000.times do
sum = sum + BigDecimal.new("0.0001")
end
puts sum.to_s('F')
puts sum.to_s('E')
```
在這個簡單的示例中,我們比較了`Float`與`BigDecimal`的精度。
```ruby
require 'bigdecimal'
```
必須導入`BigDecimal`類。
```ruby
sum = 0
1000.times do
sum = sum + 0.0001
end
p sum
```
我們形成一個循環,在該循環中,我們將一個小的浮點值添加到`sum`變量中。 最后,將有一個小的誤差。
```ruby
sum = BigDecimal.new("0")
1000.times do
sum = sum + BigDecimal.new("0.0001")
end
```
我們使用`BigDecimal`值進行相同的循環。
```ruby
puts sum.to_s('F')
puts sum.to_s('E')
```
總和以浮點數和工程符號形式打印。
```ruby
$ ./bigdecimal.rb
0.10000000000000184
0.1
0.1E0
```
輸出顯示,使用`BigDecimal`進行的計算比使用`Floats`進行的計算更為精確。
假設一個短跑運動員跑了 1 個小時,跑了 9.87 秒。 他的公里/小時速度是多少?
```ruby
#!/usr/bin/ruby
distance = 0.1
time = 9.87 / 3600
speed = distance / time
puts "The average speed of a sprinter is #{speed} km/h"
```
在此示例中,必須使用浮點值。
```ruby
distance = 0.1
```
100m 是 0.1 公里。
```ruby
time = 9.87 / 3600
```
9.87s 是`9.87 / 60 * 60 h`
```ruby
speed = distance / time
```
為了獲得速度,我們將距離除以時間。
```ruby
$ ./speed.rb
The average speed of a sprinter is 36.4741641337386 km/h
```
這是`speed.rb`腳本的輸出。
## Ruby 有理數
Ruby 支持有理數。 有理數是精確數。 使用有理數可以避免舍入誤差。 在 Ruby 中,有理數是`Rational`類的對象。 我們可以使用特殊的`to_r`方法從某些對象創建有理數。
有理數是可以表示為兩個整數`a / b`的分數的任何數字,其中`b != 0`。 由于`b`可以等于 1,所以每個整數都是有理數。
```ruby
#!/usr/bin/ruby
puts 2.to_r
puts "23".to_r
puts 2.6.to_r
p Rational 0
p Rational 1/5.0
p Rational 0.5
```
此示例顯示了一些有理數。
```ruby
puts 2.to_r
```
在這里,我們使用`to_r`方法將 2 整數轉換為`2 / 1`有理數。
```ruby
p Rational 0.5
```
我們使用`Rational`類創建一個有理數。
```ruby
$ ./rational.rb
2/1
23/1
5854679515581645/2251799813685248
(0/1)
(3602879701896397/18014398509481984)
(1/2)
```
Output of the example.
## Ruby `nil`值
Ruby 具有特殊值`nil`。 這是沒有值的。 `nil`是`NilClass`的單例對象。 只有一個`nil`; 我們不能再擁有更多了。
```ruby
#!/usr/bin/ruby
puts nil
p nil
p $val
p [1, 2, 3][4]
p $val1 == $val2
```
`nil`值的示例。
```ruby
puts nil
p nil
```
我們將`nil`值打印到控制臺。 `puts`方法打印一個空字符串; `p`方法顯示'nil'字符串。
```ruby
p $val
```
當我們引用一個未設置的全局變量時,我們得到`nil`值。
```ruby
p [1, 2, 3][3]
```
在此代碼行中,我們引用三元素數組的第四個元素。 我們得到`nil`。 Ruby 中的許多方法都會為無效值返回`nil`。
```ruby
p $val1 == $val2
```
該行返回`true`。 這是由于`nil`值是`NilClass`的單例對象這一事實的結果。
```ruby
$ ./nilvalue.rb
nil
nil
nil
true
```
Output.
## Ruby 字符串
字符串是表示計算機程序中文本數據的數據類型。 Ruby 字符串是 unicode 字符的序列。 字符串是`String`的實例。 字符串字面值是用雙或單引號括起來的字符。
字符串是非常重要的數據類型。 它值得一章。 這里我們僅舉一個小例子。
```ruby
#!/usr/bin/ruby
p "Ruby"
p 'Python'
p "Ruby".size
p "Ruby".upcase
p 23.to_s
```
在此程序中,我們使用 Ruby 字符串。 我們使用`p`方法進行打印,因為我們在輸出中看到了數據類型。
```ruby
p "Ruby"
p 'Python'
```
我們在終端上打印兩個字符串字面值。 第一個字面值用雙引號括起來,第二個字面值用單引號括起來。
```ruby
p "Ruby".size
p "Ruby".upcase
```
這兩行調用兩個字符串方法。 `size`方法返回字符串的大小:在本例中為 4 個字符。 `upcase`以大寫字母返回字符串。
```ruby
p 23.to_s
```
`to_s`方法將整數轉換為字符串。
```ruby
$ ./strings.rb
"Ruby"
"Python"
4
"RUBY"
"23"
```
在輸出中,我們看到用引號引起來的字符串。 這是使用`p`方法的結果。 `print`和`puts`方法不這樣做。
## Ruby 數組和哈希
數組和哈希是對象的集合。 他們將對象分組到一個位置。
數組是對象的有序集合。 哈希是鍵值對的集合。 我們將只有一章介紹數組和哈希。 以下示例僅簡要介紹了這兩個容器。
```ruby
#!/usr/bin/ruby
nums = [1, 2, 3, 4]
puts "There are #{nums.size} items in the array"
nums.each do |num|
puts num
end
domains = { :de => "Germany", :sk => "Slovakia",
:us => "United States", :no => "Norway" }
puts domains.keys
puts domains.values
```
這是一個有關 Ruby 數組和哈希的快速示例。
```ruby
nums = [1, 2, 3, 4]
puts "There are #{nums.size} items in the array"
nums.each do |num|
puts num
end
```
這些行創建一個包含 4 個項目的數組。 在第二行中,我們計算數組的項并將其合并到消息中。 稍后,我們使用`each`方法遍歷數組,并將每個元素打印到控制臺。
```ruby
domains = { :de => "Germany", :sk => "Slovakia",
:us => "United States", :no => "Norway" }
puts domains.keys
puts domains.values
```
在這里,我們創建一個 Ruby 哈希。 然后我們打印其鍵和值。
```ruby
$ ./arrayshashes.rb
There are 4 items in the array
1
2
3
4
de
sk
us
no
Germany
Slovakia
United States
Norway
```
Example output.
## Ruby 轉換
我們經常一次處理多種數據類型。 將一種數據類型轉換為另一種數據類型是編程中的常見工作。 類型轉換或類型轉換是指將一種數據類型的實體更改為另一種。 有兩種轉換類型:隱式轉換和顯式轉換。 隱式類型轉換,也稱為強制轉換,是編譯器自動進行的類型轉換。 Ruby 只有顯式轉換。
Ruby 具有內置的轉換方法,例如`to_i`,`to_s`或`to_f`。 `Kernel`模塊具有一些進行轉換的公共方法,例如`Integer`,`String`或`Float`。 這些方法不應與 Ruby 類混淆。
```ruby
#!/usr/bin/ruby
p Array(1..6)
p Complex 6
p Float 12
p Integer "34"
p Rational 6
p String 22
```
這里我們展示`Kernel`轉換方法。
```ruby
$ ./convertmethods.rb
[1, 2, 3, 4, 5, 6]
(6+0i)
12.0
34
(6/1)
"22"
```
Output of the example.
```ruby
#!/usr/bin/ruby
p "12".to_i
p 12.5.to_i
p nil.to_i
p 12.to_f
p "11".to_f
p nil.to_f
```
在上面的示例中,我們顯示了一些數值轉換。 某些 Ruby 對象具有`to_i`和`to_f`方法,分別將對象轉換為整數和浮點數。
```ruby
p "12".to_i
p 12.5.to_i
p nil.to_i
```
在此代碼中,我們將字符串,十進制和`nil`轉換為整數類型。
```ruby
p 12.to_f
p "11".to_f
p nil.to_f
```
這三行將整數,字符串和`nil`轉換為十進制數據類型的對象。
```ruby
$ ./conversions.rb
12
12
0
12.0
11.0
0.0
```
Example output.
第二個示例顯示了一些字符串轉換。
```ruby
#!/usr/bin/ruby
p "12".to_i
p "13".to_f
p "12".to_r
p "13".to_c
p "Jane".to_sym
v = "Ruby Python Tcl PHP Perl".split
p v.class
```
在上面的示例中,我們將字符串轉換為不同數據類型的對象。
```ruby
p "12".to_i
p "13".to_f
p "12".to_r
p "13".to_c
```
在這里,字符串將轉換為整數,十進制,有理數和復數。
```ruby
p "Jane".to_sym
```
字符串成為符號。
```ruby
v = "Ruby Python Tcl PHP Perl".split
p v.class
```
在這里,我們使用`String`類的`split`方法將字符串轉換為數組。
```ruby
$ ./stringconv.rb
12
13.0
(12/1)
(13+0i)
:Jane
Array
```
這就是我們得到的。
下一個小示例顯示了數組哈希轉換。
```ruby
#!/usr/bin/ruby
h = {:de => "Germany", :sk => "Slovakia"}
p h.to_a
a = [:de, "Germany", :sk, "Slovakia",
:hu, "Hungary", :no, "Norway"]
p Hash[*a]
```
在示例代碼中,我們創建了一個哈希并將其隱秘到數組中。 然后,我們創建一個數組并將其轉換為哈希。
```ruby
h = {:de => "Germany", :sk => "Slovakia"}
p h.to_a
```
使用`to_a`方法創建哈希并將其轉換為數組。
```ruby
a = [:de, "Germany", :sk, "Slovakia",
:hu, "Hungary", :no, "Norway"]
p Hash[*a]
```
創建一個數組并將其轉換為哈希。 在此上下文中,星號是拆分運算符。 這是從 Perl 提取的 Ruby 慣用語之一。 它將數組拆分為幾個變量。
```ruby
$ ./h2a.rb
[[:de, "Germany"], [:sk, "Slovakia"]]
{:de=>"Germany", :sk=>"Slovakia", :hu=>"Hungary", :no=>"Norway"}
```
Output of the example.
在 Ruby 教程的這一部分中,我們介紹了數據類型及其轉換。
- ZetCode 數據庫教程
- MySQL 教程
- MySQL 簡介
- MySQL 安裝
- MySQL 的第一步
- MySQL 快速教程
- MySQL 存儲引擎
- MySQL 數據類型
- 在 MySQL 中創建,更改和刪除表
- MySQL 表達式
- 在 MySQL 中插入,更新和刪除數據
- MySQL 中的SELECT語句
- MySQL 子查詢
- MySQL 約束
- 在 MySQL 中導出和導入數據
- 在 MySQL 中連接表
- MySQL 函數
- MySQL 中的視圖
- MySQL 中的事務
- MySQL 存儲過程
- MySQL Python 教程
- MySQL Perl 教程
- MySQL & Perl DBI
- 使用 Perl 連接到 MySQL 數據庫
- MySQL 中的 Perl 錯誤處理
- 使用 Perl 進行 MySQL 查詢
- 在 MySQL 中使用 Perl 綁定參數&列
- 在 MySQL 中使用 Perl 處理圖像
- 使用 Perl 獲取 MySQL 元數據
- Perl 的 MySQL 事務
- MySQL C API 編程教程
- MySQL Visual Basic 教程
- MySQL PHP 教程
- MySQL Java 教程
- MySQL Ruby 教程
- MySQL C# 教程
- SQLite 教程
- SQLite 簡介
- sqlite3 命令行工具
- 在 SQLite 中創建,刪除和更改表
- SQLite 表達式
- SQLite 插入,更新,刪除數據
- SQLite SELECT語句
- SQLite 約束
- SQLite 連接表
- SQLite 函數
- SQLite 視圖,觸發器,事務
- SQLite C 教程
- SQLite Python 教程
- SQLite Perl 教程
- Perl DBI
- 使用 Perl 連接到 SQLite 數據庫
- SQLite Perl 錯誤處理
- 使用 Perl 的 SQLite 查詢
- 使用 Perl 綁定 SQLite 參數&列
- 使用 Perl 在 SQLite 中處理圖像
- 使用 Perl 獲取 SQLite 元數據
- 使用 Perl 進行 SQLite 事務
- SQLite Ruby 教程
- 連接到 SQLite 數據庫
- 在 SQLite 中使用 Ruby 進行 SQL 查詢
- 綁定參數
- 處理圖像
- 使用 Ruby 獲取 SQLite 元數據
- Ruby 的 SQLite 事務
- SQLite C# 教程
- SQLite C# 簡介
- 使用SqliteDataReader檢索數據
- ADO.NET 數據集
- 使用 C# 在 SQLite 中處理圖像
- 使用 C# 獲取 SQLite 元數據
- 使用 C# 的 SQLite 事務
- SQLite Visual Basic 教程
- SQLite Visual Basic 簡介
- 使用SqliteDataReader檢索數據
- ADO.NET 的數據集
- 使用 Visual Basic 在 SQLite 中處理圖像
- 使用 Visual Basic 獲取 SQLite 元數據
- 使用 Visual Basic 的 SQLite 事務
- PostgreSQL C 教程
- PostgreSQL Ruby 教程
- PostgreSQL PHP 教程
- PostgreSQL PHP 編程簡介
- 在 PostgreSQL 中使用 PHP 檢索數據
- 在 PostgreSQL 中使用 PHP 處理圖像
- 用 PHP 獲取 PostgreSQL 元數據
- 在 PostgreSQL 中使用 PHP 進行事務
- PostgreSQL Java 教程
- Apache Derby 教程
- Derby 簡介
- Derby 的安裝&配置
- Derby 工具
- ij 工具
- Derby 中的 SQL 查詢
- 在 Derby 中使用 JDBC 進行編程
- Derby 安全
- 使用 Derby & Apache Tomcat
- NetBeans 和 Derby
- SQLAlchemy 教程
- SQLAlchemy 簡介
- 原始 SQL
- 模式定義語言
- SQL 表達式語言
- SQLAlchemy 中的對象關系映射器
- MongoDB PHP 教程
- MongoDB JavaScript 教程
- MongoDB Ruby 教程
- Spring JdbcTemplate 教程
- JDBI 教程
- MyBatis 教程
- Hibernate Derby 教程
- ZetCode .NET 教程
- Visual Basic 教程
- Visual Basic
- Visual Basic 語法結構
- 基本概念
- Visual Basic 數據類型
- Visual Basic 中的字符串
- 運算符
- 控制流
- Visual Basic 數組
- Visual Basic 中的過程&函數
- 在 Visual Basic 中組織代碼
- 面向對象編程
- Visual Basic 中的面向對象編程 II
- Visual Basic 中的集合
- 輸入和輸出
- C# 教程
- C# 語言
- C# 語法結構
- C# 基礎
- C# 數據類型
- C# 中的字符串
- C# 運算符
- C# 中的流控制
- C# 數組
- C# 面向對象編程
- C# 中的方法
- C# 面向對象編程 II
- C# 屬性
- C# 結構
- C# 委托
- 命名空間
- C# 集合
- C# 輸入和輸出
- C# 目錄教程
- C# 字典教程
- 在 C# 中讀取文本文件
- C# 中的日期和時間
- 在 C# 中讀取網頁
- C# HttpClient教程
- ASP.NET Core 教程
- ZetCode 圖形教程
- Java 2D 游戲教程
- Java 游戲基礎
- 動畫
- 移動精靈
- 碰撞檢測
- Java 益智游戲
- Java Snake
- Breakout 游戲
- Java 俄羅斯方塊
- Java 吃豆人
- Java 太空侵略者
- Java 掃雷
- Java 推箱子
- Java 2D 教程
- 介紹
- 基本繪圖
- 形狀和填充
- 透明度
- 合成
- 剪裁
- 變換
- 特效
- 圖像
- 文字和字體
- 命中測試,移動物體
- 俄羅斯方塊
- Cario 圖形教程
- Cario 圖形庫
- Cario 定義
- Cairo 后端
- Cairo 基本圖形
- 形狀和填充
- 漸變
- 透明度
- 合成
- 剪裁和遮罩
- 變換
- Cairo 文字
- Cairo 中的圖像
- 根窗口
- PyCairo 教程
- PyCairo 簡介
- PyCairo 后端
- PyCairo 中的基本繪圖
- PyCairo 形狀和填充
- PyCairo 漸變
- PyCairo 剪裁&遮罩
- PyCairo 的透明度
- PyCairo 中的變換
- PyCairo 中的文字
- PyCairo 中的圖像
- 根窗口
- HTML5 畫布教程
- 介紹
- HTML5 畫布中的直線
- HTML5 畫布形狀
- HTML5 畫布填充
- HTML5 畫布中的透明度
- HTML5 畫布合成
- HTML5 canvas 中的變換
- HTML5 畫布中的文字
- HTML5 畫布中的動畫
- HTML5 畫布中的 Snake
- ZetCode GUI 教程
- Windows API 教程
- Windows API 簡介
- Windows API main函數
- Windows API 中的系統函數
- Windows API 中的字符串
- Windows API 中的日期和時間
- Windows API 中的一個窗口
- UI 的第一步
- Windows API 菜單
- Windows API 對話框
- Windows API 控件 I
- Windows API 控件 II
- Windows API 控件 III
- Windows API 中的高級控件
- Windows API 中的自定義控件
- Windows API 中的 GDI
- PyQt4 教程
- PyQt4 簡介
- PyQt4 中的第一個程序
- PyQt4 中的菜單和工具欄
- PyQt4 中的布局管理
- PyQt4 中的事件和信號
- PyQt4 中的對話框
- PyQt4 小部件
- PyQt4 小部件 II
- PyQt4 中的拖放
- PyQt4 中的繪圖
- PyQt4 中的自定義小部件
- PyQt4 中的俄羅斯方塊游戲
- PyQt5 教程
- PyQt5 簡介
- PyQt5 日期和時間
- PyQt5 中的第一個程序
- PyQt5 中的菜單和工具欄
- PyQt5 中的布局管理
- PyQt5 中的事件和信號
- PyQt5 中的對話框
- PyQt5 小部件
- PyQt5 小部件 II
- PyQt5 拖放
- PyQt5 中的繪圖
- PyQt5 中的自定義小部件
- PyQt5 中的俄羅斯方塊
- Qt4 教程
- Qt4 工具包簡介
- Qt4 工具類
- Qt4 中的字符串
- Qt4 中的日期和時間
- 在 Qt4 中使用文件和目錄
- Qt4 中的第一個程序
- Qt4 中的菜單和工具欄
- Qt4 中的布局管理
- Qt4 中的事件和信號
- Qt4 小部件
- Qt4 小部件 II
- Qt4 中的繪圖
- Qt4 中的自定義小部件
- Qt4 中的打磚塊游戲
- Qt5 教程
- Qt5 工具包簡介
- Qt5 中的字符串
- Qt5 中的日期和時間
- Qt5 中的容器
- 在 Qt5 中處理文件和目錄
- Qt5 中的第一個程序
- Qt5 中的菜單和工具欄
- Qt5 中的布局管理
- Qt5 中的事件和信號
- Qt5 小部件
- Qt5 小部件 II
- Qt5 中的繪圖
- Qt5 中的自定義小部件
- Qt5 中的貪食蛇
- Qt5 中的打磚塊游戲
- PySide 教程
- PySide 工具包簡介
- PySide 中的第一個程序
- PySide 中的菜單和工具欄
- PySide 中的布局管理
- PySide 中的事件和信號
- PySide 中的對話框
- PySide 小部件
- PySide 小部件 II
- 在 PySide 中拖放
- 在 PySide 中繪圖
- PySide 中的自定義小部件
- PySide 中的俄羅斯方塊游戲
- Tkinter 教程
- Tkinter 簡介
- Tkinter 中的布局管理
- Tkinter 標準小部件屬性
- Tkinter 小部件
- Tkinter 中的菜單和工具欄
- Tkinter 中的對話框
- Tkinter 中的繪圖
- Tkinter 中的貪食蛇
- Tcl/Tk 教程
- Tcl/Tk 簡介
- Tcl/Tk 中的布局管理
- Tcl/Tk 小部件
- Tcl/Tk 中的菜單和工具欄
- Tcl/Tk 中的對話框
- Tcl/Tk 繪圖
- 貪食蛇
- Qt 快速教程
- Java Swing 教程
- Java Swing 簡介
- Java Swing 首個程序
- Java Swing 中的菜單和工具欄
- Swing 布局管理
- GroupLayout管理器
- Java Swing 事件
- 基本的 Swing 組件
- 基本的 Swing 組件 II
- Java Swing 對話框
- Java Swing 模型架構
- Swing 中的拖放
- Swing 中的繪圖
- Java Swing 中的可調整大小的組件
- Java Swing 中的益智游戲
- 俄羅斯方塊
- JavaFX 教程
- JavaFX 簡介
- JavaFX 首個程序
- JavaFX 布局窗格
- 基本的 JavaFX 控件
- 基本 JavaFX 控件 II
- JavaFX 事件
- JavaFX 效果
- JavaFX 動畫
- JavaFX 畫布
- JavaFX 圖表
- Java SWT 教程
- Java SWT 簡介
- Java SWT 中的布局管理
- Java SWT 中的菜單和工具欄
- Java SWT 中的小部件
- Table小部件
- Java SWT 中的對話框
- Java SWT 繪圖
- Java SWT 中的貪食蛇
- wxWidgets 教程
- wxWidgets 簡介
- wxWidgets 助手類
- wxWidgets 中的第一個程序
- wxWidgets 中的菜單和工具欄
- wxWidgets 中的布局管理
- wxWidgets 中的事件
- wxWidgets 中的對話框
- wxWidgets 小部件
- wxWidgets 小部件 II
- wxWidgets 中的拖放
- wxWidgets 中的設備上下文
- wxWidgets 中的自定義小部件
- wxWidgets 中的俄羅斯方塊游戲
- wxPython 教程
- wxPython 簡介
- 第一步
- 菜單和工具欄
- wxPython 中的布局管理
- wxPython 中的事件
- wxPython 對話框
- 小部件
- wxPython 中的高級小部件
- wxPython 中的拖放
- wxPython 圖形
- 創建自定義小部件
- wxPython 中的應用框架
- wxPython 中的俄羅斯方塊游戲
- C# Winforms Mono 教程
- Mono Winforms 簡介
- Mono Winforms 中的第一步
- Mono Winforms 中的布局管理
- Mono Winforms 中的菜單和工具欄
- Mono Winforms 中的基本控件
- Mono Winforms 中的高級控件
- 對話框
- Mono Winforms 中的拖放
- Mono Winforms 中的繪圖
- Mono Winforms 中的貪食蛇
- Java Gnome 教程
- Java Gnome 簡介
- Java Gnome 的第一步
- Java Gnome 中的布局管理
- Java Gnome 中的布局管理 II
- Java Gnome 中的菜單
- Java Gnome 中的工具欄
- Java Gnome 中的事件
- Java Gnome 中的小部件
- Java Gnome 中的小部件 II
- Java Gnome 中的高級小部件
- Java Gnome 中的對話框
- Java Gnome 中的 Pango
- 在 Java Gnome 中用 Cairo 繪圖
- Cario 繪圖 II
- Java Gnome 中的貪食蛇
- QtJambi 教程
- QtJambi 簡介
- QtJambi 中的布局管理
- QtJambi 中的小部件
- QtJambi 中的菜單和工具欄
- QtJambi 對話框
- QtJambi 中的繪圖
- QtJambi 中的自定義小部件
- 貪食蛇
- GTK+ 教程
- GTK+ 簡介
- GTK+ 中的第一個程序
- GTK+ 中的菜單和工具欄
- GTK+ 布局管理
- GTK+ 事件和信號
- GTK+ 對話框
- GTK+ 小部件
- GTK+ 小部件 II
- GtkTreeView小部件
- GtkTextView小部件
- 自定義 GTK+ 小部件
- Ruby GTK 教程
- Ruby GTK 簡介
- Ruby GTK 中的布局管理
- Ruby GTK 中的小部件
- Ruby GTK 中的菜單和工具欄
- Ruby GTK 中的對話框
- Ruby GTK Cario 繪圖
- Ruby GTK 中的自定義小部件
- Ruby GTK 中的貪食蛇
- GTK# 教程
- GTK# 簡介
- GTK 的第一步
- GTK# 中的布局管理
- GTK 中的菜單
- GTK# 中的工具欄
- GTK# 中的事件
- GTK# 中的小部件
- GTK 中的小部件 II
- GTK# 中的高級小部件
- GTK# 中的對話框
- Pango
- GTK# 中的 Cario 繪圖
- GTK# 中的 Cario 繪圖 II
- GTK# 中的自定義小部件
- Visual Basic GTK# 教程
- Visual Basic GTK# 簡介
- 布局管理
- 小部件
- 菜單和工具欄
- 對話框
- Cario 繪圖
- 自定義小部件
- 貪食蛇
- PyGTK 教程
- PyGTK 簡介
- PyGTK 的第一步
- PyGTK 中的布局管理
- PyGTK 中的菜單
- PyGTK 中的工具欄
- PyGTK 中的事件和信號
- PyGTK 中的小部件
- PyGTK 中的小部件 II
- PyGTK 中的高級小部件
- PyGTK 中的對話框
- Pango
- Pango II
- PyGTK 中的 Cario 繪圖
- Cario 繪圖 II
- PyGTK 中的貪食蛇游戲
- PyGTK 中的自定義小部件
- PHP GTK 教程
- PHP GTK 簡介
- PHP GTK 中的布局管理
- PHP GTK 中的小部件
- PHP GTK 中的菜單和工具欄
- 對話框
- Cario 繪圖
- 自定義小部件
- 貪食蛇
- C# Qyoto 教程
- Qyoto 介紹
- 布局管理
- Qyoto 中的小部件
- Qyoto 中的菜單和工具欄
- Qyoto 對話框
- Qyoto 中的繪圖
- Qyoto 中的繪圖 II
- Qyoto 中的自定義小部件
- 貪食蛇
- Ruby Qt 教程
- Ruby Qt 簡介
- Ruby Qt 中的布局管理
- Ruby Qt 中的小部件
- 菜單和工具欄
- Ruby Qt 中的對話框
- 用 Ruby Qt 繪圖
- Ruby Qt 中的自定義小部件
- Ruby Qt 中的貪食蛇
- Visual Basic Qyoto 教程
- Qyoto 介紹
- 布局管理
- Qyoto 中的小部件
- Qyoto 中的菜單和工具欄
- Qyoto 對話框
- Qyoto 中的繪圖
- Qyoto 中的自定義小部件
- 貪食蛇
- Mono IronPython Winforms 教程
- 介紹
- IronPython Mono Winforms 中的第一步
- 布局管理
- 菜單和工具欄
- Mono Winforms 中的基本控件
- Mono Winforms 中的基本控件 II
- Mono Winforms 中的高級控件
- 對話框
- Mono Winforms 中的拖放
- 繪圖
- IronPython Mono Winforms 中的繪圖 II
- IronPython Mono Winforms 中的貪食蛇
- IronPython Mono Winforms 中的俄羅斯方塊游戲
- FreeBASIC GTK 教程
- Jython Swing 教程
- Jython Swing 簡介
- Jython Swing 中的布局管理
- Jython Swing 中的組件
- Jython Swing 中的菜單和工具欄
- Jython Swing 中的對話框
- Jython Swing 中的繪圖
- Jython Swing 中的半字節
- JRuby Swing 教程
- JRuby Swing 簡介
- JRuby Swing 中的布局管理
- JRuby Swing 中的組件
- 菜單和工具欄
- JRuby Swing 中的對話框
- 在 JRuby Swing 中繪圖
- JRuby Swing 中的貪食蛇
- Visual Basic Winforms 教程
- Visual Basic Winforms 簡介
- 布局管理
- 基本控制
- 進階控件
- 菜單和工具欄
- 對話框
- 繪圖
- 拖放
- 貪食蛇
- JavaScript GTK 教程
- JavaScript GTK 簡介
- 布局管理
- JavaScript GTK 中的小部件
- JavaScript GTK 中的菜單和工具欄
- JavaScript GTK 中的對話框
- JavaScript GTK 中的 Cario 繪圖
- ZetCode Java 教程
- Java 教程
- Java 語言
- Java 語法結構
- Java 基礎
- Java 數據類型
- Java 數據類型 II
- Java 字符串
- Java 數組
- Java 表達式
- Java 控制流程
- Java 面向對象的編程
- Java 方法
- Java 面向對象編程 II
- Java 包
- Java 中的異常
- Java 集合
- Java 流
- Java Future 教程
- Java Comparable和Comparator
- Java DOM 教程
- Java MVC 教程
- Java SAX 教程
- Java JAXB 教程
- Java JSON 處理教程
- Java H2 教程
- MongoDB Java 教程
- Java 正則表達式教程
- Java PDFBox 教程
- Java 文件教程
- Java Files.list教程
- Java Files.walk教程
- Java DirectoryStream教程
- Java 外部與內部迭代器
- Java 文件大小
- 用 Java 創建目錄
- 用 Java 創建文件
- Java Log4j 教程
- Gson 教程
- Java RequestDispatcher
- Java HTTP GET/POST 請求
- Java InputStream教程
- Java FileOutputStream教程
- Java FileInputStream教程
- Java ZipInputStream教程
- Java FileWriter教程
- EJB 簡介
- Java forEach教程
- Jetty 教程
- Tomcat Derby 教程
- Stripes 介紹
- 使用 Stripes 的 Java webapp,MyBatis,& Derby
- EclipseLink 簡介
- Java 中的數據源
- JSTL 中的 SQL 查詢標記
- Java 驗證過濾器
- Hibernate 驗證器
- 用 Java 顯示圖像
- Play 框架簡介
- Spark Java 簡介
- Java ResourceBundle教程
- Jtwig 教程
- Java Servlet 教程
- Java 套接字教程
- FreeMarker 教程
- Android 教程
- Java EE 5 教程
- JSoup 教程
- JFreeChart 教程
- ImageIcon教程
- 用 Java 復制文件
- Java 文件時間教程
- 如何使用 Java 獲取當前日期時間
- Java 列出目錄內容
- Java 附加到文件
- Java ArrayList教程
- 用 Java 讀寫 ICO 圖像
- Java int到String的轉換
- Java HashSet教程
- Java HashMap教程
- Java static關鍵字
- Java 中的HashMap迭代
- 用 Java 過濾列表
- 在 Java 中讀取網頁
- Java 控制臺應用
- Java 集合的便利工廠方法
- Google Guava 簡介
- OpenCSV 教程
- 用 Java8 的StringJoiner連接字符串
- Java 中元素迭代的歷史
- Java 謂詞
- Java StringBuilder
- Java 分割字串教學
- Java NumberFormat
- Java TemporalAdjusters教程
- Apache FileUtils教程
- Java Stream 過濾器
- Java 流歸約
- Java 流映射
- Java InputStreamReader教程
- 在 Java 中讀取文本文件
- Java Unix 時間
- Java LocalTime
- Java 斐波那契
- Java ProcessBuilder教程
- Java 11 的新功能
- ZetCode JavaScript 教程
- Ramda 教程
- Lodash 教程
- Collect.js 教程
- Node.js 簡介
- Node HTTP 教程
- Node-config 教程
- Dotenv 教程
- Joi 教程
- Liquid.js 教程
- faker.js 教程
- Handsontable 教程
- PouchDB 教程
- Cheerio 教程
- Axios 教程
- Jest 教程
- JavaScript 正則表達式
- 用 JavaScript 創建對象
- Big.js 教程
- Moment.js 教程
- Day.js 教程
- JavaScript Mustache 教程
- Knex.js 教程
- MongoDB JavaScript 教程
- Sequelize 教程
- Bookshelf.js 教程
- Node Postgres 教程
- Node Sass 教程
- Document.querySelector教程
- Document.all教程
- JSON 服務器教程
- JavaScript 貪食蛇教程
- JavaScript 構建器模式教程
- JavaScript 數組
- XMLHttpRequest教程
- 從 JavaScript 中的 URL 讀取 JSON
- 在 JavaScript 中循環遍歷 JSON 數組
- jQuery 教程
- Google 圖表教程
- ZetCode Kotlin 教程
- Kotlin Hello World 教程
- Kotlin 變量
- Kotlin 的運算符
- Kotlin when表達式
- Kotlin 數組
- Kotlin 范圍
- Kotlin Snake
- Kotlin Swing 教程
- Kotlin 字符串
- Kotlin 列表
- Kotlin 映射
- Kotlin 集合
- Kotlin 控制流程
- Kotlin 寫入文件
- Kotlin 讀取文件教程
- Kotlin 正則表達式
- ZetCode 其它教程
- TCL 教程
- Tcl
- Tcl 語法結構
- Tcl 中的基本命令
- Tcl 中的表達式
- Tcl 中的控制流
- Tcl 中的字符串
- Tcl 列表
- Tcl 中的數組
- Tcl 中的過程
- 輸入&輸出
- AWK 教程
- Vaadin 教程
- Vaadin 框架介紹
- Vaadin Grid教程
- Vaadin TextArea教程
- Vaadin ComboBox教程
- Vaadin Slider教程
- Vaadin CheckBox教程
- Vaadin Button教程
- Vaadin DateField教程
- Vaadin Link教程
- ZetCode PHP 教程
- PHP 教程
- PHP
- PHP 語法結構
- PHP 基礎
- PHP 數據類型
- PHP 字符串
- PHP 運算符
- PHP 中的控制流
- PHP 數組
- PHP 數組函數
- PHP 中的函數
- PHP 正則表達式
- PHP 中的面向對象編程
- PHP 中的面向對象編程 II
- PHP Carbon 教程
- PHP Monolog 教程
- PHP 配置教程
- PHP Faker 教程
- Twig 教程
- Valitron 教程
- Doctrine DBAL QueryBuilder 教程
- PHP Respect 驗證教程
- PHP Rakit 驗證教程
- PHP PDO 教程
- CakePHP 數據庫教程
- PHP SQLite3 教程
- PHP 文件系統函數
- ZetCode Python 教程
- Python 教程
- Python 語言
- 交互式 Python
- Python 語法結構
- Python 數據類型
- Python 字符串
- Python 列表
- Python 字典
- Python 運算符
- Python 關鍵字
- Python 函數
- Python 中的文件
- Python 中的面向對象編程
- Python 模塊
- Python 中的包
- Python 異常
- Python 迭代器和生成器
- Python 內省
- Python Faker 教程
- Python f 字符串教程
- Python bcrypt 教程
- Python 套接字教程
- Python smtplib教程
- OpenPyXL 教程
- Python pathlib教程
- Python YAML 教程
- Python 哈希教程
- Python ConfigParser教程
- Python 日志教程
- Python argparse 教程
- Python SQLite 教程
- Python Cerberus 教程
- Python PostgreSQL 教程
- PyMongo 教程
- PyMySQL 教程
- Peewee 教程
- pyDAL 教程
- pytest 教程
- Bottle 教程
- Python Jinja 教程
- PrettyTable 教程
- BeautifulSoup 教程
- pyquery 教程
- Python for循環
- Python 反轉
- Python Lambda 函數
- Python 集合
- Python 映射
- Python CSV 教程-讀寫 CSV
- Python 正則表達式
- Python SimpleJson 教程
- SymPy 教程
- Pandas 教程
- Matplotlib 教程
- Pillow 教程
- Python FTP 教程
- Python Requests 教程
- Python Arrow 教程
- Python 列表推導式
- Python 魔術方法
- PyQt 中的QPropertyAnimation
- PyQt 中的QNetworkAccessManager
- ZetCode Ruby 教程
- Ruby 教程
- Ruby
- Ruby 語法結構
- Ruby 基礎
- Ruby 變量
- Ruby 中的對象
- Ruby 數據類型
- Ruby 字符串
- Ruby 表達式
- Ruby 控制流
- Ruby 數組
- Ruby 哈希
- Ruby 中的面向對象編程
- Ruby 中的面向對象編程 II
- Ruby 正則表達式
- Ruby 輸入&輸出
- Ruby HTTPClient教程
- Ruby Faraday 教程
- Ruby Net::HTTP教程
- ZetCode Servlet 教程
- 從 Java Servlet 提供純文本
- Java Servlet JSON 教程
- Java Servlet HTTP 標頭
- Java Servlet 復選框教程
- Java servlet 發送圖像教程
- Java Servlet JQuery 列表教程
- Servlet FreeMarker JdbcTemplate 教程-CRUD 操作
- jQuery 自動補全教程
- Java servlet PDF 教程
- servlet 從 WAR 內讀取 CSV 文件
- Java HttpServletMapping
- EasyUI datagrid
- Java Servlet RESTFul 客戶端
- Java Servlet Log4j 教程
- Java Servlet 圖表教程
- Java ServletConfig教程
- Java Servlet 讀取網頁
- 嵌入式 Tomcat
- Java Servlet 分頁
- Java Servlet Weld 教程
- Java Servlet 上傳文件
- Java Servlet 提供 XML
- Java Servlet 教程
- JSTL forEach標簽
- 使用 jsGrid 組件
- ZetCode Spring 教程
- Spring @Bean注解教程
- Spring @Autowired教程
- Spring @GetMapping教程
- Spring @PostMapping教程
- Spring @DeleteMapping教程
- Spring @RequestMapping教程
- Spring @PathVariable教程
- Spring @RequestBody教程
- Spring @RequestHeader教程
- Spring Cookies 教程
- Spring 資源教程
- Spring 重定向教程
- Spring 轉發教程
- Spring ModelAndView教程
- Spring MessageSource教程
- Spring AnnotationConfigApplicationContext
- Spring BeanFactoryPostProcessor教程
- Spring BeanFactory教程
- Spring context:property-placeholder教程
- Spring @PropertySource注解教程
- Spring @ComponentScan教程
- Spring @Configuration教程
- Spring C 命名空間教程
- Spring P 命名空間教程
- Spring bean 引用教程
- Spring @Qualifier注解教程
- Spring ClassPathResource教程
- Spring 原型作用域 bean
- Spring Inject List XML 教程
- Spring 概要文件 XML 教程
- Spring BeanDefinitionBuilder教程
- Spring 單例作用域 bean
- 獨立的 Spring 應用
- 經典 Spring 應用中的JdbcTemplate
- Spring EmbeddedDatabaseBuilder教程
- Spring HikariCP 教程
- Spring Web 應用簡介
- Spring BeanPropertyRowMapper教程
- Spring DefaultServlet教程
- Spring WebSocket 教程
- Spring WebJars 教程
- Spring @MatrixVariable教程
- Spring Jetty 教程
- Spring 自定義 404 錯誤頁面教程
- Spring WebApplicationInitializer教程
- Spring BindingResult教程
- Spring FreeMarker 教程
- Spring Thymeleaf 教程
- Spring ResourceHandlerRegistry教程
- SpringRunner 教程
- Spring MockMvc 教程
- ZetCode Spring Boot 教程
- Spring Boot 發送電子郵件教程
- Spring Boot WebFlux 教程
- Spring Boot ViewControllerRegistry教程
- Spring Boot CommandLineRunner教程
- Spring Boot ApplicationReadyEvent 教程
- Spring Boot CORS 教程
- Spring Boot @Order教程
- Spring Boot @Lazy教程
- Spring Boot Flash 屬性
- Spring Boot CrudRepository 教程
- Spring Boot JpaRepository 教程
- Spring Boot findById 教程
- Spring Boot Data JPA @NamedQuery教程
- Spring Boot Data JPA @Query教程
- Spring Boot Querydsl 教程
- Spring Boot Data JPA 排序教程
- Spring Boot @DataJpaTest教程
- Spring Boot TestEntityManager 教程
- Spring Boot Data JPA 派生的查詢
- Spring Boot Data JPA 查詢示例
- Spring Boot Jersey 教程
- Spring Boot CSV 教程
- SpringBootServletInitializer教程
- 在 Spring Boot 中加載資源
- Spring Boot H2 REST 教程
- Spring Boot RestTemplate
- Spring Boot REST XML 教程
- Spring Boot Moustache 教程
- Spring Boot Thymeleaf 配置
- Spring Boot 自動控制器
- Spring Boot FreeMarker 教程
- Spring Boot Environment
- Spring Boot Swing 集成教程
- 在 Spring Boot 中提供圖像文件
- 在 Spring Boot 中創建 PDF 報告
- Spring Boot 基本注解
- Spring Boot @ResponseBody教程
- Spring Boot @PathVariable教程
- Spring Boot REST Data JPA 教程
- Spring Boot @RequestParam教程
- Spring Boot 列出 bean
- Spring Boot @Bean
- Spring Boot @Qualifier教程
- 在 Spring Boot 中提供靜態內容
- Spring Boot Whitelabel 錯誤
- Spring Boot DataSourceBuilder 教程
- Spring Boot H2 教程
- Spring Boot Web JasperReports 集成
- Spring Boot iText 教程
- Spring Boot cmd JasperReports 集成
- Spring Boot RESTFul 應用
- Spring Boot 第一個 Web 應用
- Spring Boot Groovy CLI
- Spring Boot 上傳文件
- Spring Boot @ExceptionHandler
- Spring Boot @ResponseStatus
- Spring Boot ResponseEntity
- Spring Boot @Controller
- Spring Boot @RestController
- Spring Boot @PostConstruct
- Spring Boot @Component
- Spring Boot @ConfigurationProperties教程
- Spring Boot @Repository
- Spring Boot MongoDB 教程
- Spring Boot MongoDB Reactor 教程
- Spring Boot PostgreSQL 教程
- Spring Boot @ModelAttribute
- Spring Boot 提交表單教程
- Spring Boot Model
- Spring Boot MySQL 教程
- Spring Boot GenericApplicationContext
- SpringApplicationBuilder教程
- Spring Boot Undertow 教程
- Spring Boot 登錄頁面教程
- Spring Boot RouterFunction 教程
- ZetCode Symfony 教程
- Symfony DBAL 教程
- Symfony 表單教程
- Symfony CSRF 教程
- Symfony Vue 教程
- Symfony 簡介
- Symfony 請求教程
- Symfony HttpClient教程
- Symfony Flash 消息
- 在 Symfony 中發送郵件
- Symfony 保留表單值
- Symfony @Route注解教程
- Symfony 創建路由
- Symfony 控制臺命令教程
- Symfony 上傳文件
- Symfony 服務教程
- Symfony 驗證教程
- Symfony 翻譯教程