yohhoyの日記

技術的メモをしていきたい日記

2016-08-01から1ヶ月間の記事一覧

str型とToStringトレイト

Rust 1.9にてstr型のToStringトレイト特殊化(specialization)が実装され、to_stringメソッドによるstr型からString型への変換処理が効率化された。[本記事はRust 1.11/Stable準拠]Rust 1.8以前はトレイト実装特殊化は存在せず、to_stringメソッドはジェネ…

scanf文字列取得と動的メモリ確保

C標準ライブラリscanf関数の書式指定%sにおいて、取得先の文字列バッファを動的確保する機能拡張。 // POSIX準拠システム char *s = NULL; scanf("%ms", &s); // sはmallocで確保される ... free(s); まとめ: 標準C(ISO C):該当機能は存在しない。メモリ領…

HashMapコレクションの性能改善@Java8

Java8標準ライブラリのjava.util.HashMap<K,V>クラスでは、ハッシュ衝突時のパフォーマンス劣化を避けるために キー型K が Comparable インタフェースを実装することが望ましい。ただし、同インタフェースを実装しなくとも正常に動作する*1。 HashMapのインスタン</k,v>…

空白文字を一括削除

Pythonにおいて、文字列から(タブ・改行等を含む)空白文字群を一括削除する手軽な方法。 s = " a \t b\r\n\tc\t\n" s = ''.join(s.split()) # abc 関連URL python - Remove all whitespace in a string - Stack Overflow

nullの型

Java言語におけるnullリテラルは、言語仕様上は null type をもつ唯一の値として扱われる。null type は名前のない特別な型であるため、Javaプログラム上で null type を直接扱うことはできない。Java Language Specification, Java SE 8 Editionより一部引…