小技

GL-04PをSoftbankの回線で使う

旧イー・モバイルから発売されていた SIM フリーの WiFi ルータ GL-04P*1。 これを、Y! Mobile のシェアプランで契約した SIM (回線は Softbank です)で使うことができたので、その接続手順まとめです。 (ネットに成功例がなかったのですが、ダメもとで試…

Enumerationを拡張for文で使う

たまに、Java の Enumeration を使ったサンプルを見かけることがありますが、その大半が Iterator と同じようなアクセスの仕方をしています。 NetworkInterface nic = NetworkInterface.getByName("eth0"); Enumeration<InetAddress> nicAddress = nic.getInetAddresses()</inetaddress>…

サクラエディタでソートする

サクラエディタでソートができないかどうかいろいろ工夫してみたら、できました。 手順 「ツール」−「外部コマンド実行」をクリック 名前に「sort」と入力、「標準入力に送る」をチェック、「編集中のウィンドウ」を選択(次回以降は、これがデフォルトにな…

チケットの書き方(我流)

自分が今いるチームは、3か月半ぐらい前にTracを導入して、チケット駆動開発に移行しました。 今では、チケットを中心に作業を進め、進捗の報告もチケット上で行っています。 そんなチケットですが、より作業がスムーズに進むよう3タイプの人を意識して書く…

コミットコメントの書き方(続き)

先日のコミットコメントの書き方(我流)に対して、twitter でコメントをいただきました。 BTS連携があればチケット番号も [subversion]いいね! 僕はBTSと連携させることが多いので、太括弧【】の部分がチケット番号 #XX になりまする。連携できないときはこ…

コミットコメントの書き方(我流)

Subversionのコミットコメントは、人によって多々書き方が違います。 ただ、後でコミットの内容を確認した時に 何も書かれていなかった 書いてあっても一行だけだった となっていて、詳細が分からず、本人に聞いたりドキュメントを探して確認する羽目になっ…

XKeymacsでWindowsキーバインドとEmacsキーバインドを併用する方法

日ごろ、職場でも自宅でも XKeymacs で Emacs キーバインドを使いまくってます。 このソフトのおかげで、プログラム書くのもドキュメント書くのも1.2倍ぐらい速く進みます(^^;) (頭が追いついてないですが w) そんな、もはや手放せなくなった XKeyma…

拡張for文と匿名配列

あまり見かけないけど個人的に好んでつかうJavaのイディオムが拡張for文と匿名配列の組み合わせ。 for(String str : new String[]{"aaa", "bbb", "ccc"}){ System.out.println(str); } テストコードとかで、順番に値をチェックしたいときに使っています。 配…

文字列を == で比較してもいい例

昨日、トリムされているかの判定処理を書いていて気付いたのですが…。 Javaでは、文字列比較に == を使ってはいけないのが常識。 でも、以下の場合は == を使ってもOKです。 /** * トリムされている(両端が空白でない)かどうか判定します。 * * @param str …

SPANやDIVでStrutsのerrorStyleClassみたいなことをする方法

Strutsのhtmlタグは、「エラーがあった時のみ適用されるスタイル」というのを指定することができます。 <html:text property="name" styleClass="textbox" errorStyleClass="textbox error" /> これ普通のSPANやDIVでもできないかな・・・と、いろいろ考えてみました。 結局、思いついた一番ベストな方法はこれ。 <span style="textbox<logic:messagesPresent property="name"> error</logic:messagesPresent>" /> 指定したプロパティ…

文字を * に置換する(for文なしで)

他の人のソースを見ていたら、こんなのがありました。 String str = ""; for(int i = 0; i < input.length(); i++){ str += '*'; } 入力された文字を * に置き換える処理です。 でも、よく考えたらこれ、for文いらないですよね・・・。 char[] buf = new cha…

aタグ以外にもフォーカスは当てられる

以前、Add Tab Index for Googleを作っていたときに、こんなバグがありました。 なんでこんなところにフォーカスが・・・。 不思議に思って調べてみたところ、フォーカスを当てられるのはaタグに限らないそうです。 もっと言うと、どのタグにもフォーカスは…

document.getElementsByClassNameがネイティブ実装されている

クラス名でDOM要素を取得できれば便利なのに・・・と思っていたらあったんですね。 Document.getElementsByClassName() - Web API | MDN JavaScriptライブラリがなくても、IE8以外の最新の(HTML5ドラフトに対応している)ブラウザではなにもせずに使えるみた…

サーバをすばやく発見する方法

この前の壊れたサーバにOSを再インストールするためにサーバルームへ。 ところが、識別シールの情報が古くてそのサーバがどれかが分からない・・・。 最初はリモートでビープ音を鳴らせないかと思ったんですが、これが意外とやっかい。 もし鳴らせたとしても…

Listから配列への無駄のない変換

今日、ふと思ったこと。 よくJavaでListから配列への変換の方法としてこういうやり方が紹介されています。 list.toArray(new String[0]); 変換の際に型を指定する必要があるから、引数に中身が0個の配列を渡す。 でも、ここで生成しているオブジェクトはすぐ…

Javaの公式APIドキュメントを簡単に検索する方法

JavaのAPIドキュメントを検索しようにも、そのページに検索機能がないし、 かといって普通にググると古いJavaSE 1.4のドキュメントがひっかかたりと何かと不便。 そこで、Firefoxのロケーションバーで「java (調べたいクラス)」って入力すると一発で検索でき…

TimeUnitが便利

Javaで1時間をミリ秒で指定する場合、 long millis = 1*60*60*1000; と書いていたけど、なんか分かりづらい・・・。 1時間を指定しているはずが、後ろの部分が目立ってよく分からないです。 でも、TimeUnitを使うと、 long millis = TimeUnit.HOURS.toMillis…

VisualBasicは「変数名に日本語が使える」言語。

これは結構有名なのか、ごくたまに日本語を変数名に使ってるのを見たりする。 Sub main() Dim 変数名 As String 変数名 = "日本語も可" MsgBox 変数名 End Sub Javaでも同じことができるけど、こっちは見たことがない。 public class Test { public static v…

String.isEmpty()

JavaのStringクラスにisEmpty()なんてのがあるのを知った。 String.isEmpty() (Java Platform SE 6) public void check(String test){ if(test == null || test.isEmpty()){ throw new IllegalArgumentException(); } System.out.println("Not empty."); } J…