リファクタ
Javaの for-each 文 (拡張for文) 内で remove をする方法はありません。 Sunの解説でもこの点は明記されています。 for-each ループは好きなときに使えます。使用すればコードがわかりやすくなりますが、どこででも使用できるわけではありません。たとえば、…
柴田 芳樹さん*1のブログを読んでいて、ふと目にとまったコメントがありました。 結果として、APIの実装コードでは不正パラメータの検査されていない。あるいは、検査はしているが例外をスローすることなく、単純にリターンしている。※ (中略) ※ 検査はし…
先々週、サーバ停止という致命的な事態をやってしまいました。 原因は、PostgreSQLの LOCK TABLE と SELECT によるデッドロック。 自分でそのことを記事にしたのに、完全に見落としました orz (単純にこの記事通りだったらポスグレがデッドロックを検出する…
現在時刻のミリ秒を取得するのに、こういうやり方を何度か見ました・・・。 Date date = new Date(); long now = date.getTime(); Calendar calendar = new GregorianCalendar(); long now = calendar.getTimeInMillis(); 日付の取得なら Date や Calendar …
他の人のソースを見ていたら、こんなのがありました。 String str = ""; for(int i = 0; i < input.length(); i++){ str += '*'; } 入力された文字を * に置き換える処理です。 でも、よく考えたらこれ、for文いらないですよね・・・。 char[] buf = new cha…
こんなソースがありました。 public class Sample{ private int rate; public Sample(int rate){ this.rate = rate; if(rate < 1000){ this.rate = 1000; } } } rateが1000以下なら1000、そうじゃなければrateで初期化。 そうすることによって、this.rate >=…