タグ

2011年8月27日のブックマーク (8件)

  • Excelの表を罫線ごとテキストに変換する

    テキストファイル上で表組みを表したい場合、「┌」や「┬」といった外字を用いて罫線を作る方法がある。例えばメール文の中に表を挿入したい場合など、数行程度のちょっとした表であれば、これでじゅうぶんに表組みであることが伝えられる。いちいちExcelファイルを参照してもらわなくても済むというわけだ。

    Excelの表を罫線ごとテキストに変換する
  • strictfpとは : JavaA2Z

    浮動小数点を必ずIEEE754で扱うための予約語。 クラスもしくはメソッドを修飾することで、そのクラス内及びメソッド内での浮動小数点の扱いは、必ずIEEE754の仕様に則ったものとなる。 逆に言うと、strictfpで修飾されていない場合、厳密にIEEE754の仕様に則っていない場合がある。これは、浮動小数点の計算は、実際にはJavaではなくCPUが行い、浮動小数点の計算結果がCPUの仕様に依存するためである。 strictfpはこの問題を解決し、常にIEEE754の仕様に則った結果をもたらす。ただし、そこまでこだわるのであれば、動作速度が許せばBigDecimalクラスを使用した方がいいだろう。 // Sample.java public class Sample { public static void main( String[] args ) { Sample sample = n

  • Oracle Blogs

    Oracle Blogs

    ryoasai
    ryoasai 2011/08/27
    知らなかったですが、Java5からはC99のような16進浮動小数リテラルがいつのまにかサポートされている。
  • 実数値を16進数表記するメソッドを作るには

    数値を16進数表記したい場合、int型ではInteger.toHexStringメソッドを、long型ではLong.toHexStringメソッドが利用できます。基数16の符号なし整数が文字列として返されるので、もし、10進数の「-10」→16進数の「-A」というように、負の数のときはマイナス符号を付けた形式にしたければ、下図のような小さなメソッドを作ると便利です。 しかし、実数型においてはこのようなメソッドはありません(※)。よって、10進数の「-255.5」→16進数の「-ff.8」というように、小数点を含む数値を16進数表記したり、long型の範囲を超える値を16進数表記するには、このような機能を持つクラスライブラリを探し求めるか、自前で作成することになります。手順は以下のとおりです。 整数部を基数(16)で割った余りを得て16進数化し、この整数商に対して同様の手順を、整数商が0にな

    実数値を16進数表記するメソッドを作るには
  • 浮動小数点数

    (過去問題から憶える) 数値を16ビットの浮動小数点表示法で表現する。形式は図に示すとおりである。10進数0.375を正規化した表現はどれか。ここでの正規化は,仮数部の有効数字よりも上位の0がなくなるように指数部を調節する操作である。(H9 秋 問13) S:仮数部の符号(正は0,負は1) E:2のべき乗の指数部で,負数は2の補数 M:仮数部の絶対値 【解説】 10進数0.375を2進数に変換する。 【クレバー方式】 10進数→2進数 小数部とくれば 2を掛けろ 0.375×2=0.75 0.75 ×2=1.5 0.5  ×2=1.0 10進数0.375を2進数に基数変換すると,0.011。 浮動小数点数で表現すると,0.011×20。 ここでの正規化は,仮数部の有効数字よりも上位の0がなくなるように指数部を調節するとあるので,正規化すると0.11×2−1。

  • How to get 0-padded binary representation of an integer in java?

    for example, for 1, 2, 128, 256 the output can be (16 digits): 0000000000000001 0000000000000010 0000000010000000 0000000100000000 I tried String.format("%16s", Integer.toBinaryString(1)); it puts spaces for left-padding: ` 1' How to put 0s for padding. I couldn't find it in Formatter. Is there another way to do it? P.S. this post describes how to format integers with left 0-padding, but it is not

    How to get 0-padded binary representation of an integer in java?
  • Java書式付き出力メモ(Hishidama's Java Formatter/Formattable Memo)

    第一引数で書式を指定し、その書式に則って第二引数以降の値を編集(変換)して出力する。 (第二引数以降の値は、可変長引数で複数指定できる) System.out.printf("値1=%d 値2=%d", 123, 456); String s = String.format("%04x", 789); 書式には「%」が入った文字列を指定する。「%」の書式指定に従って変換が行われる。 デフォルトでは、複数の%指定がある場合、第二引数以降の値が順番に使われる。 引数が多い分には無視されるだけなので別に構わないが、指定に該当する引数が足りないと例外が発生する。 変換の実体はFormatterクラスにある。 したがってどのような書式があるかについてはFormatterJavadocに載っているが、代表的なのは以下のようなもの。 C言語と同様の書式指定 書式 説明 例

  • lombokでJavaのコード量を減らす

    Java言語を忌避している方の中には「Javaは他言語にくらべてコード記載量が多くなりガチだから嫌だ!」という主張をされる方がよくいます。 もちろん私も全くの同感ですが、Javaの言語的・環境的な優位点もいくつかあるため仕事で使用することが多く、その上でできるなら楽をしてプログ...