読者です 読者をやめる 読者になる 読者になる

うさがにっき

読書感想文とプログラムのこと書いてきます

Retrolamda, RxAndroidを使ったJava8っぽいAndroidコーディングはへっぽこアンドロイダーにも恩恵をもたらすのか?(RxAndroid編)

概要 Retrolamda, RxAndroidを使ったJava8っぽいAndroidコーディングはへっぽこアンドロイダーにも恩恵をもたらすのか?(RxJava詳細編) - うさがにっき の続きRxJavaをAndroid用にカスタマイズしたRxAndroidについてどのような特徴があるが調べる 詳細 RxAnd…

拡張for文のパフォーマンスについて

概要 昔拡張for文を使ったほうがパフォーマンスがいいと指摘されたことがあった その時は「そーなんだ」としか思わなかったが今になって考えると疑問が色々あるので調べてみた 結論 LinkedList系のポインタを使ったアクセス系は拡張for文を使った方が圧倒的…

スレッドあれこれ

概要 スレッドについて以下の二点についてまとめる スレッドプール スレッドの処理結果をメインスレッドで受け取る 詳細 スレッドプール アプリで使用するスレッドをあらかじめ用意しておいて、必要に応じて使う スレッドプールを使うにはjava.util.concurre…

synchronized以外の同期処理

概要 synchronizedメソッド、ブロックを使えばスレッド間の同期処理が実現できる しかし、手軽に利用できる反面メソッドを跨いだ同期処理や、簡単な演算処理でもオーバーヘッドが大きかったりする そのため、今回はsynchronized以外の同期処理をまとめる 詳…

AndroidにおけるXML、jsonパース処理

概要 Androidにおける通信処理 - うさがにっきtiro105.hateblo.jp とかで取得したxmlデータを、AndroidでXMLパース処理する方法をまとめる 詳細 xmlパース処理 現在のnodeを確認して、xmlを解析していく public class HttpTestGet extends AsyncTask<Void, Void, String> { TextV</void,>…

Androidにおける通信処理

概要 Androidにおける通信処理のやり方をまとめる 詳細 HttpGet, DefaltHttpClient等はAPI22で非推奨になっているためURLクラスのopenConnection()メソッドを使ったやり方でまとめる openConnection()では通信をInputStreamで扱うため、それについては以下を…

シリアライズ、デシリアライズについて

概要 Preferenceなどに保存するときにオブジェクトがシリアライズしてある必要がある このシリアライズが実際に何をしているかを説明する 詳細 シリアライズ(Serialize)とは、オブジェクトのような構造データをバイト単位で読み書きできるバイト配列に変換す…

Androidにおけるファイル入出力

概要 Androidにおけるファイル入出力をまとめる 詳細 Androidにおけるファイル入出力も基本的にはJavaと同じ 以下のメソッドを使って行う テキストファイルの読み書き FIleReader FIleWriter バイナリファイルの読み書き FileInputStream FileOutputStream …

Genericsについて

概要 Genericsについて全然よくわかってなかったのでまとめる 詳細 ジェネリックス定義の基本 型パラメータを宣言する ジェネリック型では特定の型を受け取るための型パラメータを宣言しなければいけない public class HashMap<K, V> 型パラメータとはで囲まれた型</k,>…

Dequeについて

概要 Stackが気が付いたら非推奨となっていたのでその代わりとなっているDequeについてまとめる 詳細 Dequeは両端キューとも呼ばれ、リストの先頭/末尾両方から要素を追加/削除できるキュー構造 Dequeを利用することで、キュー構造と合わせてスタックを表現…

Collectionについて

概要 Collectionについてモヤモヤしてたところをまとめる Collection (Java Platform SE 6) 詳細 配列とCollectionの相互変換 配列からCollection(List)に変換するにはArrays.asListを利用する String[] str = {"1", "2", "3"}; List<String> list = Arrays.asList(s</string>…

ネストクラスについて

概要 ネストクラスについてもやもやしていたところをまとめる 詳細 親クラスのことをエンクロージングクラス、子クラスのことをネストクラスという ネストクラスは以下の4つにわけられる staticメンバークラス 非staticメンバークラス 匿名クラス ローカル…

cloneメソッドについて

概要 オブジェクトを複製するcloneメソッドについて知らなかったことを書く 詳細 cloneメソッド オブジェクトを複製する際以下のようなコードを書くとバグる Book b1 = new Book("Java入門", 3000); Book b2 = b1; System.out.println(b2.toString()); // 結…

例外処理について

概要 Javaの例外処理について知らなかったことをまとめる 詳細 検査例外と非検査例外 例外には非検査例外と検査例外がある 非検査例外 RuntimeException派生クラス 検査例外 それ以外の例外クラス このうちthrows句による宣言が必要あるのは、検査例外だけ …