プログラミング操作、記述
新しいプログラミング言語をやるときに、対象のプログラミング言語を理解するためのとっかかりの問題、質問を集めたページ。
基本的な構文
Q. 変数定義
Q. if, else if, else
Q. if and
Q. if or
Q. switch
Q. 1行コメント
Q. 複数行コメント
Q. パターンマッチ
Q. ループ(while)
Q. ループ(for)
Q. ループ(for each)
Q. ループ(do while)
Q. 関数定義
Q. デフォルト値
Q. ラムダ式、無名関数
Q. 標準入力
Q. 標準出力
ライブラリへの操作
Q. ライブラリのインポートorインクルード
ファイル入出力
Q. ファイルを開く
Q. ファイルを閉じる
Q. デバッグ方法
Q. 変数を定義する(デバッガ)
Q. 特定のデータ構造を出力する(デバッガ)
入出力
型変換
データ構造
基本的なデータ構造
文字列
配列
連想配列
タプル
リスト
構造体
クラス
配列
Q. 配列の定義(1次元配列)
Q. 配列の添字アクセス
Q. 配列のサイズ取得
Q. 配列の要素追加
Q. 配列の要素更新
Q. 配列の要素削除
Q. 1次元配列の可変長定義
Q. 配列のリサイズ
Q. 指定された値のグループ(needle)で始まっているかの判定
Q. 指定された値のグループ(needle)で終わっているかの判定
Q. 配列を逆順に処理する
Q. 2次元配列の定義
Q. 2次元配列の可変長定義
構造体
Q. 構造体の定義
Q. 構造体のサイズ
Q. 構造体のメンバにアクセス
Q. 構造体のメンバにアクセス(ポインタ)
タプル
Q. タプルの定義
Q. タプルのアクセス
リスト
Q. リストの定義
Q. リストの要素取得
Q. リストへの要素追加
Q. リストへの要素更新
Q. リストへの要素削除
Q. リストを逆順に処理する
Q. 2次元リストの定義
クラス
Q. クラスの定義
Q. コンストラクタの定義
Q. メソッドの定義
Q. デストラクタの定義
Q. クラス名取得
Q. メソッドの表示
Q. メンバーの表示
連想配列、ハッシュセット、ハッシュテーブル
Q. HashSetの定義
Q. 初期値の登録
Q. キーと値のペアを挿入
Q. キーと関連する値の削除
Q. 全項目削除
Q. 長さ(キーの個数)の取得
検索・アクセス操作
Q. キーが存在するかの確認
Q. 特定の値が含まれているか
Q. 値の取得
Q. キーの全項目取得
イテレーション操作
Q. コレクションの
文字列
正規表現
Q. 正規表現の使用
Q. 正規表現の文字列の置換
Q. 正規表現の特定の文字マッチ
アルゴリズム
ソート
中身を(最大1つ)取り出す系
Q. next
Q. last
Q. nth
Q. find
Q. max
Q. min
中身を弄らず要素を選択する系
Q. filter
Q. take
Q. drop
Q. skip
Q. stepBy
Q. takeWhile
Q. dropWhile
Q. skipWhile
要素全体について何かの情報を得る系
Q. any
Q. all
Q. count
Q. position
Q. some
Q. every(element, index, array)
Q. sum
Q. product
Q. permutations
Q. combinations
個々の要素を変更して流す系 (加工系)
Q. map
Q. filter_map(イテレータの中身全てに同じ操作をして、成功したものだけを残す)
Q. flatten
イテレータの全要素を活用して、別物を作り出す系
Q. fold
Q. 重複を削除 (dedup)
Q. peek
Q. sort
ふたつを組み合わせて、役立つ形に作り替える系 (合体系)
Q. zip
Q. zipWith
スクリプト系
Q. 実行スクリプトのパス取得
Q. 実行スクリプトのファイル名
Q. オプション処理をする(-l)
Q. オプション処理をする(--long-option)
Q. if と testの違い
Q. [ と [[の違い
Q. 環境変数の取得
Q. 環境変数の更新
プログラム情報取得
Q. ファイル名取得
Q. 関数名取得
Q. 行取得
Q. 実行しているファイルパスの取得
関連