Java
HatenaHaiku4J v0.2.0をリリースしました。こちらからどうぞ。主な変更点(changelog.txtより抜粋) HatenaHaiku4J v0.2.0 2009-09-15 ・クラス名変更 HatenaHaikuAPIWithoutAuth -> HatenaHaikuAPILight。 ・Keyword, User, Statusに#apiを付属させ、各インス…
HatenaHaiku4JというはてなハイクAPIのラッパーを書いてます。Pure Javaで作っておくことでGroovyやらJRubyやらJythonやらScala?やらから利用ができてとても便利そうだなぁと思ったのが開発開始の動機です。よろしくどうぞ。 ※なお、動作バージョンは JDK5.…
すごく初歩的な部分で恥ずかしいのだが、Javaのpackage, import機構ではまったのでメモしておく。packageでデフォルトパッケージになっているクラスは、他のクラスから呼び出すことができないみたいですね。 エラーになる例 フォルダ構成 /base | +---Main.j…
ある変数の値がマイナスを許容しないような場合があるとして、他の変数から値を受け取って設定するような場合を考えてみる。(Javaにて) 普通に書くと int num1; if (a < 0) { num1 = 0; } else { num1 = a } こんな感じだろうか。もしくは三項演算子を利用し…
お題: Server error 投稿: Server error このお題、固定長データの読み込みということで、ここぞとばかりに今更Java1.4で追加されたNew I/O を使ってやってみようと思い、勢いで投稿してみました。 一応動いてはいるんですが、エレガントさはないですね。Gro…
自作クラスのequalsメソッドを書くときはこの雛形を使うと便利。 public boolean equals(Object obj) { if (this == obj) { return true; } if (obj instanceof T) { T other = (T) obj; if (!this.xxx.equals(other.xxx)) { return false; } if (yyy != oth…
改行を含むとGroovyの正規表現がうまく動かない - プログラマ的京都生活 によると、複数行になったとたんにGroovyの正規表現がうまく動かなくなる模様。 ということで実際に試してみました。 (動作確認 Groovy Version: 1.5.7 JVM: 1.6.0_10) 実際に試してみ…
当記事は、JavaでMapに複数のキーを指定する方法 | Think Twice に移管しました。
こちらの記事はJavaで毎回完全に異なる乱数を取得する方法 | Think Twiceに移設しました。 >
発端 ハイクで id:daichan330 さんが文字列のエンコーディング+はてなAPIでのPOST処理なんかを試していたので、勉強がてらGroovyでやってみました。 そんなわけで、書いたソースです*1 ひとまず、ハイクAPIを利用して日本語で投稿できることだけを目指しま…
POIのHSSFを使って画像を挿入したExcelファイルを作りたいって要望があったんで、用意したJpeg画像をExcelに挿入するテストを行ってみました。ネットとかで軽く探してみると、POIは画像挿入できないよ的な情報が多かったもので出来るのか不安だったが、出来…
最近、仕事でExcelでデータを入力したものをサーバにアップしたり、DBのデータを書き込んだExcelファイルをダウンロードさせたり、また、VBAを使ってガリガリExcel内で処理させたり…といった内容のものをチームでやっている。 ってことで、まだ使うか分から…
当記事はJavaでオブジェクト配列を特定の型の配列にキャストする | Think Twiceへ移管しました。
ここで紹介されているMultiMapがキーを重複して持てるMap (ApacheのCommons API) Thanks to Bagが欲しい... | | プログラマ2.0日報 | あすなろBLOG リンク MultiMap (Collections 3.2 API) 発端
SQLやEXCELなどで、 数値の符号(プラス(+)なのかマイナス(-)なのかそれとも0なのか) を取得する関数としてSIGN関数がありますが、Javaではjava.lang Mathクラスあたりあるかなぁと思ったら 見当たりません。代替として、java.math.BigDecimalやjava.math.Big…
Java系Script言語紹介シリーズ第4弾。お次はRhinoで。 Rhino(らいの)はJavaScript(ECMAScript)のJavaでの実装です。 >>Rhino詳細:JavaScriptからJavaインターフェースの実装とクラスの継承 - builder 試してないけど、今流行のJavaScriptでプロトタイプベー…
ということで、Groovy紹介サイトです。 インストールしてコンソールで実行してみました。 関連エントリ >>Rhino紹介サイト - No Programming, No Life >>JRuby紹介サイト - No Programming, No Life >>Jython紹介サイト - No Programming, No Life [>コンパ…
一個前のエントリがJythonだったんで、対抗馬ということでJRubyを。 >>[Think IT] 第1回:JRubyとは? (1/3) >>[Think IT] 第2回:JRubyでHello, World! (1/2) >>[Think IT] 第3回:RubyからJavaクラスを呼び出してみよう! (1/3) >>[Think IT] 第4回:Java…
「おれはJython」っていうJython紹介サイトがあった。ガキ大将ですね。 >>おれはJython第1回 >>おれはJython第2回 CPythonから入る前の取っ掛かりとしていいかも。 関連エントリ >>Rhino紹介サイト - No Programming, No Life >>Groovy紹介サイト - No Progr…
当記事はJavaでシングルトンを実現するならInitialize-On-Demand Holderイディオムを使うといいらしい | Think Twiceに移設しました。
仕事でSWTのOutOfMemoryの件を調べていたんだが、その際に見たネットの記事によると、Java SE 7あたりはなかなか素敵なことになっているらしい。 例えば… スクリプト言語のサポート( Beanshell(JSR 274) JRuby Jython Groovy(JSR 241) JavaFX Script ) …
サンプルはJavaで。 インクリメントしていった際に循環するINDEX int index; // 配列のindex int[] buffer = new int[3]; // 配列(長さ3) /* * (index + 1) が 3以上になった場合は、 * 配列の長さ(3)の剰余をとる。 */ index = (index + 1) % buffer.length…
SWTのリスナの挙動について。同じリスナインスタンスを同じイベントタイプでaddしていった場合、addした順に1つずつ削除されるみたい。 final Button button1 = new Button(shell, SWT.NONE); button1.setText("button1"); button1.setBounds(10, 10, 100, …
当記事はJavaのBigDecimalのaddは戻り値を代入する必要がある | Think Twiceへ移管しました。
ファイルリストを取得するときに「名前は〜Aで始まって〜」とかいう条件でフィルタリングすることがよくある。 そんな際に使えそうなのが以下。 先頭がAで始まるファイルのリストを取得 /* フィルタ作成 */ FilenameFilter filter = new FilenameFilter() { …
ログなどにクラス名、メソッド名、行番号などを出力したい場合がある。 エラーや例外が発生した場合はスタックトレース情報が得られるので そいつを拝借すればどこのクラスの何行目でエラーが発生したのかを ログに出力させることができるが、エラーや例外で…
英語だけど、多方面のサンプルが豊富。 Javaやその他言語も揃ってる。 仕事でSWTをいじらなきゃいけない私にとっては 解析の余地ありまくりなサイトである。 Programming tutorials and source code examples
仕事でSWTをやることになったので、調べている最中。 とりあえず、サンプル集を探る。 SWT SWT: The Standard Widget Toolkit 本家(英文) FrontPage - SWTサンプル集 JFace Software Error
仕事で直しているシステムを外人さーんが使うことになって、 ・月曜日を週初めにしたい! ・指定した日の週初めの日を取得したい! という要望がありました。 JavaのCalendarクラスで上のような要望に答えるためには、 以下のようにすればいいみたい。 Calen…
仕事でJavaScriptの文字列をエスケープするロジックを Javaで書く機会があった。JavaScriptの文字列は文字列の中にダブルクォート(")や シングルクォート(')があると、それ自体が文字列構成構文要素 となるため、重なる場合、バックスラッシュ(\)でエスケー…