kakakakakku blog

Weekly Tech Blog: Keep on Learning!

Java

Guava の Stopwatch で時間を計測する

Guava の Stopwatch を使ってサンプルコードを書いてみた. よくある System.currentTimeMillis() を使わなくて済むので,コード的にも目的が明らかで見通しが良くなる. Stopwatch (Guava: Google Core Libraries for Java 18.0 API) サンプルコード OnYour…

Guava: InternetDomainName

Java で URL 情報からドメインやらを抽出してみたかったので,Guava の InternetDomainName を使ってみた. InternetDomainName (Guava: Google Core Libraries for Java 19.0-SNAPSHOT API) サンプルコード package com.kakakakakku.guava; import com.goog…

GCViewer で NumberFormatException が出る

GCログを見るのに GCViewer が良さそうだったので,ダウンロードページから gcviewer-1.29 をダウンロードして,GCログを読み込ませたら,こんなエラーが出てダメだった.ちなみに JVM のパラメータに -XX:+PrintGCDateStamps を入れた場合に対応していない…

Memory Analyzer

ヒープダンプを調べる場合は Memory Analyzer が便利.Eclipse プロジェクトだけど,別に Eclipse がなくてもスタンドアロンで使えるし,ちゃんと Mac 版もあるので,ダウンロードページ からダウンロードできる.今回ダウンロードしたのは Memory Analyzer …

java.lang.AbstractStringBuilder#reverse() の実装を読んでみた

Javaで文字列を反転させる java.lang.AbstractStringBuilder#reverse() の実装を読んでみた.実際にはサロゲートペアを取り扱うコードも入っているが,そこを取り除けば,かなりシンプルな実装になっている.String文字列をchar型配列に変換して,後は文字列…

-Xdumpオプションで確認できるDump出力先を変更する

JVM(IBMJava)が異常終了で落ちる時にダンプが出力されるが,デフォルトだと実行ユーザのホームディレクトリに出力されるらしく,ホームディレクトリのファイルシステムが小さかったりすると,せっかく吐かれたダンプが途中で切れてしまうというかなり残念な…

JavaからMeCab(Windows)を手軽に利用する方法

JavaからMeCabを呼び出す場合,ライブラリとしてJavaバインディングが用意されてはいるものの,自分でライブラリをビルドしたりしないといけないため,手軽に使えるとは言い難い気がした.なので,通常のMeCab(Windows)をDOS上で対話できるように設定してお…

UNIX時間を日時に変換する(Java,Excel)

パッと思い付かなくて悔しかったので! Java import java.util.Calendar; import java.util.Date; public class UnixTimeTrans { public static void main(String[] args) { // currentTimeMillis()の戻り値はミリ秒なので注意 long currTime = System.curre…