白猫のメモ帳

C#とかJavaとかJavaScriptとかHTMLとか機械学習とか。

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

ワンライナーで書きたい

昨日のコードをJava8という武器を無駄に使ってワンライナーで書きたい。 public class PivotUtil2 { /** * 旋回する */ public static <S, T, U, V extends Pivotable<S, T, U, V>> List<V> pivot(List<V> table) { return table.stream() .collect(Collectors.groupingBy(v -> v.groupBy())) .values().stre</v></v></s,>…

JavaでOracleのPivotみたいなことがしたい

太郎くん、次郎くん、三郎くんはテストの点数を競争していました。しかし、総合点ではなく各教科の点数でそれぞれ順位を決めたくなったため、 集計の方法を変更しました。 このとき、このデータをデータベースに登録していたとすると、 いままで主キーが「人…

プルダウンの変更を取り消したい

たとえばこんなプルダウンがあるとして。ついうっかり変えてしまうと困るわけですよ。なのでこうChageイベントを拾って、確認ダイアログとか出してあげるじゃないですか。でもこれ「キャンセル」押してもプルダウンは元には戻らないんですよね。 困ったもん…

Javaで遅延計算

丸めのタイミングって結構問題になることが多くて、 あとから設定できたらいいなと思ったりする。あとついでにそこまでの計算結果が見えたらいいのになとか思って作ってみたもの。 package practice; import java.math.BigDecimal; import java.math.Roundin…

javascriptのスコープって何?

前回の続き。 続きものなのにこの間の空きかたたるや…。まぁいいか。スコープとは変数の有効範囲ということを書いた。 今回はこれについてちょっと掘り下げてみる。javascriptのスコープは、・グローバル・スコープ ・ローカル・スコープに大きく分けられる…

(function(){})()って何?

たまにはjavascriptな話。jQueryのライブラリなどでこんな書き方をしているものがよくある。 (function($){ // ここに処理 })(jQuery); こういうのを即時実行関数っていう。 無名の関数を作ってその場で実行するってこと。つまり、この二つは同じってこと。 …

Javaで分数ってどうやって扱う?

ApacheCommonsにFractionという分数モデルがあるらしい。自分で実装してみようかと思って考えていたのは、1. 分子と分母を素因数分解して保持する 2. 素数の取得にはメモ化を利用するってすると約分とかしやすくて、そこそこ早いかなとか思っていたけれど、 …

Mapを一気に初期化したい

たまにマッピング自体を定数で持ちたかったりする。 でもMapはいまいち初期化しづらい。 staticイニシャライザとかでやるのが一般的?こういうのを作って public class MapBuilder<K, V> { private Map<K, V> map = new HashMap<K, V>(); public MapBuilder<K, V> put(K key, V value</k,></k,></k,></k,>…

Arrays.asListは固定長ですよ?

equalsAny - 白猫のメモ帳前回のエントリで何気なくでてきたArrays.asList。 仕様を知らないと意外とはまり、そして仕様を確認してもう一回はまるという代物。どういうことかというと、このメソッドで作ったリストはaddやremoveができない。 これらのメソッ…

equalsAny

意外とないみたい。 public static boolean equalsAny(String str, String... strs) { return Arrays.asList(strs).contains(str); } 第一引数が第二引数以降に含まれるかっていうのはいまいち微妙な引数の取り方なので、 普通に定数をAsListの中に並べたほ…

SimpleDateFormatが変?

日付判定ってよくある話だと思うのだけれど、 よくわからないところでtrueになったりする。 「2014032あ」が日付っていうのはさすがにどうなんだろうか。ちなみに format.setLenient(false) は厳密チェックをするかどうかの設定。 public static void main(S…

はてなでコードを書く

>|java| public static void main(String... args){ System.out.println("Hello World!"); } ||<↑こんな感じで書くと、こんな風になる↓ public static void main(String... args){ System.out.println("Hello World!"); } なるほど。 覚えよう。

ひとつめ

ときどき備忘録として書いておきたいこととかがあるので、 メモ書き的な場所を作ってみました。 ジャンルとしては ・Java ・HTML ・CSS ・JavaScript(jQuery) あたりがメインになるかと。 あとはデザインの話とかもたまには?