タグ

javaと*Tipsに関するsatoshieのブックマーク (12)

  • JavaでUserAgentを変える - 気紛 - きまぐれ -

    JavaUserAgentを変えようとしたが、 System.setProperty("http.agent","Mozilla/5.0 (Macintosh; U; Intel Mac OS X; ja-JP-mac; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6"); でやってもちゃんと設定できていないようだ。そこで、URLConnectionのsetRequestProperty()を使ったらちゃんとできた。 具体的にはこんな感じ。 URL url = new URL("http://example.com"); URLConnection urlcon = url.openConnection(); urlcon.setRequestProperty("User-Agent","Mozilla/5.0 (Macintosh; U; Inte

    JavaでUserAgentを変える - 気紛 - きまぐれ -
  • Javaでリストと配列を変換、コピーする方法(まとめ) - 地平線に行く

    Javaで、たまにリストと配列を変換したり、コピーしたりするときがあります。 でも意外とやろうとするたびに忘れてしまうので、ざっとまとめてみました。 (解説を分かりやすくするために、ジェネリクスを使用していません) リスト から 配列(変換) public static String[] convert(List<String> list){ return list.toArray(new String[list.size()]); } toArray の引数は、new String[0]でもかまいませんが、 あらかじめサイズが確定している場合は、そのサイズで配列を作っておいた方がわずかながら効率が良くなります。 Listから配列への無駄のない変換 - 地平線に行く リスト から リスト(コピー) public static List<String> copy(List<String> l

    Javaでリストと配列を変換、コピーする方法(まとめ) - 地平線に行く
  • Java定数メモ(Hishidama's Java Constant Memo)

    エスケープシーケンスとUnicodeエスケープは似て非なるもの。[2008-08-30] →処理の差異 不変の変数 finalで宣言して初期値を与えた変数は、定数として扱える。[2008-06-22] なお、定数として扱う場合は、変数名は全て大文字にするのが慣例。 public static final int BASE_YEAR = 1970; この変数には後から値を代入することが出来ない。(finalが付いていると、代入できなくなる) 代入できない→値が不変(固定)→定数 →switch文で使う場合の注意 →他言語の定数の定義方法 ただし、オブジェクト(参照型)の場合は、必ずしも固定(不変)というわけではない。 final Map SAMPLE_MAP = new HashMap(); 変数SAMPLE_MAPには新しいMapを代入することは出来ない。しかしSAMPLE_MAP内に値を

  • HttpURLConnectionにタイムアウトを設定する - 東洋黒客は勇者である

    グーグル先生に聞いても、HttpURLConnectionのタイムアウトについて1.4以前の情報がヒットしまくってうざいのでここにメモ。 簡単にいうとHttpURLConnectionにタイムアウトを設定するのにJDK1.4までは面倒な設定が必要だったけど 1.5では簡単になったというわけ。 JDKのマニュアルを見てもロクにタイムアウトデフォルト値すら書いてないし このメソッドの非標準実装のなかには、指定されたタイムアウトを無視するものもあります。 みたいな(゚Д゚)ハァ?な記述もあるし・・ import java.net.HttpURLConnection; import java.net.URL; public class AnalyzHttpConnection { public static void main(String args[]) { URL url; try { url

    HttpURLConnectionにタイムアウトを設定する - 東洋黒客は勇者である
  • Java8のStreamを使いこなす - きしだのHatena

    さて、Java8で関数型っぽいことをやって遊んでみたわけですが、実際はそんな書き方しませんよね。 Java8で実際に使うのは、Streamです。 ということで、Streamの使い方をひととおり見てみます。 ※5/17 仕様変更があったので、修正しました 基 まずは、Iterableインタフェースに用意されたforEachメソッドを見てみましょう。 List<String> names = Arrays.asList("hoge hoge", "foo bar", "naoki", "kishida"); names.forEach(s -> System.out.println(s)); これで次のように表示されます。 hoge hoge foo bar naoki kishida いままでの拡張forだと次のように書いてました List<String> names = Arrays.a

    Java8のStreamを使いこなす - きしだのHatena
  • IntelliJ IDEAでserialVersionUIDを生成する - Qiita

    設定 IntelliJ IDEAのPreference / SettingsからEditor - Inspectionsを選択し、Serialization IssuesのSerializable class without 'serialVersionUID'にチェックを入れます。 こんな感じ。 実際にSerializableインタフェースを実装するクラスを作成し、クラス名上でAlt + EnterでShow Intention Actionsを表示すると、以下の様にAdd 'serialVersionUID' fieldという選択肢が出てきます。 選択すると、(そりゃそうなんだけど) serialVersionUIDのフィールドを作成してくれます。 参考 java - IntelliJ Idea generating serialVersionUID - Stack Overflow

    IntelliJ IDEAでserialVersionUIDを生成する - Qiita
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

  • Javaで「PHPのjoin」的な文字列結合を実現する方法メモ

    「文字列の配列」を、「カンマなどの特定の文字列で区切って列挙した文字列」に変換する。PHPjoin関数は、この操作を簡単に実現できます。これと同じ操作が、Javaでは用意されていないのか調べたのでメモ。 目次 1. PHPjoin2. Javaの場合は「StringUtils.join」を使う3. ライブラリの利用方法3.1. 公式ページからダウンロードする場合3.2. Mavenの場合4. 参考5. ひとこと スポンサーリンク PHPjoin PHPjoinは、区切り文字と、配列を受け取って、結合した文字列を返します。 $pieces = array('a', 'b', 'c', 'd'); echo join(',', $pieces); // 出力:「a,b,c,d」 いかにも頻繁に使いそうな関数です。 Javaの場合は「StringUtils.join」を使う Javaでこ

    Javaで「PHPのjoin」的な文字列結合を実現する方法メモ
  • Listから配列への変換,配列からListへの変換

    for文で繰返さなくてもjava.util.Collection.toArray(Object[])メソッドを使えばListから配列へ一気に変換することができる.ちなみにtoArrayの引数は変換先の配列の一つ目のデータである.引数のないtoArray()メソッドを使うとClassCastExceptionが発生する. import java.util.List; import java.util.ArrayList; public class Sam{ public static void main(String[] args){ List list=new ArrayList(); list.add(new String("foo")); list.add(new String("bar")); list.add(new String("baz")); String[] array=(

  • http://www.itarchitect.jp/beginners/-/45549-3.html

  • 配列とコレクション間の相互変換を行う

    複数要素で構成されるデータをJavaで扱う場合は、配列またはCollectionインターフェイスを持つクラスを使用するのが一般的です。Collectionインターフェイスを持つクラスには、java.util.ArrayListやjava.util.HashSetなどがあります。 配列は要素数が固定となりますが、使用メモリが少ないという特徴があります。他方、Collectionインターフェイスを持つクラスは配列よりも使用メモリが多くなりますが、要素を自由に追加・削除できるという特徴があります。プログラムを記述する際は、それぞれの特徴を考えてどちらを使用するか決定することができます。 しかし、ライブラリのメソッドに複数要素のデータを渡す場合、渡すべきデータを保持している型と、ライブラリのメソッドの引数の型が異なるため、型変換が必要になることがあります。稿ではそうした場合に対応できるよう、配列

    配列とコレクション間の相互変換を行う
  • Java: メソッドの呼び出し元を調べる方法 - toyfish.blog

    メソッドが「どこから呼ばれたか」を調べる方法についてのメモ。 Throwable#getStackTrace() Java 1.4 で、java.lang.Throwable クラスに getStackTrace() メソッドが追加された。これを呼ぶことで、例外スタックトレースの内容を取得することができる。 返されるのは java.lang.StackTraceElement[] で、0 番目が現在実行中のメソッド自身、1 番目が呼び出し元のメソッドを示す。例えば、次のようにして、呼び出し元のクラス名とメソッド名を出力することができる。 StackTraceElement e = new Exception().getStackTrace()[1]; System.out.println(e.getClassName() + "," + e.getMethodName()); ただし、いく

    Java: メソッドの呼び出し元を調べる方法 - toyfish.blog
  • 1