###リスト(Array型一次元配列)(書き方例)
note14
# リストの生成1(要素無し)
list1 = []
# リストの生成2(要素あり)
list2 = [10, 25, 50, 75, 100]
◆関数(メソッド)の例
# 先頭に要素を追加
pushfirst!(list2, 1)
# 先頭の要素を取り出す
popfirst!(list2)
# 末尾に要素を追加
push!(list2, 125)
# 末尾の要素を取り出す
pop!(list2)
# i番目に要素を挿入する(3番目に30を挿入)
insert!(list2, 3, 30)
# i番目の要素を削除(4番目の要素を削除)
deleteat!(list2, 4)
# インデックス番号で要素を取り出す(5番目の要素を取り出す)
list2[5]
# リストの長さ
length(list2)
# 空かどうかの判定
isempty(list2)
# Matrixからの変換
# 多次元配列(Matrix型)を一次元のベクトル(Vector型)に変換
vec(list2)
##解説
・Juliaには多次元を扱える多次元配列がありますが、Juliaでは多次元配列のうち、1次元配列をリストとして扱います。※本記事では便宜的にこれをリストと呼びます。
・Pythonのリストと同じように使用することができます。
・各関数名に**!マーク**(ビックリマーク)がついていますが、これの意味は、その関数の引数に設定されている変数おいて、増減や削除が発生することを許容する、という意味です。
####動作例
(1)先頭に要素を追加
![image.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2Fc5672fde-e92c-677b-494a-c94e450dd337.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=17757e1dc7757b0340b6d1f94743a4be)
(2)先頭の要素を取り出す
![image.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2F939fc560-9147-21bf-c5f4-b80d89664375.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=35a8d30c31b05c6ff6ba9cc0b82653fd)
※popまたはpopfirstで要素を取り出した後のリストは、その要素は無くなります。
![image.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2F872fc1ee-1836-8704-ad8c-88e4a168c393.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=2536f9a70443925a643ce04faf945f72)
(3)末尾に要素を追加
![image.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2Fb8c39820-9f47-3666-f785-beb4a916e1a2.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=07a805099f9dff918c071c3866c20a43)
(4)末尾の要素を取り出す
![001.jpg](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2F7fec4bda-82f4-d95c-2d64-f1baf1a80ef4.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=2534ae396f22209c34a0a0260f297998)
(5)i番目に要素を挿入する(3番目に30を挿入する)
※インデックス番号は1からかぞえます。
![001.jpg](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2F34c8d775-b5bd-9d6f-35bc-d74254294154.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=03a8c12cd9300f64c63a6372a210b918)
(6)i番目の要素を削除(4番目の要素を削除)
![001.jpg](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2F83d6cb53-6db2-9d3d-6f2b-f9dfd711f6d4.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=5167f5365c05c00c718eaac1a8d8019b)
(7)インデックス番号で要素を取り出す(5番目の要素を取り出す)
![001.jpg](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2F2042b978-1941-32f4-0679-714591c9b0f4.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=0adc6ea8107437e1e0c6d0a6fc574fe6)
(8)リストの長さ
![001.jpg](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2F263659c3-9fe7-073b-51d5-7d0c96ac27c5.jpeg?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=a159aacec5b9fd12c61a5f7ec5891140)
(9)空かどうかの判定
true/falseを返します。
(10)Matrixからの変換
多次元配列(Matrix型)を一次元のベクトル(Vector型)に変換します。
下例では、list2を一次元のMatrix型配列、list3を2x3次元のMatrix型配列とします。
・vec()関数で一次元ベクトル(Vector型)に変換しています。
list3では、一次元に変換する際、column-major order型で順序付けされることが分かります。
・typeof()関数で、一次元ベクトルの型を確認しています。
![image.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F399135%2F256ac362-84f0-88cc-d2d5-059830d108db.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=1880dbef94db79e927aff8449e89ff17)
##もくじ
Julia早引きノート[01]変数・定数の使い方
Julia早引きノート[02]算術式、演算子
[Julia早引きノート[03]複素数]
(https://qiita.com/ttabata/items/225c77a4d71fafc3e482)
Julia早引きノート[04]正規表現
....
もくじを開く
[Julia早引きノート[05]if文]
(https://qiita.com/ttabata/items/4f0bcff1e32f60402dfb)
[Julia早引きノート[06]ループ処理]
(https://qiita.com/ttabata/items/2a53825101b0b75fb589)
[Julia早引きノート[07]try, catch, finally]
(https://qiita.com/ttabata/items/1d6fe990526c99b65b5f)
[Julia早引きノート[08]変数の型(Int, Float, Bool, Char, String)]
(https://qiita.com/ttabata/items/2b84a826e39bfe432b62)
[Julia早引きノート[09]関数 (1)基本編]
(https://qiita.com/ttabata/items/d9b4f2728ec0dbcc6394)
[Julia早引きノート[10]関数 (2)応用編]
(https://qiita.com/ttabata/items/462e216c43d519f1969d)
[Julia早引きノート[11]Nothing型]
(https://qiita.com/ttabata/items/0e5a6b21968d8752cf0b)
[Julia早引きノート[12]複合型(Composite Type)型]
(https://qiita.com/ttabata/items/27469216a3c33101c825)
[Julia早引きノート[13]タプル]
(https://qiita.com/ttabata/items/ebe35dbfec4efbc1c29a)
[Julia早引きノート[14]リスト(Array型一次元配列)]
(https://qiita.com/ttabata/items/7528863ccbb282e8260d)
[Julia早引きノート[15]辞書(dictionary)]
(https://qiita.com/ttabata/items/77a4f1d02b51d067bfb7)
[Julia早引きノート[16]集合]
(https://qiita.com/ttabata/items/ca8137922a785122037e)
[Julia早引きノート[17]多次元配列 (1)初期化]
(https://qiita.com/ttabata/items/01fecbd14363460a27a6)
[Julia早引きノート[18]多次元配列 (2)様々な演算や関数]
(https://qiita.com/ttabata/items/f35896a5fa005fba7fbc)
[Julia早引きノート[19]多次元配列 (3)サブ配列]
(https://qiita.com/ttabata/items/045c00406fe45270b42e)
[Julia早引きノート[20]ファイル入出力]
(https://qiita.com/ttabata/items/5a99c3998060d161ace8)
[Julia早引きノート[21]JSON、XMLファイルの入出力]
(https://qiita.com/ttabata/items/65ebec11830271f9be71)
[Julia早引きノート[22]Python関数やPythonモジュールの呼び出し]
(https://qiita.com/ttabata/items/3afc8cef40d1e98a7b17)
[Julia早引きノート[23]JuliaでのMatplotlibによるグラフ描画]
(https://qiita.com/ttabata/items/96a0e172addfac690cca)
[Julia早引きノート[24]CSVFiles(DataFrameとの連携)]
(https://qiita.com/ttabata/items/51446731a703b5aca524)
[Julia早引きノート[25]線形代数演算(ベクトル・行列計算)]
(https://qiita.com/ttabata/items/5abe14d5c510e8ca0f54)
(※引き続きコンテンツを増やしていきます)
##関連情報
Julia - 公式ページ
https://julialang.org/
Julia - 日本語公式ドキュメント
https://julia-doc-ja.readthedocs.io/ja/latest/index.html
初めてのJuliaとインストール (Windows & Linux)
https://qiita.com/ttlabo/items/b05bb43d06239f968035
Julia - Mathematics
https://docs.julialang.org/en/v1/base/math/
##ご意見など
ご意見、間違い訂正などございましたらお寄せ下さい。