1 名前:デフォルトの名無しさん mailto:sage [2016/11/11(金) 20:25:11.04 ID:zFksT2Ki.net] Java初心者のためのスレッドです。 ※前スレ Java入門・初心者質問スレ echo.2ch.net/test/read.cgi/tech/1462997913/
83 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 18:40:26.32 ID:WlJHS2BC.net] >>81 Exception in thread "main" java.lang.Error: Unresolved compilation problem: 処理されない例外の型 IOException 簡略化したArrays.stream(array).forEach(x -> bw.write(x)); でもエラーになるので根本的に使い方を間違っている感じがします おまけにこれで書けたとしてもnewLineが書けないですよね
84 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 19:13:20.96 ID:2l44vQ0O.net] >83 main に throws Exception を書いとけば? public static void main(String[] args) throws Exception
85 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 19:49:01.45 ID:WlJHS2BC.net] >>84 こちらでは解決しませんが そちらの環境ではエラー消えますか? 改行と書き込みを行うwrite(BufferedWriter bw, String str)メソッドを作成して Arrays.stream(array).forEach(x -> write(bw, x))から呼び出せば 動作するのはわかったのですが、出来れば分割したくありません
86 名前:デフォルトの名無しさん mailto:sage [2016/12/03(土) 23:59:44.58 ID:hgmu3ScG.net] 長くなるが、こうだ。 Arrays.stream(array).forEach(x -> { try { bw.write(x); } catch (IOException e) { e.printStack
87 名前:Trace(); } }); サンプル https://paiza.io/projects/mQUV1ao9f2lGajsPfUQlpg [] [ここ壊れてます]
88 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 19:44:01.58 ID:7DvwJVFy.net] >>86 おおー、ありがとうございます forEachの中を{}で括ることで複数処理を書けるんですね 処理が1行であれば{}を省略できるだけな事を知りませんでした ちなみに、複数行処理はmapなどの中間操作でも使えますか? ためしに次のようなコードを書いてみたところ、型推論が上手く出来ない感じでエラーになるのですが https://paiza.io/projects/9MR0Rm40osn4TMXVOVQPog
89 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 21:10:34.51 ID:dK8nOpyX.net] return まずStreamよりlambda式を完璧に覚えた方が良くはありませんでしょうか
90 名前:デフォルトの名無しさん mailto:sage [2016/12/04(日) 21:36:25.09 ID:7DvwJVFy.net] >>88 ありがとうございます ラムダ式の文法を調べたら自分が引っかかっていた部分が全て書いてありました まずはこちらを勉強します
91 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 19:17:36.58 ID:AM+X22VM.net] サブクラスのインスタンスをスーパークラス型の参照変数で参照するのって、どういうメリットがあるんでしょうか? 機能を制限してるだけのように見えるんですが。
92 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 19:42:21.31 ID:yS9rSl8q.net] >>90 スーパークラスが同じなら違うサブクラスでも同じように扱える。 例えば Object クラスは全てのクラスのスーパークラスなので Object クラスの配列に色々なクラスのインスタンスを入れておいてループさせて頭から全てに対して toString() やらせたりなんてことができる。 この時全てのインスタンスは Object クラスのインスタンスとして扱われている。つまり機能は縮小されている。しかし全てのインスタンスを同列に扱える。
93 名前:デフォルトの名無しさん mailto:sage [2016/12/06(火) 19:43:40.02 ID:bM0bSRB2.net] >>90 例えば一括処理が楽になる
94 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 00:09:59.47 ID:xt5+p8pC.net] >>90 例えば、JavaのListクラスについて考えてみる Listクラスのサブクラスは、Listクラスと同じメソッドを持つ事が保証されている (代表的なものは、Listに要素を加えるadd(E)メソッド、Listから指定した位置の要素を取り出すget(int)メソッド、List内の要素をすべて消すclear()メソッドなど) Listクラスのサブクラス、ArrayListで、以下のような実装をしていたとする List<Integer> list = new ArrayList<>; list.add(new Integer(1)); list.add(new Integer(2)); System.out.println(list.get(0)); list.clear(); System.out.println(list.size()); 何かしらの事情で、上記のコードで使用しているArrayListを、LinkedList(※)に変える必要がでた場合、ArrayListをList型の変数に代入しているため、new ArrayList<>の部分のみを書きかえればよい ※Listクラスのサブクラス もし、ArrayListとLinkedListに共通のスーパークラスが無かった場合、2つのクラスで同じメソッドを使用できるとは限らなくなるため、listで使用しているメソッドを書きかえなければならない(規模が大きいと大変)
95 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 07:01:38.13 ID:UOk7UU+s.net] Listはシーケンスを実装するインターフェース、クラスじゃないよ
96 名前:デフォルトの名無しさん [2016/12/07(水) 18:58:23.74 ID:k92WTPwA.net] ttp://www.javadrive.jp/start/ope/index7.html このページ見て勉強してるんですが、納得いかないことがあります。 int a = 7; int b; b = a++; System.out.println(a); //8 System.out.println(b); //7 について、 >変数「b」に変数「a」を代入していますので数値の7が変数「b」に代入されます。それから変数「a」の値を1だけ増加させます。 とのことなのですが、これをいじって、 int a = 7; a = a++; System.out.println(a); //7 とした場合、 >数値の7が変数「左辺のa」に代入されます。次に「右辺のa」の値を1だけ増加させます。 のはずなのにaは増えていません。 a = a++; だと、インクリメントされないけれど、 a++; だと正常にインクリメントされます。 a = a++; の場合、左辺のaと右辺のaが指している場所が違う(実はaが2つある)んですか?
97 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 20:41:00.08 ID:MF980GNn.net] javadriveは演算子の優先順位説明されてたっけ?
98 名前:デフォルトの名無しさん mailto:sage [2016/12/07(水) 20:41:20.64 ID:B6706IAk.net] 順番逆じゃね 先に右辺が評価されて評価値は7 aはインクリメントされて8 評価値がaに代入されて7に戻る
99 名前:デフォルトの名無しさん [2016/12/08(木) 00:17:49.54 ID:tUPRtp48.net] >>95 javap -c で逆アセンブルすると分かるけど int a = 7; int b; b = a++; バイトコードは 1:bipush 7 2:istore_1 3:iload_1 4:iinc 1, 1 5:istore_2 1:スタックに7を積む 2:スタックの値(7)を変数1(a)に入れる 3:変数1(a)の値をスタックに積む(7) 4:変数1(a)に1追加(7->8) 5:スタックの値(7)を変数2(b)に入れる
100 名前:デフォルトの名無しさん [2016/12/08(木) 00:18:23.52 ID:tUPRtp48.net] 疑問のコード int a = 7; a = a++; 1:bipush 7 2:istore_1 3:iload_1 4:iinc 1, 1 5:istore_1 1:スタックに7を積む 2:スタックの値(7)を変数1(a)に入れる 3:変数1(a)の値をスタックに積む(7) 4:変数1(a)に1追加(7->8) 5:スタックの値(7)を変数1(a)に入れる ってことでこれが答えです
101 名前:デフォルトの名無しさん [2016/12/08(木) 00:18:39.13 ID:tUPRtp48.net] ちなみに int a = 7; a = ++a;
102 名前:フ場合はiload_1とiinc の順序が逆になります この疑問は自分も??となったので調べてみておもしろかったです [] [ここ壊れてます]
103 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 19:26:40.58 ID:ZhYL35Hp.net] >>100 横からで申し訳ないけど int a = 7; a++; の場合ってどうなってます?
104 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 19:32:30.50 ID:msYwe41j.net] >>101 そんなの8に決まってんだろ
105 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 20:07:00.20 ID:Qk51oSYm.net] で、それらは言語仕様で決まってるの? その実装は言語仕様通りの動作なの?
106 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 20:25:48.90 ID:msYwe41j.net] >>103 そう。
107 名前:デフォルトの名無しさん mailto:sage [2016/12/08(木) 23:23:47.68 ID:RlcOCP/9.net] >>103 演算子の優先順位
108 名前:デフォルトの名無しさん [2016/12/09(金) 09:32:09.87 ID:JDGo9TAV.net] 自作のクラスをextendsしたらmain(static final)はmain(static final)をオーバーライドできませんってエラーになったけど どう書いたらいいのでしょうか?
109 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 09:44:39.39 ID:0m6Mi0gt.net] オーバーライドしないように書けばいいのです これ以上詳しい回答が欲しいならコードを晒しましょう 嫌なら帰りましょう
110 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 09:49:29.03 ID:vCLjhx0r.net] >>106 main()書くクラスを継承するなんて普通はやらない どう書くかの前に何がしたいのかはっきりさせようか
111 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 12:21:46.85 ID:vlYQq61V.net] そもそもmainメソッドのオーバーライドってその気になればできたりするもの? それとも言語仕様上不可能なもの?
112 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 12:34:26.46 ID:dJ83iVEX.net] 変態コーダーとしては大いに興味がある
113 名前:106 [2016/12/09(金) 12:40:32.05 ID:JDGo9TAV.net] コンストラクタからmain2を呼び出すとかしてもいいんでしょうか?
114 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 13:00:22.88 ID:XOVIDlO/.net] 究極的にはコンパイラさんがお怒りにならなければ何をしたっていいよ
115 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 15:08:08.05 ID:TskjQlK7.net] eclipseとTomcatに関する質問ってここでしてOK?
116 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 18:24:56.00 ID:xgqevX7Y.net] >>112 コンパイラさんの目を盗んでメインメソッドをオーバーライドする方法を知りたい 知りたいだけだが
117 名前:デフォルトの名無しさん mailto:sage [2016/12/09(金) 19:12:42.51 ID:6sxBnXBQ.net] finalだからじゃなかろーか >>114 リフレクションで出来るかも? 詳しい人プリーズ
118 名前:デフォルトの名無しさん mailto:sage [2016/12/10(土) 12:37:09.07 ID:VLELNCTm.net] そもそもstaticなんだが.... とりあえず実行したいだけならJUnitとか使えば行けるだろうけど
119 名前:デフォルトの名無しさん mailto:sage [2016/12/10(土) 12:41:59.40 ID:VLELNCTm.net] ってかそもそも継承しないクラスでクラス作って起動時のクラス指定で呼び出してそこから該当のクラスでも呼び出せばいいんじゃね
120 名前:デフォルトの名無しさん [2016/12/11(日) 03:36:14.81 ID:xECh/Tka.net] >>106 はコードを晒すべきだ。
121 名前:106 mailto:sage [2016/12/11(日) 10:35:36.03 ID:Dfbs0rE4.net] 継承元のクラスのmainを削除すればいいと思うんだけど とりあえず一つのプログラムからしか呼び出されていないので、ソース変更とかしながら Hoge hoge = new Hoge(); してから 戻り値 hoge.hogehoge(); って形にした
122 名前:106 mailto:sage [2016/12/11(日) 10:36:55.22 ID:Dfbs0rE4.net] ああ、 import hoge.Hoge; も必要だった
123 名前:デフォルトの名無しさん mailto:sage [2016/12/11(日) 14:00:45.27 ID:x9RdPPr0.net] finalだからじゃなかろーか https://paiza.io/projects/MTCnmZ86lM69QsJ8xf8KVA https://paiza.io/projects/6LFZuaVly4m1QKUAmkLOjQ
124 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 01:07:35.78 ID:Cw8uPzOG.net] 例外処理について教えて下さい。 検査例外の場合、throws すると呼び出し元のメソッドで処理しないとコンパイル通りませんが、、 非検査例外の場合、throws しても呼び出し元のメソッドで処理しなくてもコンパイルは通るのは、 非検査例外の場合は throws する意味はない(せいぜい注意書きレベル)と考えていいんでしょうか? 標準ライブラリにも「例外:○○Exception(非検査例外)を投げることがある」と明記してあるメソッドがありますが、 try catchするかは使う人の善意(?)次第になってしまいますよね?
125 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 01:26:56.17 ID:38wEAVQO.net] >>122 qiita.com/yuba/items/d41290eca726559cd743
126 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 01:45:44.05 ID:Cw8uPzOG.net] >>123 ありがとうございます。
127 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 11:59:20.93 ID:YdV6j9Ia.net] final public static void main ってベジータの必殺技みたいだよな
128 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 12:04:02.85 ID:YdV6j9Ia.net] ところで、mainにfinalつける人っているの?
129 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 12:41:49.96 ID:LEnzGoNW.net] なんでfinal付けるんだろう?謎だな。
130 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 15:05:09.35 ID:gvYOPAdU.net] public strictfp synchronized static final void main(String[] args) なんかかっこよくなった。
131 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 16:01:34.64 ID:pPmA0hRQ.net] >>128 の「public strictfp synchronized static final void main(String[] args)」! >>125 に2959のダメージ!
132 名前:デフォルトの名無しさん [2016/12/12(月) 16:24:17.16 ID:Y+8pLhXI.net] バッチのご相談をさせてください 入力フォルダからデータを取り込んで処理、出力するバッチなのですが、 入力フォルダにデータを書き込んでいる最中にバッチが起動し、中途半端なデータを取り込んでエラー落ちしてしまいます どうにかして書き込み中のデータを無視したいのですがFileクラスなどで別のプロセスがファイル書き込み中であることを判別する手段はありますか?
133 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 17:56:39.37 ID:YdV6j9Ia.net] >>130 ロック! シェケナベイベー!
134 名前:デフォルトの名無しさん [2016/12/12(月) 19:50:08.10 ID:MS9MrEBQ.net] >>130 書き込みが終わってから読むのが正攻法では? 書き込み処理側で終了を知らせるゼロバイトファイル置いてもらうか 読み側で10秒ぐらい待ってみてサイズが変わってなければ終了と見なすか
135 名前:デフォルトの名無しさん mailto:sage [2016/12/12(月) 20:31:46.42 ID:5QBCzTqI.net] >>130 isReadや書き込み中ならisWriteでfalse返ってこないか
136 名前:デフォルトの名無しさん [2016/12/12(月) 23:52:08.34 ID:ATFW9x6K.net] ジェネリクスを包括的(?)に勉強したいのですが、オススメのサイトがあれば教えて下さい。 日本語・英語・ドイツ語どれかでお願いします。
137 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 00:32:48.27 ID:EQBenzg8.net] 20代後半でプログラムの勉強して就職先ってあるのだろうか? 俺はないと思う
138 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 09:05:12.70 ID:GC6m09wL.net] もうプログラムは趣味でやるもんだわ
139 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 10:05:56.21 ID:8ddwa1I7.net] それ。
140 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 16:36:57.46 ID:EQBenzg8.net] 趣味でプログラムって何か作ってるの?
141 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 16:54:49.77 ID:EzCfEOMA.net] 130です 急なトラブルでレス遅くなりました レスいただいた皆様ありがとうございます 教えていただいた方法も含めて色々と試したのですがうまくいかず、結局入力側を同名リネームできるかどうかで判別することにしました これでもリネームから取り込みまでの間に書き込みが始まる可能性が若干ありますが、ほとんどのパターンではうまくいきそうです
142 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 17:08:56.91 ID:8ddwa1I7.net] >>138 まあね。
143 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 19:34:17.65 ID:EQBenzg8.net] どんな感じの? ゲームとかか?
144 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 19:56:19.39 ID:jryChzob.net] そういうの質問するスレじゃないから マ板でやりなよ
145 名前:デフォルトの名無しさん mailto:sage [2016/12/13(火) 20:03:09.70 ID:urfJjx8P.net] >>134 はい d.hatena.ne.jp/ryoasai/touch/20110325/1301078699
146 名前:デフォルトの名無しさん [2016/12/14(水) 09:37:23.94 ID:MxDuKnpo.net] >>139 それ環境依存なのでは? 仮想マシンが動いているOSによって動作変わると思うぞ。 Linuxとかで試してみな。
147 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 15:50:48.28 ID:4RpExEkV.net] >>144 ご指摘ありがとうございます 環境はWindowsで決まっているので問題ありません 本当は占有ロックができれば一番よかったのですが、今回はこれで行きます
148 名前:デフォルトの名無しさん mailto:sage [2016/12/14(水) 20:54:28.03 ID:/A2KcaJK.net] >>130 例えばバッチ処理の起動間隔が1時間置きならディレクトリ構造を工夫して yyyy/mm/dd/hh/xxxx.txt みたいな感じで時間ごとに置き場所を変えてみては? 2016/12/14/20 のディレクトリは20:00 - 20:59まで書かれるので、書き込み時間も考慮して21:05位から読み込みに行くとか もしくは同じパーミッションの別のディレクトリに書き込んでから所定のディレクトリにmvすればファイルエントリの書き換えだけなので書き込み中時間が無くなるので気にせず読み込めると思うけど ただ、後者はあくまで同じパーミッションでのmvなのでクラウド化してAWS S3とか使うとmvもコピーと同じ扱いなので問題が発生する オススメは前者かな
149 名前:デフォルトの名無しさん [2016/12/15(木) 08:20:36.53 ID:Dsc7hVXD.net] Bronzeのテキストを進めていたんですけど、 「インターフェースの定義として正しいものを選べ」という問題で、 String型の宣言について疑問があります。 public interface App { public String id = A001; // ★ void execute(String param); } ★部について質問です。 この A001 がダブルコーテーションで括られていないのにコンパイルを通過する理由がわかりません どなたか教えて下さいませんか
150 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 12:24:50.27 ID:7KRIzock.net] https://chrome.google.com/webstore/detail/%E3%81%AF%E3%81%A6%E3%81%AAng/mbgdnfmdelffjdhkdggilmphfdihnmcj?hl=ja
151 名前:デフォルトの名無しさん [2016/12/15(木) 18:26:13.35 ID:8c3LKfdb.net] SwingのJRadioButton取り付けの際に、指定した座標(Double)位置に取り付ける方法を教えてください setBoundsはintでしか座標指定できないので困っています よろしくお願いします。
152 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 21:02:00.84 ID:aesj07do.net] オススメの入門書を教えてください C#はCLR via C#という良書がありました Javaについて同じぐらいの内容のある本が欲しいんです
153 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 21:40:12.99 ID:0+Rggy+8.net] 英語でいいなら言語仕様を読んだ方が早くて確実じゃないか オラクルがやる気なさすぎて翻訳がないだけでしょ
154 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 21:58:20.45 ID:kX3WZpE8.net] スッキリわかる Java入門 第2版、2014 これで、オブジェクト指向を学ぶのが定番
155 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 22:19:36.29 ID:oV/u/0Em.net] >>149 キャストしちゃいかんのけ?
156 名前:デフォルトの名無しさん mailto:sage [2016/12/15(木) 22:29:25.50 ID:kX3WZpE8.net] >>147 コンパイルエラー App.java:3: error: cannot find symbol public String id = A001;
157 名前:デフォルトの名無しさん [2016/12/16(金) 10:56:28.90 ID:T/H9fGcJ.net] >>147 本当にソースがそれだけで尚且つコンパイル直前にソースを変換するような(C言語でのプリプロセッサのような)事をせずに普通にjavacコマンドでコンバイルしているのならエラーになる筈だ。 ソースは本当にそれだけなのか? どのようにコンバイルしているのか? それは本当にJavaなのか?
158 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 13:39:46.74 ID:51pgM9Tx.net] >>147 ,155 どうも誤植だったようです。 お騒がせしました。 book.impress.co.jp/books/1114101134 下の方に書いてありました…
159 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 14:19:59.35 ID:H
] [ここ壊れてます]
160 名前:GrXEg33.net mailto: どっちにせよコンパイルエラーに成るだろうけどえ [] [ここ壊れてます]
161 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 17:23:13.91 ID:lH3oOzXl.net] javaの入門書はいくつか買ったけど「スッキリわかるjava入門」も「やさしいjava」も内容が薄いので個人的にオススメしません。 真面目に勉強したい方には「明解java」をオススメします
162 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 17:27:04.12 ID:+quZzTBX.net] 明解Javaはいい加減、答案を別々に売るんじゃなくて一緒にしてくれませんかね?
163 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 18:24:39.79 ID:d5jVhhWj.net] あっこいつめちゃくちゃ詳しいなって人が書いた本が欲しい
164 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 19:06:32.94 ID:Q1df89b/.net] >>157 public String id = "A001"; [正]のコードのこれはコンパイル通るじゃろ
165 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 20:47:27.70 ID:KOHv1OrF.net] 入門書を薄いとか言ってる時点でお門違いでねえかい?
166 名前:デフォルトの名無しさん mailto:sage [2016/12/18(日) 21:02:45.03 ID:wEstYhpF.net] 内容濃い入門書なんてそうそう無いよ
167 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 00:18:23.26 ID:qQruKqYa.net] テンプレで入門書〜中級者向けまででオススメの書籍まとめたら?
168 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 04:44:30.29 ID:DLH52s/u.net] 入門書は薄いぐらいでよいのじゃ
169 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 05:43:23.41 ID:x8MqWvxK.net] 1行目2行目省略 System.out.println("あなたの名前を入力してください。"); String name = new java.util.Scanner(System.in).nextLine(); System.out.println("あなたの年齢を入力してください。"); int age = new java.util.Scanner(System.in).nextInt(); System.out.println("ようこそ、"+age+"歳の"+name+"さん"); 8行目9行目省略 最初の入力で1111 次の入力であああ と入力した場合どうなるのですか? エラー? Dokojavaで試したいけどキーボードからの入力が ダメみたいで試せません
170 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 06:44:06.00 ID:Bj4xwR1n.net] 年齢のところでInputMismatchExceptionになるんじゃね
171 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 07:49:18.37 ID:++QTK/hM.net] paiza.ioで試してみなはれ
172 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 07:53:48.66 ID:iGBlQxB0.net] paiza.ioとかideone.comだと最初のnew java.util.Scanner(System.in).nextLine();で あああ も読み込んじゃうきがす ・・・なんで毎回Scanner作ってるんだ?
173 名前:デフォルトの名無しさん [2016/12/19(月) 12:08:02.28 ID:sOkl84s/.net] 貴重なScannerがもったいない
174 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 12:48:55.59 ID:ZaqNL8Eo.net] JavaDriveのScannerクラスの解説ではcloseしてないけど ScannerってBufferedReaderみたいにcloseしなくていいものなの?
175 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 13:52:53.14 ID:Vbf5qZm0.net] Scannerが閉じられる場合、その入力ソースがCloseableインタフェースを実装していると、そのソースも閉じられます。 https://docs.oracle.com/javase/jp/8/docs/api/java/util/Scanner.html
176 名前:デフォルトの名無しさん [2016/12/19(月) 17:34:23.36 ID:sqV3wSxh.net] doubleをdoubleのまま四捨五入する方法を教えてください roundではlongになりますし、(その後Doubleに戻せない) BigDemicalを使用しましたがやはりDoubleに戻せませんでした
177 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 17:46:53.68 ID:sy8ZFTqJ.net] 小数点第何位を四捨五入?
178 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 17:51:37.27 ID:sqV3wSxh.net] >>174 第一位です。 後の処理のために?.0 の形にしたいんです
179 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 17:56:49.61 ID:tIF40yfR.net] BigDecimalはなぜ出来なかった doubleValueメソッドで値取得できるだろ
180 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 18:02:38.85 ID:sqV3wSxh.net] >>176 doubleValueで変換したらできました、ありがとうございます ずっと(double)で変換しようとしていました お騒がせしました
181 名前:デフォルトの名無しさん mailto:sage [2016/12/19(月) 19:06:14.94 ID:iGBlQxB0.net] (double) Math.round(d); これじゃあかんの? longの範囲外も使いたい? -0.5が0ではなく-1になってほしい?
182 名前:デフォルトの名無しさん [2016/12/20(火) 03:04:45.81 ID:0KT4zuVf.net] Math.rint() は?
183 名前:デフォルトの名無しさん mailto:sage [2016/12/20(火) 03:09:44.94 ID:0KT4zuVf.net] ありゃ。 -0.0 という大変気になる値を出力してるな。 https://paiza.io/projects/bCh6x1NLIAC0Jf0tC_Amvg