‫お帰りなさい｡
‫さて､ レースのプロになったところで､ 2次元配列､ 一般的には多次元配列を作ってみましょう｡
‫配列は1行のエントリだけではダメですからね｡
‫二次元､ 三次元､ さらには多次元にも対応します｡
‫では､ 非常にシンプルな2次元配列を作成し､ その配列に文字列を作成してみます｡
‫そしてここで必要なのは､ 角括弧を空にするのではなく､ そこにカンマを入力するか､ カンマを入れ､
‫その後に名前を付けることです｡
‫つまり､ これはマトリックスの例となる｡
‫つまり､ 文字列型の2次元配列があり､ それをmatrixと呼びます｡
‫というわけで､ 2次元配列の宣言､ 配列への宣言はこんな感じ｡
‫これで､ 3次元配列を宣言する場合も､ とても簡単ですね｡
‫3Dアレイ｡
‫今度は整数でやってみると､ それ以外でもうまくいくことがわかります｡
‫そして､ それを3Dで呼び出す｡
‫というわけで､ 3dアレイの作り方です｡
‫そしてご覧の通り､ コンマが基準になっています｡
‫つまり､ 1コンマ､ 2コンマ､ 3コンマ､ 4コンマ､ 5コンマというように｡
‫40になる3つのカンマを飛ばしましたが､ これで単純に多次元配列が作れます｡
‫まあ､ そうやって宣言すればいいんですけどね｡
‫では､ 初期化の方法について見ていきましょう｡
‫そこで､ 新たに2次元の配列､ 2次元の配列を作成し､ それを1つのint配列､
‫2つのDXと呼ぶことにします｡
‫シンプルにいこうと思います｡
‫そして､ それを作成するために､ 私は再び新しいその後データ型を使用する必要があります｡
‫そして､ ここで次元の数を宣言する必要があります｡
‫この場合､ 一般的なものよりも1次元多いわけです｡
‫つまり､ 全部で2次元で､ あとは中括弧が2つ必要なんです｡
‫そして､ ここで必要なのは､ 先に進み､ 異なる行を入力することです｡
‫そこで､ 1､ 2､ 3はカンマで区切り､ 4､ 5､ 6はカンマで区切り､ 7､ 8､ 9はカンマで区切るという行を作ります｡
‫つまり､ これが2DX配列の例で､ 行列になるわけです｡
‫だから､ ここにあったのとほとんど同じことだ｡
‫そして､ 配列自体は0から始まっているのに､ 私は1から始めています｡
‫だから､ これにアクセスするためには､ 次のようにする必要がある｡
‫単純にコンソールに書けばいいだけなんですけどね｡
‫だからwダブルタップを見てください｡
‫そして､ 実は私がアクセスしたいのは､ この5つなんです｡
‫より一層､ 面白くなったと思います｡
‫セントラルバリューと言い､ アレイ2 DXと言い､ 角括弧の中にどのポジションにアクセスしたいかを入力します｡
‫つまり､ 私の場合､ 1番と1番の位置にアクセスしたいのです｡
‫なぜ､ 一と一なのか？
‫さて､ これが0列目です｡
‫それが1列目です｡
‫というわけで､ アクセスしたいのはこの行の1つです｡
‫つまり､ こことあそこはその行の中のインデックス1ということです｡
‫つまり､ この4がインデックス・ゼロ､ 5がインデックス・ワン､ 6がインデックス・ツーというわけだ｡
‫つまり､ 0行目はここ､ 1行目はここ､ 2行目はここと言うことができるのです｡
‫わかりました｡
‫だから､ ここではほとんどそうしているんだ｡
‫そして､ 0､ 1､ 2､ ......といった具合に｡
‫ですから､ ここにあるエントリーの数に基づいて､ このように簡単にアクセスすることができるのです｡
‫では､ 次にそれを確認してみましょう｡
‫キーが消えないように読みましょう､ 私たちは中心値が5です｡
‫わかりました｡
‫だから､ こうやって､ ちょっとしたチャレンジとして､ 今､ あなたのために5つにアクセスすることができるのです｡
‫7にアクセスしてみてください｡
‫わかりました｡
‫ぜひ試してみてください｡
‫つまり､ 7にアクセスするためには､ 2行目を使う必要があるわけです｡
‫そして､ それはどのインデックスがゼロの時なのか｡
‫だから､ to zeroが私たちの7になるんです｡
‫では､ もう一度実行してみましょう｡
‫中心値は7です｡
‫了解です｡
‫そこで､ 私たちは
‫3dアレイを実行する場合は､ このようにDXアレイに使用することができます｡ これは､ 用語が少し複雑で､
‫全体の次元が追加されますが､ コンセプトは同じです｡
‫そこで､ 非常にシンプルな3次元配列を作成します｡
‫わかりました｡
‫そこで､ この3つのDアレイを作りました｡
‫つまり､ 中括弧が1次元､ 中括弧が2次元､ そしてまた中括弧が3次元というわけです｡
‫例えば3Dオブジェクトとして見た場合､ 奥行き､ 高さ､ 長さがほぼ揃うわけです｡
‫そうだろ？
‫そのため､ それらにアクセスしたい場合は､ デモがしやすいので､ 今回は文字列を使っています｡
‫ですから､ もしこの最初の番号にアクセスしたい場合は､ 000を使わなければなりません｡
‫では､ 実際にそうであることをお見せしましょう｡
‫だから､ その2行をコピーするだけです｡
‫実は､ 切り取るんです｡
‫ここでは3Dごとに3D配列を使用し､ 例として1､ 1､ 0の位置にアクセスしたいのですが､
‫中心値ではなく､ 値を取得したいのです｡
‫これを実行しよう｡
‫そして､ ご覧の通り､ 値は110となります｡
‫だから､ それはむしろまあ､ 奇妙な､ あるいは単純なことかもしれない｡ なぜなら､ よし､ ここに入力したのはこれだ､ と言えるからだ｡
‫110.
‫ええ､ それは私がアクセスするために必要なのとまったく同じ方法でエントリーに名前をつけたからです｡
‫では､ ここにもう一列追加して､ 0を使うとします｡
‫あれをかけるだけでいいんです｡
‫こんにちは｡
‫で､ どうしたんですか？
‫だから､ これはとてもシンプルなことなんです｡
‫何も変わっていない｡
‫ただし､ ここにあるのは別です｡
‫見ての通り､ この配列はもう幸せではありませんし､ この3つのD配列の一部も幸せではありません｡
‫だから､ もう1つ､ ここにもう1つ､ 最後のエントリーを追加する必要があるのです｡
‫だから､ そのように呼べばいいのです｡
‫だから､ もし私が今､ この高いところにアクセスしたいと言ったら､ 実際に自分でそれをやってみるのです｡
‫アクセスするために正しい値を入力してみてください｡
‫こんにちは｡
‫つまり､ この中で､ アクセスしてください｡
‫わかりました｡
‫だから､ これはゼロだと言ったんです｡
‫1点目で｡
‫これはゼロイチ､ 実はゼロゼロなんです｡
‫この列......この列はゼロ1､ ではこの列はゼロ2のはずだ｡
‫だから､ 020はそこそこ高いだろう｡
‫では､ その020にアクセスして実行してみましょう｡
‫そして､ ここにあるように､ そこそこ値が高いと書いてあるのです｡
‫最後のエントリにアクセスしたい場合も､ 同じ方法です｡
‫この行はゼロが1つです｡
‫ここの列が1つです｡
‫つまり､ この行は1 2になります｡
‫そこで､ 1､ 2､ 1の順にアクセスし､ ラストエントリーを取得する｡
‫では､ 実行してみましょう｡ 値の最後のエントリが表示されます｡
‫オッケイです｡
‫だから､ もっと深く掘り下げていくことができるんです｡
‫しかし､ 原理は明らかで､ これは単純に3dアレイを作る方法だと思います｡
‫ところで､ 多次元配列の作り方はさまざまです｡
‫例えば､ 先に寸法を指定することもできますよね？
‫例えば､ D文字列を新しい文字列に変換するための文字列配列と呼ぶことができます｡
‫ここでは､ 例えば､ 3つの行と1つの行に2つのエントリーを持ち､
‫1つは例えば1､ 次に2､ 次に3､ 4といった具合に指定する必要があります｡ つまり､ ここでは5と6を持つことになります｡
‫ということは､ これも一つの方法ですよね？
‫つまり､ この行､ この行､ この行の3つの行が必要なんだ､ ということを指定することができます｡
‫そして､ 実はこんな感じ｡
‫そうすることで､ エントリーの数を指定することができるんですね｡
‫そうですね｡
‫では､ ちょっと挑戦してみましょう｡ 「for」を「chicken」に変えてみてください｡
‫ヴィーガンでもチキンに変えればいいんだよ｡
‫わかりました｡
‫ぜひ試してみてください｡
‫では､ それを試してみましょう｡
‫その位置の文字列に配列､ 文字列､ 配列になるんです｡
‫そして､ 確認しよう｡
‫これは0行目です｡
‫これは1列目と4列目です｡
‫それなら1対1のはずだ｡
‫そして､ それをチキンに変えていく｡
‫そして､ 次はその値を見てみましょう｡
‫そこで､ 1と1の位置に配列2dの文字列を言う｡
‫そして､ 今度はチキンを手に入れることができるかどうか｡
‫価値はチキンです｡
‫素晴らしい｡
‫これで､ 2つの配列の中の1つのエントリーの値を変更する方法がわかりました｡
‫例えば､ ある配列､ あるいは配列の名前があったとして､ それが何次元のものであるかが分からないとします｡
‫そこで､ 寸法を調べるために､ 先にやってみましょう｡
‫実は､ 新しい変数を作るんです｡
‫次元で呼ぼうと思います｡
‫そして､ そのランクをDストリングに配列することになるのです｡
‫ランクとは､ 配列の次元数を表すものです｡
‫つまり､ 1次元の配列が1を返した場合､ 2次元の配列は1を返すはずなのです｡
‫つまり､ 2次元の文字列は2つの次元を持つので､ この場合､ 次元は2つになるはずです｡
‫では､ 今から寸法をプリントアウトして､ それを実行してみましょう｡
‫そして､ その値は2であると書かれています｡
‫ですから､ ある変数がどの程度の次元を持つかを把握したい場合に､ 例えば､ この場合は単純ですが､
‫もっと複雑な場合は､ それを引数として得ることができます｡
‫そして､ あなたのプログラムは､ もしかしたら異なる次元で動いているかもしれません｡
‫2次元の配列だけでなく､ 3次元の配列など､ 複数の異なる次元を受け入れることができます｡
‫そして､ その配列を扱う前に､ その配列が何次元であるかを知っておきたいと思うでしょう｡
‫そうやって､ 把握することができたんですね｡
‫ちなみに､ ランクを指定せずに配列を作成することも可能です｡
‫ですから､ 私たちの場合は､ 必ずランクを指定しています｡
‫そして､ ここで私たちは､ よし､ 2つの次元を持つことにしたのです｡
‫三次元とかありますしね｡
‫しかし､ ここでも同じように､ 等号の右側で等号を作成する必要があります｡
‫そこで､ ちょっとした例としてインチをお見せします｡ これは配列2つのDXで､ これも呼び出すつもりです｡
‫だから､ 違う配列になるだけなんです｡
‫そして､ ここで角括弧や中括弧を使って配列を作成することができます｡
‫このように､ 2つのdx配列があっても文句は出ませんし､ aがランクを指定するような新しい文字列や新しい末尾のようなものも必要ありません｡
‫だから､ 自動的にわかるんです｡
‫なるほど｡
‫ここの宣言でツリーランクです｡
‫ただし､ すでに配列を宣言している場合｡
‫ここで行列を宣言したとします｡
‫先に進めないから､ ここで実際にやらせてください｡
‫メトリックスがit's a one toになるとは言い切れません｡
‫そして､ ここでも中括弧のあたりです｡
‫だから､ これはやってはいけないことなんです｡
‫さて､ これはエラーを返すことになります｡
‫そのやり方は認めない｡
‫わかりました｡
‫だから､ そんなことはしないように､ 念のため｡
‫しかし､ 作成すると､ すぐにそのように初期化することができます｡
‫わかりました｡
‫次回のビデオでは､ 2次元の配列に挑戦します｡
‫これからちょっとしたチックタックトーのクローンを作りますので､ 次のビデオでそれを自分で作ってみてください｡
‫ですから､ 2次元配列の使い方､ 要素へのアクセス方法などをしっかり理解して､ 準備しておいてください｡
‫わかりました｡
‫それでは､ 次のビデオでお会いしましょう｡