• ベストアンサー

Javaのlong型の最大桁数について

外部ライブラリーを使ってEclipseで開発をしています。 long型に入る数字の最大桁数(最大値)についてですが、 19桁位(2の63乗)入るのでは?(本、ネット調べ) 現在開発中の外部APIのメッソドで public void setId(long Id); とあり このId=2999999999 の10桁の数字をDB(MySQL)にセットできるメッソドです。 しかしlong型の範囲外です。とエラーが出ています。 long型について調べてみましたがlong型に10桁の数字が代入できません。 どうすればlong型に10桁の数字を代入出来るか教えてください。 宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

Lをつけないとintと判断されるので数値範囲エラーになりますよ。 http://www2.ocn.ne.jp/~notes/java/java5.html

marugori
質問者

お礼

ありがとうございます。 初めて知りました。 初歩的なことみたいですね。(本には載っていないのに…) 解決できました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

L はついてる?

marugori
質問者

補足

すみません。Lとは?教えて下さい(Long型ではないです。) 一度String型で宣言してその後、longにキャストしてみました。 一応エラーは出てなくなったのですが、こんなに手間がかかるのでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 有効桁数について

    ある数値を5回測定したとします A 5.039 B 5.075 C 5.092 D 5.064 E 5.058 有効桁数はすべて4桁ですよね? 次にA~Eの平均を取ると (A+B+C+D+E)/5=5.0656 と関数電卓で結果がでますが、4桁に丸めて5.066とすれば有効桁数の扱い方としては問題ないですか? そしてA~Eの平均の2乗をするときは、上記の平均を有効桁数4桁に丸めた5.066を2乗して (5.066)^2=25.664356 となり、そして5.066の有効桁数4桁に合わして25.66とすればいいのでしょうか? それとも平均の値を4桁に丸める前の電卓で出た値のまま2乗した後、最終的に4桁に丸めるのがいいのでしょうか?この数値だとどちらでやっても4桁にした値は変わりませんが・・・ 有効桁数の扱い方で問題があったら教えてください、また平均の2乗を求めるときはどちらが正しいのでしょうか? (平均の値の2乗は平均×平均なのだから平均の値を4桁にせず5桁として計算すると平均の2乗は有効桁数5桁と考えるので、やはり正しく平均の値を測定値の有効桁数4桁に丸めて出した平均の値を2乗する方が正しいですかね・・・)    また、上記の平均の計算をしたときのよな、「5」などの数字の有効桁数は何桁ですか?1桁なんでしょうか?もし1桁なら割り算をしているので有効桁数はいちばん桁数の少ないものに合わせるので有効桁数1となると平均の値が「5」となりおかしいとおもうんですが・・・ 上記の平均を取ったときの「5」や、測定回数の数値や、測定していない数で100で割れと書いてあったりしたときは、それらの数字の桁数も考えなければならないんでしょうか? 読みづらい文章かもしれませんが、ご回答待っています。

  • 任意の桁数を表示するには?

    配列の中に格納されている桁に応じて表示のしかたを変えたいのです。 最大で3桁の数字が入っていたら、3桁表示に、 最大で5桁の数字が入っていたら、5桁表示に、 つまり int a[]={1,100,1,1}; の時は printf("%3.d "); と表示し、 int a[]={1,100,1,10000}; の時は printf("%5.d "); と表示するように、桁数に応じて%x.dのxの部分を変更したいんです。 どうしたらいいでしょうか。

  • エクセルVBA 数値の桁数を揃え、つなぎたい

    エクセルVBA、初心者です。 以下の記述でつまづいています。 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ Dim i As Long 'i は行数を For~Nextで変数にしてます Dim Hbc As Long, Hbc2 As Long 'Hbc は最大11桁の変数 Dim Tsc As Long, Tsc2 As Long 'Tsc は最大5桁の変数 Dim Cd As Long, Cd2 As Long 'Cd は最大4桁の変数 Dim HTC As Long      |      |    長い為、省略      |      | Hbc2 = 100000000000 + Hbc '(1) Tsc2 = 100000 + Tsc Cd2 = 10000 + Cd HTC = Right(Hbc2, 11, 11) & Right(Tsc2, 5, 5) & Right(Cd2, 4, 4) Wks1.Cells(i, 1).Value = HTC ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ Hbc、Tsc、Cd は、データベースから取得した数値が入りますが、 桁数がバラバラな為、頭に0を表示してそれぞれの最大桁数に揃えたいのです。 桁数を揃えた後、3つをつないで HTC とし、i 行目の1列目に表示しようとしています。 下記がつまづいて、解決できないでいるトコロです。 ************問題点************ (1)の行の Hbc2 = 100000000000 + Hbc という記述が Hbc2 = 10000000000# + Hbc に置き換わってしまいます。 *************************** なにぶん、初心者で、単純な間違いかもしれませんが、 どうかご指導、宜しくお願いします。

  • COBOL85の連結領域の最大桁数について

    いつもお世話になります。標題についてお知恵を拝借下さい。 NEC製のCOBOL85で開発を行っています。 その際に連結領域を利用していますが、ここに定義されている項目へアクセスを行うと、セグメント境界外のアクセスエラーが発生します。 変更前の連結領域では、約32000桁使用しており(正確には調べられませんでした)、ここへ、2970桁を追加する修正を行っています。 この追加した部分にアクセスすると、上記エラーが発生するようです。 変更を行う前は当然ながら、正常に動作していますので、連結領域の最大定義桁数を超えてしまった為だと推測しました。 ここでお聞きしたいのは、連結領域は何桁までという情報を知りたいです。 ご存知の方、ご誘導をお願いできますでしょうか。 PS.当方、浅はかな知識ながら、MAX32768桁ではないかと推測しています。

  • WORDの段落番号の桁数について

    WORD2003を使用して横書きで文章を作成しています。 用紙左端に段落番号を付けて(「書式」→「段落番号」で設定)いるのですが、それについて質問します。 段落番号は、[0001]~最大[9999]といったように4桁の数字で表記されるように、デフォルトで入っていたものを[0001]と「変更」したのですが、 連番が9から10(2桁)になると、 [0009] [00010] と、4桁から5桁へと桁数が増えてしまいます。 [0010]となるように[00010]にカーソルを合わせて段落番号の「変更」をすると、 その前の[0001]~[0009]が[001]~[009](4桁から3桁)になってしまいます。 「段落番号の書式設定」で「番号の種類」で「01,02,03…」の選択も試してみましたが、うまくできません。 ("10"以上になると桁数が増えてしまいます) 良い修正方法があれば教えてください。 現在は、やむを得ずオートにせず手入力しています。

  • ACCESSVBAで桁数を調べたい

    フォーム作成し、テキストボックスに数字を入力してコマンドボタンをクリックすると、入力してある桁数をメッセージボックスに出力するように、以下のコードを書きました。 テキストボックスに11ケタ以上の数字を入れたら、『オーバーフロー』のエラーになります。データ型を「通貨」にしても同じです。 どうしたら、11ケタ以上の数値が調べれますか? Private Sub コマンド2_Click() Dim dat As Long '桁を調べるデータ Dim cnt As Integer '10で割った回数 '変数の初期化 dat = CLng(Me!テキスト0) cnt = 0 '10で割り算 Do While dat > 0 dat = dat \ 10 '10で割る cnt = cnt + 1 '回数を数える Loop msgbox cnt & "桁", vbOKOnly, "繰り返し" End Sub

  • 有効数字の桁数と平均操作

    http://oshiete1.goo.ne.jp/qa4080175.html この質問に答えようと思っていましたが締め切られてしまいましたので私の質問として書かせていただきます。 元の質問は10個の測定データがあるとき平均値の有効桁数はいくらかというものです。参考のためにデータを載せておきます。 92.0mm  91.5mm  91.0mm  97.0mm  93.0mm 94.0mm  92.0mm  93.0mm  92.0mm  92.5mm 個々のデータを見れば有効桁数3桁のように見えますがデータごとのばらつきが大きいです。2桁目でばらついています。最大の値と最小の値で6.0も幅があります。データの信頼性で言えば有効数字は2桁だと思います。小数点下第一位の数値は全く信頼性のない値です。 この質問のA#1の参考URLにも書かれていますが 測定を10回繰り返すということをやれば平均値の有効桁は測定の有効桁よりも1つ増やすことが出来ます。 問題はこの測定値の有効桁がいくらかということです。 私は10個のデータの有効桁は2桁だと思います。個々のデータを3桁で測ったということがデータの有効桁を表しているのではないと考えます。 したがって平均値は92.80ではなく92.8が正しいと思います。 (でも質問者様は92.80が正しいということで納得してしまわれたようです。) 統計に詳しい方がおられて回答をもらえるといいのですが。

  • MySQLのテーブル設計で迷っています(桁数)

    MySQLのテーブル設計で迷っています。 クリエイト文のカッコの中は桁数を表しているのでしょうか?それともバイト数でしょうか?桁数であれば、それぞれの型で何桁まで設定できますでしょうか? int型のnoを18桁に変更したいのですが、調べているうちに迷ってしまいました。 型 バイト 最小値 最大値 TINYINT 1 -128 127 SMALLINT 2 -32768 32767 MEDIUMINT 3 -8388608 8388607 INT 4 -2147483648 2147483647 BIGINT 8 -9223372036854775808 9223372036854775807 CREATE TABLE `user` ( `no` int(8) unsigned NOT NULL auto_increment, `id` varchar(24) NOT NULL default '', `email` varchar(255) NOT NULL default '', `reg_date` datetime NOT NULL default '0000-00-00 00:00:00', PRIMARY KEY (`no`) ) TYPE=MyISAM;

    • ベストアンサー
    • MySQL
  • 物理のこの計算が出来ないので、計算のやり方を教えて

    物理のこの計算が出来ないので、計算のやり方を教えてもらいたいです。 次の測定値の有効数字は何桁か。桁数を答えよ。 (1)1.60×10-19乗c (2)21000g (3)1.010cal (4)8.00m (5)2536×10八乗mm (6) 1.01kg

  • JavaAPIのパラメータについて

    外部ライブラリのAPIを使って開発をしています。 環境はJavaでRMIで構築しています。 メソッドのパラメータの型について質問です。 画像を指定するメソッドだと思われるんですがbyte メッソド名 public void saveImageData(java.lang.String[] imageName) [質問] 例えば"Picture.jpg"という画像を指定をしたい時、 String[] imageName="Picture.jpg" と、指定すればエラーがでます。 nullしか代入できません。 String[]型にどのように値を入れたらいいのか教えて下さい。 外国のドキュメントで内容がかなり荒く、手探りで開発していいるので わかりにくい質問かと思いますがどうぞ宜しくお願いします。

    • ベストアンサー
    • Java
このQ&Aのポイント
  • ブラザー製品のHL-2370DNで印刷設定で正順逆順の設定方法を教えてください。
  • 質問者はブラザー製品のHL-2370DNで印刷設定において正順逆順の設定方法について知りたいです。
  • HL-2370DNの印刷設定について、正順逆順の設定方法を教えてください。
回答を見る