1 名前:デフォルトの名無しさん mailto:sageteoff [2017/12/21(木) 00:24:33.33 ID:E/ADCCn6.net] Java初心者のためのスレッドです。 ※前スレ Java入門・初心者質問スレ Part.5 mevius.2ch.net/test/read.cgi/tech/1506675205/
386 名前:デフォルトの名無しさん mailto:sage [2018/01/12(金) 22:01:38.96 ID:SYOH9lYc.net] >>374 java 初期化ブロック で検索
387 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 00:08:14.53 ID:wBkZ8yyR.net] >>377 だから〜こいつは検索をしないってばよぉ
388 名前:364 mailto:sage [2018/01/13(土) 00:12:41.32 ID:tfs6Dakv.net] >>375 本ではなくWeb上のサンプル問題なので、解説はありません。 >>377 ありがとうございました。こんなものがあるんですね。本に載っていませんでした。
389 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 00:18:54.55 ID:fT7+fuG0.net] またコテハン消してやがる
390 名前:364 mailto:sage [2018/01/13(土) 00:51:00.15 ID:tfs6Dakv.net] すいません、もう一題質問させて下さい。 https://ideone.com/sI9xXn 上記のコードで最後がfでなくcが表示される理由をどなたか教えて下さい。 super.がついているのでスーパークラスの変数が表示されると考えたのですが…。 参考サイト:Java SE 7 Programmer I - サンプル問題
391 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 01:10:48.55 ID:Wm4I63Cr.net] 継承を理解していないってことでは。 なぜと言われても、そういうものとしか。 聞く前に少しは調べたり勉強したりしようよ。
392 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 01:24:32.22 ID:+LIOJj8l.net] >super.がついているのでスーパークラスの変数が表示されると考えたのですが…。 はい。そうですね。あってますよ。
393 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 01:25:17.53 ID:+LIOJj8l.net] どんな本でも基本中の基本だと思うので、 理解できるまで何回でも本を読み直しましょう。
394 名前:デフォルトの名無しさん [2018/01/13(土) 02:19:53.75 ID:ZTdbWh7g.net] >>381 うふふ https://ideone.com/XYm1i2
395 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 07:31:19.67 ID:9rLeDqe4.net] 逆に、子クラスのインスタンス・this が、 親クラスのインスタンス・this を指したら、プログラミングが出来ないだろ 子クラスのインスタンス・this を取得できなくなる
396 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 08:54:34.28 ID:EaP2wYsG.net] オブジェクト指向のやりたいことを理解して プログラミング言語がそれをどのように実現してるか知る ダメな奴はいきなりプログラミング言語で考えようとするので オブジェクト指向が縛りにしかならない
397 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 09:45:23.55 ID:k/jZErbl.net] >>381 >>385 が答を書いてくれてるけど 35歳は自分のリストの15行目 type = "c " のtypeはどこのtypeだと思ってる? Cougarクラスでtypeなんて定義してないよね?
398 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 10:25:34.36 ID:wiN0PDfT.net] 累乗する関数 pow というものがありますが、これは入力も出力も double です。 double だと誤差が発生するのではないかと思うのですが、すべての int 型の 入力に対して、正しい結果を返してくれるのでしょうか?
399 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 10:32:49.62 ID:M+vRxjCB.net] どうでしょうか?
400 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 10:41:07.76 ID:YXV8ZXe2.net] powの計算は近似値なので、厳密な計算は原理的にできない doubleだからとか以前にアルゴリズム上必ず誤差が発生する
401 名前:デフォルトの名無しさん [2018/01/13(土) 10:45:40.81 ID:Tv/PYA/V.net] >>389 doubleはIEEE754という規格に従っていて IEEE754では仮数部からビットが溢れなければ誤差はない IEEE754の仮数部のビット数は53 なので結果が 2^53 = 9007199254740992 を超えなればおk
402 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 10:52:02.12 ID:YXV8ZXe2.net] >>392 1ulpの範囲で誤差は常にあるよ 想定する入力桁数から結果のオーダーを見積もって、適切な桁数で結果を丸めてやらないとダメ
403 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 10:58:21.51 ID:lyDkb74n.net] 整数で厳密な数字を出したいような計算で出てくるのなんてせいぜい二乗か三乗だろ pow使わないで定義に従ってベタに掛け算した方がいい powは科学技術計算とかに使うもんだ
404 名前:デフォルトの名無しさん [2018/01/13(土) 11:08:01.97 ID:Tv/PYA/V.net] >>393 マジでか
405 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 11:16:22.52 ID:YXV8ZXe2.net] >>395 powの結果の話な 結果の桁数がdoubleの有効桁数と比較してそれほど大きくなければ、単に整数に丸めとけば厳密に正しい数字になるはずだけど
406 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 11:24:16.28 ID:i2Zn+Xt8.net] powは速度遅いから使ってないわ 速度求めるならJavaがそもそもって言われるかもだがw
407 名前: mailto:sage [2018/01/13(土) 12:39:22.70 ID:9/EYlaQy.net] >>386 親クラスの this と子クラスの this は値は同じ そういうもの
408 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 14:31:19.75 ID:2zGybbO2.net] おはよう。 なんだ、その表情は? 俺に掘れるてんのか?wwww
409 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 14:33:31.30 ID:2zGybbO2.net] 拙者www 惚れる と 掘れる を間違えてしまったでゴザルwwww 予測変換と検索ワードを考慮して、おらなんだwwwで、ゴザルwww
410 名前:デフォルトの名無しさん [2018/01/13(土) 14:34:35.56 ID:2zGybbO2.net] これではwww 掘ってしまうでゴザルwwww
411 名前:364 mailto:sage [2018/01/13(土) 16:40:05.63 ID:tfs6Dakv.net] 答えてくれた方々、ありがとうございます。 >>382 最低限の知識はあります。 知識で解く系の問題じゃないので調べようがないんです。 >>383 スーパークラスの変数はfでは? >>385 サブクラスでの代入により、スーパークラスのtypeも変わってしまったってこと ですか? >>387 >オブジェクト指向のやりたいことを理解して >プログラミング言語がそれをどのように実現してるか知る スッキリはそのように書いてあります。 >>388 スーパークラスに属してるんですか?
412 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 17:05:30.55 ID:FyPyK4H/.net] >>402 >スーパークラスの変数はfでは? Cougarクラスは、Felineクラスをextendしていると 何となく考えてみよう。 そう考えると、Cougarのインスタンスがgoメソッドを実行すると 絶対にtypeはfにならないという事が分かるだろう。 ところで「extend」はどんな意味か分かるかな? 調べてみよう。
413 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 17:11:13.48 ID:FyPyK4H/.net] ってブロンズ取ったんだろ? そこはアホみたいに問われなかったか?
414 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 17:11:23.59 ID:M+vRxjCB.net] もうここもすっかり35歳に乗っ取られたな 答えちゃうお人好しもいるし
415 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 17:14:20.25 ID:FyPyK4H/.net] あ、失礼。 typeがfにならないのはコレ https://ideone.com/sI9xXn https://ideone.com/XYm1i2 ↑こいつはfが出ますね。当然だけど・・・
416 名前:364 mailto:sage [2018/01/13(土) 19:47:12.42 ID:tfs6Dakv.net] >>403 回答ありがとうございます。 おっしゃることはもっともだと思うんですが、super.とついているので スーパークラスのtype変数を指しているんですよね? その中身がgoメソッド内でcに変わったという理解でよろしいですか? それとextend(s)の意味は知ってます。拡張するとかいう意味です。 Javaにおいては継承ということで使われているようですが。 >>404 何しろ3割間違えてるので、その中でこのような設問における失点もあったかも しれません。
417 名前:364 mailto:sage [2018/01/13(土) 19:52:04.48 ID:tfs6Dakv.net] >>405 俺が質問しても気にしなきゃいいのに何が気に入らないのかチャチャ入れるから 一見さんが近寄りにくくなってるんだよ。 ここは質問スレなんだから、純粋に質問して、回答が返ってくるという流れは 自然だろう。それが気に入らないなら無理に来なくていいのに。
418 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 19:53:30.52 ID:VXOB33XN.net] 何でそんなに自分中心なの?
419 名前: mailto:sage [2018/01/13(土) 20:17:44.19 ID:9/EYlaQy.net] >>402 今みました それは >>406 https://ideone.com/sI9xXn の15行目「 type = "c ";」 にて自分で super.type すなわち Feline::type を c に書き直しているからなんですよ
420 名前: mailto:sage [2018/01/13(土) 20:18:22.06 ID:9/EYlaQy.net] >>407 >>410 自分で super.type を "c" に書き直しているからです
421 名前:デフォルトの名無しさん [2018/01/13(土) 20:22:17.08 ID:wiN0PDfT.net] 以下のプログラムは {1, 2, …, n} 上のすべての位相(開集合系)を求めるプログラムです。 とりあえず、適当に作ったのですが、デザインについて添削してください。
422 名前:デフォルトの名無しさん [2018/01/13(土) 20:23:18.22 ID:wiN0PDfT.net] import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; public class AllTopologies { ■■private final List<Set<Integer>> topologies; ■■private Set<Integer> setOfSubsets; ■■private int setOfSubsetsID; ■■private final int n; ■■private final int m; ■■private final int maxSetOfSubsetsID; ■■public AllTopologies(int n) { ■■■■topologies = new ArrayList<Set<Integer>>(); ■■■■setOfSubsets = new HashSet<Integer>(); ■■■■setOfSubsetsID = 0; ■■■■this.n = n; ■■■■m = (int) Math.pow(2.0, (double) n) - 1; ■■■■maxSetOfSubsetsID = (int) Math.pow(2.0, (double) m - 1) - 1; ■■■■computeAllTopologies(); ■■} ■■
423 名前:デフォルトの名無しさん [2018/01/13(土) 20:23:36.74 ID:wiN0PDfT.net] ■■public void printAllTopologies() { ■■■■System.out.print("The number of topologies on the set {"); ■■■■int i; ■■■■for (i = 1; i < n; i++) { ■■■■■■System.out.print(i + ", "); ■■■■} ■■■■System.out.print(i); ■■■■System.out.println("} is " + topologies.size() + "."); ■■■■System.out.println(); ■■■■ ■■■■System.out.print("The all topologies on the set {"); ■■■■for (i = 1; i < n; i++) { ■■■■■■System.out.print(i + ", "); ■■■■} ■■■■System.out.print(i); ■■■■System.out.println("} are:"); ■■■■ ■■■■for (Set<Integer> s : topologies) { ■■■■■■System.out.print("["); ■■■■■■System.out.print(convertIntToSet(0)); ■■■■■■System.out.print(", "); ■■■■■■for (int e : s) { ■■■■■■■■ ■■■■■■■■System.out.print(convertIntToSet(e)); ■■■■■■■■System.out.print(", "); ■■■■■■} ■■■■■■System.out.print(convertIntToSet(m)); ■■■■■■System.out.println("]"); ■■■■} ■■}
424 名前:デフォルトの名無しさん [2018/01/13(土) 20:23:58.33 ID:wiN0PDfT.net] ■■private Set<Integer> convertIntToSet(int s) { ■■■■Set<Integer> set = new HashSet<Integer>(); ■■■■for (int i = 1; i <= n; i++) { ■■■■■■if ((s & 0x00000001) == 1) { ■■■■■■■■set.add(i); ■■■■■■} ■■■■■■s >>= 1; ■■■■} ■■■■return set; ■■} ■■ ■■private boolean nextSetOfSubsets() { ■■■■if (setOfSubsetsID == maxSetOfSubsetsID) { ■■■■■■return false; ■■■■} ■■■■setOfSubsetsID++; ■■■■setOfSubsets = new HashSet<Integer>(); ■■■■int t = setOfSubsetsID; ■■■■for (int i = 1; i < m; i++) { ■■■■■■if ((t & 0x00000001) == 1) { ■■■■■■■■setOfSubsets.add(i); ■■■■■■} ■■■■■■t >>= 1; ■■■■} ■■■■return true; ■■}
425 名前:デフォルトの名無しさん [2018/01/13(土) 20:24:16.43 ID:wiN0PDfT.net] ■■private boolean isSetOfSubsetsTopology() { ■■■■List<Integer> list = new ArrayList<Integer>(setOfSubsets); ■■■■loop: ■■■■for (int i = 0; i < list .size(); i++) { ■■■■ for (int j = i + 1; j < list .size(); j++) { ■■■■ ■■int intersection = intersection(list.get(i), list.get(j)); ■■■■ ■■if (intersection != 0 && intersection != m && !setOfSubsets.contains(intersection)) { ■■■■ ■■■■return false; ■■■■ ■■} ■■■■ ■■int union = union(list.get(i), list.get(j)); ■■■■ ■■if (union != 0 && union != m && !setOfSubsets.contains(union)) { ■■ ■■■■■■return false; ■■■■ ■■} ■■■■ } ■■■■} ■■■■return true; ■■} ■■ ■■private void computeAllTopologies() { ■■■■do { ■■■■■■if (isSetOfSubsetsTopology()) { ■■■■■■■■topologies.add(setOfSubsets); ■■■■■■} ■■■■} while(nextSetOfSubsets()); ■■}
426 名前:デフォルトの名無しさん [2018/01/13(土) 20:24:41.80 ID:wiN0PDfT.net] ■■private static int intersection(int subset1, int subset2) { ■■■■return subset1 & subset2; ■■} ■■private static int union(int subset1, int subset2) { ■■■■return subset1 | subset2; ■■} ■■public static void main(String[] args) { ■■■■// TODO Auto-generated method stub ■■■■AllTopologies allTopologies = new AllTopologies(4); ■■■■allTopologies.printAllTopologies(); ■■} ■■ }
427 名前: mailto:sage [2018/01/13(土) 20:30:25.61 ID:9/EYlaQy.net] >>413-417 https://ideone.com/ に張りなおしてください
428 名前:デフォルトの名無しさん [2018/01/13(土) 20:34:51.80 ID:wiN0PDfT.net] >>418 張り直しました: https://ideone.com/A7CDkS
429 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 20:37:35.59 ID:ogercqIA.net] 数学のことはまったくわからんが 数学とまったく関係ないところで オブジェクト指向初心者にありがちな超絶スパゲッティなのはわかる
430 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 20:40:33.04 ID:wiN0PDfT.net] >>420 ありがとうございます。 そういうオブジェクト指向のデザインの本でおすすめの本はありますか? 自然言語でいえば、文法の本ではなく作文の本にあたる本。
431 名前: mailto:sage [2018/01/13(土) 20:42:47.64 ID:9/EYlaQy.net] >>421 https://www.amazon.co.jp/dp/4797327030/
432 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 20:42:49.20 ID:ogercqIA.net] そういう本読みまくったけど 結局実務で人に修正してもらうまで自分のなにがだめかわからんかったから 自分から進められる本がない
433 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 20:44:39.36 ID:wiN0PDfT.net] コードについての説明ですが、 例えば、 n = 3 の場合、 集合 {1, 2, 3} の部分集合の集合のうち 空集合 { } と {1, 2, 3} を含み、 共通部分をとる操作について閉じていて、かつ 和集合をとる操作についても閉じているようなものを すべて求めるというプログラムになります。
434 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 20:47:33.55 ID:wiN0PDfT.net] >>422 ありがとうございます。 とりあえず、読んでみます。 >>423 本を読んで習得したいのですが、そう言われるのではないかと恐れていました。
435 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 20:56:00.55 ID:ogercqIA.net] さんすうのことはわからない でもまず根本的にだめなところとして 変数が実質すべてグローバル変数になっている。 これならprivateなメソッドはStaticにして引数渡しにすべき。メソッドが何やってんかわからん コンストラクタでクラスのメンバにアクセスするようなメソッドを呼び出してはいかん、 上と同じ理由で極力引数渡しにして戻り値を自分で設定すべき ついでにクラス設計がひどい。トポロジーの配列を返すようなメソッドじゃいかんのか 自身のメンバ変数を更新しながら随時計算するようなクラスは典型的なアンチパターン
436 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 22:23:26.26 ID:ogercqIA.net] do-whileのまわしかたがおかしい 数を1足しつつ最大値まで計算するだけなのになんでこんなことになってるのか 計算中に最終的な計算結果を作らずに Print中になんか変なもんをたしてるのはどうか
437 名前:デフォルトの名無しさん mailto:sage [2018/01/13(土) 23:29:13.29 ID:ogercqIA.net] 科学や数学計算にオブジェクト指向はむいてない
438 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 00:10:01.93 ID:xHNn147i.net] ここも35歳に汚染されたか
439 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 00:21:19.54 ID:I9Kg/0Pm.net] https://ideone.com/Qc6lMv なるべく計算の方法をかえずになおしてみた
440 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 00:32:36.32 ID:enbVXIrh.net] >>428 向いていないというか問題の領域が違うんじゃね?
441 名前:364 mailto:sage [2018/01/14(日) 00:42:01.44 ID:uRN4GGkv.net] >>410-411 ありがとうございました。 何となく分かりました。
442 名前: mailto:sage [2018/01/14(日) 00:44:06.25 ID:uRN4GGkv.net] >>429 やかましいわ
443 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 01:16:23.90 ID:2NSvnorA.net] コテハン消したり出したり身勝手な奴
444 名前: mailto:sage [2018/01/14(日) 01:21:02.25 ID:ekN/OeXo.net] >>434 スルー力の涵養をお勧めします
445 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 01:38:27.31 ID:2NSvnorA.net] >>435 そんな事スルーカよ
446 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 02:03:14.71 ID:xHNn147i.net] >>435 そのような漢字を使うと35歳に配慮しろと言われますよ
447 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 10:06:05.33 ID:n9syFGhP.net] 自分に技術がないのは教えてくれないからって言い訳もおかしい
448 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 11:31:41.64 ID:zRc3xs8X.net] 大人は質問に答えたりしない。それが基本だ。
449 名前: mailto:sage [2018/01/14(日) 12:11:47.81 ID:uRN4GGkv.net] 無駄なレス多過ぎ。 >>342 はいはい。 >>343 そうでもないんじゃ。 >>347 まず先に荒らす連中に言ってくれますか? >>348 子ども扱いしてごまかすなよ。先に荒らす連中は無罪放免か? >>349 お前が失礼 >>350 先に仕掛ける方が消えれば両方消える。 >352-352 馬鹿は黙ってろ。 >>357 この男には取って欲しくない。
450 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 12:15:44.71 ID:uLivRIX+.net] ウィンドウプログラムを作ってるんですが、Eclipseのコンソールに変数の値とか出力しますよね。 あの出力はプログラムが完成したあとはどうなるんですか?単に捨てられるだけですか? 何か悪影響はありますか?コードは消すかコメントアウトしといた方がいいですか?
451 名前: mailto:sage [2018/01/14(日) 12:22:22.00 ID:uRN4GGkv.net] >>363 はいそれ差別用語ね。 >>367 荒らしが邪魔をしなければ何も問題は無い。 >>370 人のことは気にするくせに自分は何もしようとしない。 >>371 自分に自信が無いもんだから人をおとしめてプライドを保ちたいんですよ。 >>376 Mind your own work. >>378 するわボゲ >>429 変な言い回しするなボゲ
452 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 12:44:26.02 ID:kJzL10A4.net] >>442 スーパーウルトラハイパー大池沼キチガイアスペ糖質ガイジマン乙!!!!!!!!!!!
453 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 13:14:27.09 ID:Ll4Y/1qa.net] >>441 ログに出力するようにしといて 開発時はコンソールに出したり 運用時はログファイルに出したりファシリティを変えたりする ただそれも書き方によっては悪影響があったりする
454 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 13:18:11.08 ID:iVL1VSVx.net] >>441 プログラムを実行した時の標準出力に表示される 例えばターミナルとかコマンドプロンプトから実行すればそこに出る感じ Javaに限らずだけど、ログ出力ライブラリ(log4j, java.util.logging, commons loggingなど)ってのがあるからそれを使うといいよ 大抵のは設定ファイルでログの出力先を変更できる仕組みがあるから開発中は標準出力とログファイル、本番はファイルだけとか融通が利く
455 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 14:04:55.71 ID:7MpxOyR3.net] スタンドアロンなクライアントアプリならログなんかどうでもいい わざわざライブラリ覚えなくても適当にコンソールに垂れ流しときゃ十分
456 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 15:16:10.90 ID:L+PK1JUZ.net] >>440 >まず先に荒らす連中に言ってくれますか? 恨みを買うような非礼や荒らしを散々したから粘着されてるんでしょ。 まず君が土下座して今までの非礼を詫びるのが筋だね。 先に手を出したのは君なんだよ。
457 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 17:42:15.94 ID:Rx8+bqnC.net] すごく初歩的な質問で恐縮ですが、リストに突っ込んだ複数の内容のうち 途中のある内容を削除したら、後ろにあった内容は何も指定しなければ(勝手に)前に詰められる、ということでいいのでしょうか?
458 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 17:42:45.62 ID:BkqToWZD.net] 4月にJavaにvarが導入されるのを希望に生きる
459 名前:デフォルトの名無しさん [2018/01/14(日) 17:54:37.68 ID:q1SBtCCQ.net] たかが掲示板に書いてあることぐらいで恨む方も何か病的なものを感じるけどね
460 名前:デフォルトの名無しさん [2018/01/14(日) 17:57:44.51 ID:q1SBtCCQ.net] >>448 普通はそうだと思う。特別にそうでない動作をするように作られたものでない限りは。
461 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 19:17:39.04 ID:uLivRIX+.net] >>444 ->>446 ありがとうございました。勉強になりました。
462 名前:デフォルトの名無しさん mailto:sage [2018/01/14(日) 20:03:25.15 ID:Rx8+bqnC.net] >>451 ありがとうございます
463 名前:デフォルトの名無しさん [2018/01/14(日) 22:05:40.26 ID:t1pyzP2Y.net] ファイルのIOの部分難解すぎて意味がわからない。 ・文字列を処理したいのにchar型とかint型とか byte型とか 出て来るしtry catchとかIOExceptionとか何なのかがよくわからない。 ・なんとかOutputStreamとか なんとかReader Writerが おおすぎてどれを使っていいかわからない。 ・オブジェクトを生成して別のコンストラクタの引数に渡している部分が 何をしているのかさっぱりわからない。 ・BufferedReader / Writerとかを使う必要があるのかないのかよくわからない。 ・結局文字列を読み書きするのとバイトを読み書きするのが何が違いがあるの? ・for(item : list){}文は使えないの?
464 名前:デフォルトの名無しさん [2018/01/14(日) 22:14:06.66 ID:ioBhoZpn.net] >>454 プログラム書かずにここに書き込んでるからわからないんだよ 5chやめよう
465 名前:デフォルトの名無しさん mailto:sage [2018/01/15(月) 01:10:14.74 ID:HUxIyqtw.net] 手短に書かれてる良さげなサンプルをコピペして細かいこと気にしないで利用する
466 名前:デフォルトの名無しさん [2018/01/15(月) 01:52:42.00 ID:sGlCIifU.net] >>454 入門書をよく読むことをお勧めする。
467 名前:デフォルトの名無しさん mailto:sage [2018/01/15(月) 05:48:15.24 ID:sS0AnRdF.net] >>454 Exceptionは例外だ。 例えば、ディスク容量がいっぱいで保存できなかった、権限がなく読み取れなかったとか。 メインシナリオとは別の例外シナリオを考える必要がある。 設定ファイルを読み取れなかったからデフォルト値を使う、ユーザーに知らせる、ログを取る、何もしないのもアリだ。 ただし、ファイルやネットワーク接続は不要になったら閉じなければいけないのでfinally。 IOはJava外の制御できないとことやりとりするわけで、例外は大事。
468 名前:デフォルトの名無しさん [2018/01/15(月) 05:55:25.87 ID:uOPIDlxY.net] try catchや拡張for文はまだしも、標準入出力用のソースが複雑ってそりゃそうだと思うんだけどw
469 名前:デフォルトの名無しさん mailto:sage [2018/01/15(月) 07:18:27.58 ID:sS0AnRdF.net] >>454 ファイルにとって文字かどうかは関係ないので基本byteでやり取り。 1byteずつやり取りすると効率悪いのでBufferに一度貯めてまとめてやる。 プログラム的には文字列として扱う方が簡単なのでReaderを使って内部でbyteにする。 これらを流れ作業で繋いでパイプラインのようにする。 時代がかわれば要不要もかわるかもな。 そういうのにいくらでも対応できる。 スペルチェックするWriterや語尾をにゃんにするReaderとか作ってかませることもできるぞ。
470 名前:デフォルトの名無しさん mailto:sage [2018/01/15(月) 19:25:15.29 ID:wM5pIdFL.net] 今はFiles一択
471 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 00:24:45.16 ID:DxqPwkAO.net] codepad.org/ANK9JtwS GUIプログラムがAWTの入門みたいなのしかかいたことがなくて Sceneを使うと複雑なグラフが簡単にかけるらしいので テストコードをかいてみたんですが 表示の更新タイミングがよくわかりません repaintみたいなのをよぶ必要があるんでしょうか 35行目までだとすぐにチャートが表示されるのに スリープをはさむと最初何も表示されずにスリープ後に一気に表示される感じになります 数秒に1回データが更新されてグラフも更新するようなのを作りたいのですがどうしたらいいでしょうか
472 名前: mailto:sage [2018/01/16(火) 00:29:43.27 ID:x7rspFcE.net] ごめんなさい、これだけ書かせて下さい。 >>443 死ね。書き込まなくていい。 >>434 別に身勝手ではない。使い分けてるだけ。 >>438 そんな言い訳俺はしてない。 失礼しました。
473 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 00:46:57.60 ID:fztwKq6Y.net] >>463 Java以外の事を書くなって何度言われても理解出来ないのか? 幼児脳って本当なんだな。
474 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 00:50:33.75 ID:ZvRPOTCB.net] >>463 オマエは巣で他人に配慮すべきと煩いが、ここでの配慮は無いのか?
475 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 01:07:31.13 ID:2MNM63Sz.net] 自演キチガイ消えろ
476 名前:遊園地 mailto:age [2018/01/16(火) 01:44:32.63 ID:/gUVmc1B.net] はいっ! はいっ!! 「ハイ! ハイ!」 「ハイ! ハイ!」 ぶひいいいいいいいいいいwwwww 「アイィィィ!ポイ!ポイィィィ!」 「んっ! 」 「んっ!」 35歳 「あっ。あっああ。。。」 「あっ。あっああ。。。」
477 名前:遊園地 mailto:age [2018/01/16(火) 04:06:45.38 ID:/gUVmc1B.net] はいっ! はいっ!! 「ハイ! ハイ!」 「ハイ! ハイ!」 ぶひいいいいいいいいいいwwwww 「アイィィィ!ポイ!ポイィィィ!」 「んっ! 」 「んっ!」 35歳 「あっ。あっああ。。。」 「あっ。あっああ。。。」 遊園地「ぶひいいいいいいいいいいwwwww」 ぬーぷ 「冬の大空に降り注ぐ彗星」 35歳&ぬーぷ&遊園地「 はいっ! はいっ!! 」 「ぶひいいいいいいいいいいwwwww」 ( ゚д゚ )クワッ!! ヘ(゚∀゚ヘ)アヒャ ┌(_Д_┌ )┐
478 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 06:48:28.87 ID:5cBq9KSA.net] >>462 残念ながらJavaFXなんか誰も使っていない グラフ描きたいんならPythonかJavaScriptあたり使っとけ
479 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 09:12:40.95 ID:TTXiksT8.net] >>468 トリ割れてるやんそれ #aa
480 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 12:31:42.52 ID:1yOH1J8J.net] グラフ表示なら、Python の、matplotlib、 JavaScript
481 名前: の、D3.js とか 「java 再描画」で検索! [] [ここ壊れてます]
482 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 13:07:40.12 ID:g6uwFFdn.net] Rは?
483 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 19:30:49.09 ID:DxqPwkAO.net] うー ここ初心者スレなのにグラフ描くために独学で新言語覚えないといけないんですね… Javaだけプログラムの授業があったからたまたまかけるだけで 実行環境のインストールすらわからない… ちなみにその2つってスクリプト言語ですよね ウェブサーバーインストールしてブラウザでアクセすして動かす感じになるんですか?
484 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 20:02:35.53 ID:TTXiksT8.net] スレチ
485 名前:デフォルトの名無しさん mailto:sage [2018/01/16(火) 20:12:11.25 ID:EcWnXWqw.net] >>473 PythonのmatplotlibはAnacondaだけ入れてスクリプト2,3行実行するだけで簡単にウィンドウが開いてグラフが出るよ。 この際だから覚えておくといいけど、基本的にJavaはWebアプリケーションを作るのに使われていて、 クライアントPC上で動かすものを作るのには全く使われていない。
486 名前:デフォルトの名無しさん [2018/01/16(火) 20:14:16.74 ID:vhqfaNac.net] C#なら大丈夫なのかもね