Unknown Region

プログラムでハマったエラーとその解決方法についての備忘録メモ

2019-01-01から1年間の記事一覧

【Java】Optional.orElse()の落とし穴

またしょーもない所で詰まったので備忘録がてらにメモ。 以下のプログラムで[hoge]内の[fuga]には何が代入されているかという問題。 例: Sample1.java package test; import java.util.Optional; public class Sample1 { public static void main(String[] a…

【Java】StreamやOptionalにおけるfilter()でのメソッド参照で、スマートに否定の条件式を指定する

※ 2019/12/23追記 コードの表記が崩れているご指摘を頂き、該当箇所を修正致しました。 ありがとうございます。 備忘録がてらメモ。 概ね実現したいのはタイトルの通り。 Java8から登場したStreamAPIの[Stream.filter()]は、条件に一致する要素だけをフィル…

【Python】itertools.combinations()による[組み合わせ]の実装

今回も個人的な備忘録。 良く数学の問題で出てくる「AとBとCとDとEから3個取り出す組み合わせを求めよ」というような問題をPythonで計算するには、[itertools.combinations()]を使うのがとても手っ取り早くて良い。 例: demo1.py #!/usr/bin/python import i…

【JavaScript】Object.defineProperty()の落とし穴

備忘録がてらにメモ。 公式ドキュメントを読まないばかりに実装に無駄に時間をかけてしまった自分への戒めとして残しておく。 JavaScriptの[Object.defineProperty()]という関数は、対象のオブジェクトに対して指定したプロパティを定義するという関数となっ…

【MySQL】JSON型のカラムを操作する場合の落とし穴

備忘録がてらメモ。 MySQL 5.7から利用できるようになった「JSON型」について、色々と落とし穴がある。 ここから先は、とあるDatabase(スキーマ)に「hoge」というテーブルを作成したものとして説明する。 例: table.sql CREATE TABLE hoge ( fuga json DEFAU…

Twitterのシェアボタン設置の落とし穴

Twitterのシェアボタン設置に関して、ハマってしまったので備忘録がてらにメモ。 Googleで「Twitter シェアボタン」なんて検索すると出てくる通り、以下のTwitterの公式サイトから「シェアボタン」のコードを生成して、自分のウェブサイトなどに埋め込むこと…

jqの落とし穴にご注意を

JSONデータをコマンドライン上で扱う上で、とても便利な「jq」というツールをご存知か? stedolan.github.io 例えば以下のコマンドを実行すると、ものすごく手軽にJSONデータを整形して表示してくれるので便利。 コマンド実行例: 1 $ echo '{"hoge":"fuga"}'…

【Ruby】RandomBellで正規乱数を扱う

Rubyで正規乱数を使いたい場面が場面があったので備忘録がてらにメモ。 正規乱数とは、正規分布に従う形の乱数のこと。 簡単に説明すれば通常の乱数は範囲内の数値が完全にランダムで取得できますが、こちらでは正規分布に従って、値によって取得できる確率…

【Java】java.util.Map.containsKey(key)の落とし穴

Javaの[java.util.Map]において、あるキーにnullを代入する場合と、そのキーに何も代入しない場合では振る舞いが異なるようなケースがある その中でも最も身近な存在なのが[Map.containsKey(key)]だと思う。 プログラム例: Snippet.java public class Snippe…

【Perl】PerlのJSONモジュールでbool値を扱う

PerlでJSONを扱う場合は、cpanでよく知られたJSONモジュールを使用することが多い。 https://metacpan.org/pod/JSON この時に値としてbool値を扱う場合には [true]の場合には[\1] [false]の場合には[\0] を代入することで実現することができる。 例: demo1.p…

【Java】親に持つGenerics(総称型)<T>のClassを取得する

備忘録がてらに、こちらへメモ。 以下の様なクラス構成に於ける「Generics(総称型)<T>」のクラスの取得方法について。 Hoge.java /** * Hogeクラス */ public class Hoge { } BaseController.java /** * ベースクラスでGenerics(総称型<T>)を持つ */ public ab</t></t>…

JavaScriptのヒアドキュメントについて

JavaScriptでヒアドキュメントを実現したい場合、ES6以降をサポートしていれば「`」で囲むことで実現することができる。 var str = ` hoge fuga `; ただしES6以前の場合は利用できないので、以下のチートを利用することでそれっぽいことを実現できる。 var s…

JSONのObjectとArrayの違いにご注意

まず、JSONについては以下のページが参考になるかと思います。 ja.wikipedia.org JSONは基本的に以下のようなフォーマットで提供されます。 例: サンプルJSON(Object) { "hoge": "fuga" } このJSONの場合、JavaScriptのJSON.parse(string)などで解釈させると…

【Java】プリミティブのMax値とMin値にご注意を

以下のようなプログラムがあったとして、Step1、Step2、Step3でvalueとして何が出力されるかという問題。 大抵のエンジニアは、何がしたいかピンと来ると思います。 例: Demo.java public class Demo { public static void main(String... args) { long valu…

連絡先: plugout777★yahoo.co.jp (クローラー対策のため★を@に変更してください)