- 1 名前:デフォルトの名無しさん mailto:sage [2015/10/23(金) 23:09:24.14 ID:sB1GrBUA.net]
- プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作管理 pc11.2ch.net/hp/ Webプログラミング pc11.2ch.net/php/ をご利用下さい。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 (p)ttp://www.wikiroom.com/java/?path,classpath ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 ・String に == は使うな。equals() を使え。※ 質問時の心得 ・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。 ・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。 前スレ ★★Java質問・相談スレッド174★★ [転載禁止]©2ch.net peace.2ch.net/test/read.cgi/tech/1435295532/
- 446 名前:デフォルトの名無しさん mailto:sage [2015/12/11(金) 02:46:17.45 ID:JcTjYlIY.net]
- >>440
isとhasの関係か まぁ基本使用するクラス単体で機能するならオブジェクトの生成でいい だって生成を行うクラスは使うことを目的としているでしょ 継承は名前の通り元にあったクラスを元に拡張していくことだから 使う目的っていうのは継承って言葉とイコールにならないでしょ それにJavaは単体継承だからまだいいけど複数継承があるC++とかだとわけわからなくなっちゃうしね 明示的にインスタンスを生成することで使用用途とかもはっきりするしね 以上 あっ最後に一言 「ハゲ」
- 447 名前:423 mailto:sage [2015/12/11(金) 06:51:11.80 ID:7DodXpQ6.net]
- >>438
マルチうざい peace.2ch.net/test/read.cgi/tech/1448207673/177
- 448 名前:デフォルトの名無しさん [2015/12/11(金) 07:11:02.46 ID:bfh5Rk2s.net]
- >>443
おめーの方がうぜーから。 マナー語りたいならよそでやれや。お茶の教室でしゃこしゃこやってろや。 泡立て器みたいなもんだから。結構なお手前ですねなんつって、着物の下 下着つけてないってマジっすか?って聞いてればいいから。あいつら なんだかんだで欲求不満だからチョロいもんだよ。
- 449 名前:デフォルトの名無しさん mailto:sage [2015/12/11(金) 15:46:53.91 ID:9dA5dIzu.net]
- webアプリでポリモーフィズムってどういうとこで使います?
- 450 名前:デフォルトの名無しさん mailto:sage [2015/12/11(金) 16:38:39.33 ID:e3UNKpeh.net]
- 変態
- 451 名前:デフォルトの名無しさん [2015/12/11(金) 16:56:57.59 ID:T+61JH8Y.net]
- >>445
近親相姦
- 452 名前:デフォルトの名無しさん mailto:sage [2015/12/11(金) 21:50:40.80 ID:xBStiLYN.net]
- WEBとかMVCだけ知っとけば終わりだろ
フォームからデータ取得してデータベースアクセスしてごにょごにょするだけの単純処理にオブジェクト指向とか高度な技術はいらんのよ
- 453 名前:デフォルトの名無しさん mailto:sage [2015/12/11(金) 22:11:12.74 ID:clKhUz+b.net]
- >>448
どんな時に使ってますか?
- 454 名前:デフォルトの名無しさん mailto:sage [2015/12/11(金) 22:13:34.17 ID:d5y2mlmZ.net]
- >>449
まず関連する単語調べてから質問しようぜ 的がずれた質問しているぜ
- 455 名前:デフォルトの名無しさん [2015/12/11(金) 22:41:53.43 ID:bfh5Rk2s.net]
- >>448
業務要件が増えてくると管理するコストが増大するんよ。 画面が50あって、権限が30種類あります。 権限に基づいて各画面で項目を出し分けます、 メッセージを変えます。これだけでも大変に思えるっしょ。 さらに、ユーザーはこれをやってって言ったけど、 やっぱりこういうふうにしてと言い、矢継ぎ早に要求を変えてくる。 それに
- 456 名前:スピーディに対応できなかったら契約切られる。
ちょっと動作が遅いとすぐ苦情くるし、 非機能要件を満たすためにロジックを組み替えることもしばしば。 それらに柔軟にそして迅速に対応できるだけのシステムを作らないといけないんよ。 入門書に載ってるようなサンプルプログラムとはわけが違うのさ。 [] - [ここ壊れてます]
- 457 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 00:03:10.87 ID:LUCIQJb0.net]
- mvcに最低限サービス層は加えよう
モデルとかコントローラにビジネスロジックあったら吐くわ
- 458 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 00:14:25.67 ID:82AyJ3aB.net]
- え?modelの下にserviceパッケージ置くだろ?
- 459 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 02:34:16.22 ID:aUREA2YR.net]
- M モデル(データ・ロジック)
V 画面 C 画面遷移・振り分け
- 460 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 09:00:13.93 ID:DFK8L3rQ.net]
- デスマはなくりません、キリィ
- 461 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 10:52:02.62 ID:RrFopTx4.net]
- >>451
> それにスピーディに対応できなかったら契約切られる。 不安定な職場へのお勤め御苦労様です まあ、そんな対応しかできないならしょうが無いわな
- 462 名前:デフォルトの名無しさん [2015/12/12(土) 11:43:24.06 ID:v/VbuB+R.net]
- >>456
雇用契約と間違ってない?別にいいけど。なんかごめんね。
- 463 名前:デフォルトの名無しさん [2015/12/12(土) 12:04:43.04 ID:Gouy0DcJ.net]
- 初心者です。
dot[i] = (int)150+100*Math.sin(Math.toDegrees(i*6)); で、「doubleからintに変換できません」とでてきます。 なぜできないか、あるいは他のキャストの方法を教えていただけませんか ググっても最初に(int)つける方法しか分かりませんでした。
- 464 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 12:34:28.42 ID:LUCIQJb0.net]
- intのキャストが150にしか効いてない
- 465 名前:デフォルトの名無しさん [2015/12/12(土) 12:39:12.61 ID:Gouy0DcJ.net]
- >>459
あちゃあ。。。 ありがとうございます
- 466 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 12:51:38.87 ID:d6HZdp0p.net]
- 四角形を描くだけのプログラムを作っています
描画は別の場所で常にしていて、ドラッグで四角を描く→左クリックで次のrects配列 ここまではできるのですが、次に右クリックor左クリックすると最初に描いた四角が消えてしまいます 四角形をたくさん描くにはどうしたらいいでしょうか? public void mouseDragged(MouseEvent e){ int button=e.getButton(); if(rx<=0){ rx=e.getX(); ry=e.getY();} rw=e.getX()-rx; rh=e.getY()-ry; rects[rectco]=new Rect(rx,ry,rw,rh); } public void mouseClicked(MouseEvent e){ int button=e.getButton(); //左クリックで確定 if(button==MouseEvent.BUTTON1){ rectco+=1; } //右クリックでリセット if(button==MouseEvent.BUTTON3){ rx=0;ry=0;rw=0;rh=0; } }
- 467 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 13:08:56.30 ID:RrFopTx4.net]
- >>457
間違ってないし まあそんな会社はいくらでもある、悲観しなくていいよ
- 468 名前:デフォルトの名無しさん [2015/12/12(土) 13:15:11.21 ID:v/VbuB+R.net]
- >>462
別に悲観はしてないかな。 悲観的な方にバイアスかけたいっぽいね。ごめんね。
- 469 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 13:43:31.84 ID:RrFopTx4.net]
- ああ、すまん
そんなやっつけの仕事したことないから w まあ、本人楽しけりゃいいよね
- 470 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 14:03:59.90 ID:d6HZdp0p.net]
- すみません自己解決しました
そもそも描画に問題がありました……
- 471 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 14:15:09.30 ID:LUCIQJb0.net]
- >>465
図形保存するのはListのがよくない? 図形作りまくるとoutofarray吐いちゃうでしょ
- 472 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 14:17:03.17 ID:LUCIQJb0.net]
- arrayindexoutofboundsか
- 473 名前:デフォルトの名無しさん [2015/12/12(土) 14:20:35.70 ID:v/VbuB+R.net]
- >>464
自分はしっかりと練って仕事してる、 >>451より優れてるっていう気持ちが伝わってきた。なんかごめん。 俺のレスのせいでほんとごめん。ごめんなさい。
- 474 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 14:25:09.54 ID:d6HZdp0p.net]
- >>466
ありがとうございます List知りませんでした。調べたらListすごい便利ですね。 とりあえず配列100個用意して100以上作れない仕様で行くつもりだったので助かりました(*´ω`*)
- 475 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 14:33:30.65 ID:MdJhXOlA.net]
- プログラムやったことないのに自社のWebサービス(Servlet/JSP+Oracleらしい)部門に回されるの確定したんで勉強してるんですが、
マルチスレッドってDBアクセスで使うんですか? それと、仕事中にどう処理したら良いか分からない部分が出てきたら、ググってコピペとかもアリなんでしょうか?
- 476 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 15:01:15.12 ID:iI1oyV8R.net]
- 転職サイトお勧め
- 477 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 15:03:55.57 ID:MdJhXOlA.net]
- >>471
ここ10年以上管理職しか経験ないので市場価値は・・・ それに開発部門管理するのにプログラム出来ないのもやばそうなので勉強するしかないのです。
- 478 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 15:13:40.17 ID:iI1oyV8R.net]
- >>472
プロジェクト管理、品質管理だろ、情処の上の方目指して勉強したら
- 479 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 15:14:53.94 ID:cFQz472g.net]
- webサービスだとマルチスレッド禁止されてそう
- 480 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 15:21:01.74 ID:RrFopTx4.net]
- >>472
付け焼き刃の知識なんて意味がない と言うより、中途半端な知識で色々言われる方が迷惑 あなたが見るべきなのはコードではなく部下だよ
- 481 名前:デフォルトの名無しさん [2015/12/12(土) 15:34:01.89 ID:GS8R/uuh.net]
- >>470
プログラムやったことがないのに、できるふりがしたいのですか?
- 482 名前:デフォルトの名無しさん [2015/12/12(土) 15:41:19.49 ID:Gouy0DcJ.net]
- awtを使って、whileループ内ののrepaintメソッドでpaintメソッドに書いた処理を
行わせようとしているのですが、repaintメソッドが最初のループの時にしか 呼ばれません。 どうしたらrepaintメソッドを毎ループごとに呼べるのでしょうか。 ループは新たにスレッドを開始させて行わせ、 1ループは100ミリ秒で回しています。 paintメソッド内の処理としては、配列を使いx座標に対応したy座標に drawLineメソッドで点を描画しています。(x座標は0から480までです。) またキーイベントやマウスイベントなどもありません。
- 483 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 20:49:45.43 ID:6BEPKgtI.net]
- 環境構築をしたのですが、libをインポートしても使えません
環境構築を間違えたのでしょうか
- 484 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 20:55:20.61 ID:zH1so4gn.net]
- うーん、そうだねー
- 485 名前:デフォルトの名無しさん mailto:sage [2015/12/12(土) 21:45:03.23 ID:KRQ8EAlK.net]
- >>479
どうすればいいのでしょうか? 無知ですみません
- 486 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 01:18:28.27 ID:Pn9/bzws.net]
- とりあえずプログラミングの前にgoogle先生の使い方を覚えた方がいいぞ
- 487 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 06:36:58.32 ID:/scuN6hQ.net]
- >>481
検索の仕方がわかりません JAVA lib インポートできない だと出てこないし・・・ どういうワードで検索すればよいのでしょうか
- 488 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 06:50:22.43 ID:Hf8bNNBx.net]
- ライブラリのインポートなんてIDE依存だからIDE名をjavaの次に入れたほうがいいだろう
今はエラーメッセージをそのまま貼り付けて検索するのが早いが
- 489 名前:383 mailto:sage [2015/12/13(日) 07:06:23.24 ID:y5C38zTV.net]
- JavaFXに外からD&Dできない場合があるってのはJavaまったく関係なくってVISTA以降のWindowsコマンドプロンプトの仕様だったわ
コマンドプロンプトにパスがドラッグできないのと同じ理屈みたいね
- 490 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 11:13:28.68 ID:yq3eT/D1.net]
- >>484
> VISTA以降 コマンドプロンプトならWin7以降は出来たはず。Vistaなら「パスとしてコピー」を試せば。 news.mynavi.jp/articles/2009/10/20/w7/
- 491 名前:デフォルトの名無しさん [2015/12/13(日) 11:21:55.82 ID:heE0GRcy.net]
- 例えば
A, B, C, D, E, F, G, H, I,, J の10個のクラスがあったとして JはIを継承、IはHを継承、HはGを継承... としてAを一番の親クラスとする作りにした場合 何か問題やデメリットがありますでしょうか? またオブジェクト指向の考えたとして間違っているでしょうか? ご教授お願い致します。
- 492 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 11:29:35.35 ID:pukhMxdP.net]
- 多階層の継承の是非ってことか?
言語や開発スタイルによるけど、Javaでは一般に良くないとされることが多い Javaでは複数のクラスに継承で同じ機能を持たせるよりも 単機能のクラスを繰り返し再利用するほうが好まれる傾向がある
- 493 名前:デフォルトの名無しさん [2015/12/13(日) 11:47:36.33 ID:heE0GRcy.net]
- >>487
すいません。知識不足で申し訳ないのですが 多階層の継承=多重継承のことで宜しいでしょうか?
- 494 名前:461 mailto:sage [2015/12/13(日) 11:48:43.41 ID:DH+WqVZ8.net]
- 昨日に引き続き質問ばかりですみません
あれからListを調べて実装しようと思ったのですが調べてみたものの 「エラー: addに適切なメソッドが見つかりません(int,int,int,int)」と出て出来ません 分かる方いたらお願いします public static ArrayList<Rect> rects =new ArrayList<Rect>(); rects.add(1,1,1,1); public Rect(int xx,int yy,int ww,int hh){ x=xx; y=yy; WIDTH=ww; HEIGHT=hh; } エラー: addに適切なメソッドが見つかりません(int,int,int,int) rects.add(1,1,1,1); ^ メソッド Collection.add(Rect)は使用できません (実引数リストと仮引数リストの長さが異なります) メソッド List.add(Rect)は使用できません (実引数リストと仮引数リストの長さが異なります) メソッド List.add(int,Rect)は使用できません (実引数リストと仮引数リストの長さが異なります) まだまだ同じようなエラーが出ています
- 495 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 11:53:18.96 ID:pukhMxdP.net]
- >>488
いや、単に深い階層の継承という意味で言った 継承使わなくてもコードの再利用はできるよ? クラスDでCの機能を使いたいなら、 Dの中でCのインスタンス作ってメソッド呼べばいいだけだ
- 496 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 11:55:46.11 ID:heE0GRcy.net]
- >>490
やはりそれが基本ですよね わかりました!ありがとうございます! 見直します!
- 497 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 12:05:12.94 ID:jnG/4H+6.net]
- rects.add(new Rect(1,1,1,1))をやりたいのでは
- 498 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 12:50:08.71 ID:DH+WqVZ8.net]
- >>492
ありがとうございます。その通りでした。 こういう細かい?所が全然分からなくておちんこもみそう
- 499 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 13:05:48.03 ID:heE0GRcy.net]
- >>493
すいません・・ こういったスレで下ネタはご遠慮願います。 一応女子も見てるので。
- 500 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 13:37:30.72 ID:npnIFy9b.net]
- ついでにハゲネタも慎んでくれ
- 501 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 15:36:00.11 ID:K7mToryR.net]
- >>495
すまん、ハゲ
- 502 名前:デフォルトの名無しさん mailto:sage [2015/12/13(日) 16:01:10.80 ID:QpwRxxX8.net]
- ハゲると語尾がハゲになるの知ってたハゲ?
- 503 名前:デフォルトの名無しさん mailto:sage [2015/12/14(月) 02:03:51.47 ID:DKuoc3J6.net]
- Javaで
new int[1000][1000] ってやった場合4m分の連続領域に確保されるの? 4K分ずつどこに確保されるかはシステムまかせ?
- 504 名前:デフォルトの名無しさん [2015/12/14(月) 02:43:04.17 ID:E4E5E56o.net]
- ハゲはそういう人がハゲてるとうちの死んだハゲが言っとったぞハゲ。
- 505 名前:デフォルトの名無しさん mailto:sage [2015/12/14(月) 07:46:24.50 ID:gQjLPXyy.net]
- >>498
言語仕様的には一つの配列が連続した記憶域に確保されなければならない、 という制約すらなかったような。
- 506 名前:デフォルトの名無しさん mailto:sage [2015/12/14(月) 07:59:19.85 ID:vttUzqTs.net]
- Java言語じゃなくてJava VMの仕様を聞いてるんだろ
- 507 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 08:32:58.84 ID:9AomEZuR.net]
- むかしOpenJDKのソース見たときは、連続して取ろうという努力の欠片も見えなかった気が
どうせGCでワケワカメになるだろうしね
- 508 名前:名無しさん@そうだ選挙に行こう [2015/12/14(月) 08:58:18.66 ID:E4E5E56o.net]
- ハゲてしまうのはしかたないにしても
心までハゲてしまってはいかんぞ。
- 509 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 10:47:04.66 ID:DSJzQQ/E.net]
- 心に毛を生やしておけってあんたw
- 510 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 11:19:29.33 ID:lTDtx347.net]
- 心臓に毛を生やしておけの間違いだろうw
- 511 名前:名無しさん@そうだ選挙に行こう [2015/12/14(月) 15:11:56.24 ID:E4E5E56o.net]
- だが残念なことにこのスレには
心までハゲてしまったものもいる。
- 512 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 16:34:04.19 ID:8hsP67Jn.net]
- あぁかみさま....
- 513 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 16:38:35.92 ID:DuaClO19.net]
- ああっ女神さまっ
- 514 名前:名無しさん@そうだ選挙に行こう mailto:sage [2015/12/14(月) 18:12:48.49 ID:4W4h1hyk.net]
- Eclipseでservlet作る際、LAN内からしかアクセスさせないページと、WANからもアクセス出来るページはどうやって設定したら良いんでしょうか?
- 515 名前:デフォルトの名無しさん mailto:sage [2015/12/14(月) 21:30:20.22 ID:09y2bK/v.net]
- うん、スレチ。
スモチ
- 516 名前:デフォルトの名無しさん [2015/12/14(月) 23:10:45.93 ID:JrPDc31a.net]
- >>509
eclipseと関係ない話だな。
- 517 名前:デフォルトの名無しさん mailto:sage [2015/12/14(月) 23:23:14.41 ID:R0gDPv6y.net]
- >>509
if(ipaddr==WAN) { // WAN } else { // LAN }
- 518 名前:スッキリ厨 mailto:sage [2015/12/14(月) 23:52:26.80 ID:OK11/t54.net]
- 君は本当に、servletで作っているの?
JSPの間違いだろ? スッキリわかる サーブレット&JSP入門、2014 を読んで
- 519 名前:509 mailto:sage [2015/12/15(火) 01:04:35.60 ID:+Galom3J.net]
- すみません。
結局よく分からないのでTomcatで制限かけることにしました。
- 520 名前:デフォルトの名無しさん [2015/12/15(火) 02:12:36.73 ID:/v0DDHjK.net]
- >>513
JSPとサーブレットは使い分けるものだよ。
- 521 名前:デフォルトの名無しさん mailto:sage [2015/12/15(火) 11:45:52.24 ID:TUtcbWce.net]
- あぁ^〜CPU稼働率がぴょんぴょんするんじゃぁ^〜
- 522 名前:デフォルトの名無しさん mailto:sage [2015/12/15(火) 16:44:39.41 ID:YbKXUJ+M.net]
- byte[] input = new byte[] {1, 2, 3, 0, 4, 5, 0, 0, 0};
// 末尾の0を削りたい byte[] expected = new byte[] {1, 2, 3, 0, 4, 5}; 今はforループで配列末尾から0かどうか調べていって、 0以外が見つかった時点で先頭からその位置までの部分配列を作っています。 もう少し泥臭くないやり方があれば教えていただけますか?
- 523 名前:デフォルトの名無しさん mailto:sage [2015/12/15(火) 18:39:42.37 ID:KUVvK8dp.net]
- こういうの自分も気になる。
jvmがbyte配列を連続領域に確保するのか 内部的にリンクリストで格納するのか? 配列長によって変わって来るのかな。 アルゴリズム次第でパフォーマンスにはねそう。
- 524 名前:デフォルトの名無しさん mailto:sagete [2015/12/15(火) 19:02:05.44 ID:VGRXZIm0.net]
- 逆順にして先頭から連続した0を削除して(あるいはコピーせず)また逆順にする
- 525 名前:デフォルトの名無しさん mailto:sage [2015/12/15(火) 19:17:33.37 ID:TvkotTKK.net]
- ListにしてlastIndexOf使ってそこまで配列に戻す
- 526 名前:デフォルトの名無しさん mailto:sage [2015/12/15(火) 23:10:46.79 ID:zWEvy03T.net]
- >>517
前にこのスレでやり方紹介されてたよ https://paiza.io/projects/YV6jAgzFUjU1wBCKgLjRMw byte[] input = new byte[] {1, 2, 3, 0, 4, 5, 0, 0, 0}; byte[] expected = new String(input, "ASCII").replaceAll("\0+$","").getBytes(); System.out.println(Arrays.toString(input)); System.out.println(Arrays.toString(expected));
- 527 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 00:01:13.88 ID:KjHRdIDG.net]
- >>521
すまんそれ俺がいうのも何だがメモリリークする
- 528 名前:デフォルトの名無しさん [2015/12/16(水) 00:05:04.08 ID:STRntoUw.net]
- >>522
マジか?おもしろいな。 詳しく教えてちょ。
- 529 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 00:19:33.11 ID:3yFYtclf.net]
- 不正な文字コードになるbyte配列で文字列生成して操作するんだから動作保障されてないし危険だわな
- 530 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 00:19:49.96 ID:KjHRdIDG.net]
- >>523
よくわからんが、どうもreplaceAll()の中の人に問題があるようで printlnでは末尾0群が消えてるようにみえるし lengthとかで見ても縮められているようなのだが、 内部では領域が残っているっぽく、GCされなくなるっぽい ちなOracle JDK 1.8
- 531 名前:デフォルトの名無しさん [2015/12/16(水) 00:27:33.31 ID:STRntoUw.net]
- >>525
おお。標準ライブラリにもバグがあるものなんだな。すげー。
- 532 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 00:35:04.08 ID:G9F0Y7Zn.net]
- >>518
ArrayList と、LinkedList
- 533 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 04:01:16.68 ID:3yFYtclf.net]
- >>525
OracleJDK8のソースコードは見てないがOracleJDK8だけのバグかもしれんね OpenJDK8のほうはソースコード見てきたが特に問題なかったぞ もし問題があるのだとしたらCharsetDecoder()の実装の問題か、char型配列のGC処理に問題があるかだぞ hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/share/classes/java/
- 534 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 09:13:13.10 ID:cUS4LgFL.net]
- 517です
レスくださった皆様ありがとうございます メモリリーク周りのお話も興味深く読みました ちなみに、配列と同じ要素を持つ変更可能なListってどう作るのが一般的なのでしょうか 私のやり方はこんな感じです List<String> list = new ArrayList(Arrays.asList(inputStrArray));
- 535 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 10:14:53.15 ID:hzrDto42.net]
- >>525
ideone.com/9zpOie んー、これGCされてるよなー コードどっか間違えてる?
- 536 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 12:29:28.89 ID:xeWyKFIm.net]
- 無駄に長い文字列を作成したい。ランダムでも固定でも何でも良いが、長さは指定したい。
例えばPerlだと "0"x1000 とすれば、0が1000文字連なった文字列が得られます。 Javaはそれほど詳しくなく、思いつくのは for(i=0;i<targetSize;i++){longstr+="0";} 程度のものしか思いつかず、時間がかかりすぎる。 以上のような内容なのですが、JAVAで文字を量産するのになにか良い方法はありませんでしょうか? 宜しくお願いします
- 537 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 12:33:53.73 ID:xeWyKFIm.net]
- すいません、StringWriterを使った方法を見つけました。
- 538 名前:デフォルトの名無しさん mailto:sage [2015/12/16(水) 13:03:12.87 ID:hzrDto42.net]
- char[] chars = new char[1000];
java.util.Arrays.fill(chars, '0'); String longstr = new String(chars);
- 539 名前:デフォルトの名無しさん [2015/12/17(木) 23:55:14.17 ID:SAZ96wkn.net]
- すいません、まったくの初心者なのですが、次のコードでエラーが出てしまいます。
本の解答通りなのですが、なぜなのかご指摘いただけないでしょうか。 public class Main{ public static void main(String[] args){ System.out.println(
- 540 名前:デフォルトの名無しさん mailto:sage [2015/12/17(木) 23:56:33.25 ID:4HwCeBPi.net]
- 途中までしか書いてないから?
- 541 名前:sage [2015/12/17(木) 23:57:04.33 ID:SAZ96wkn.net]
- すいません途切れました。
なんとか解決します。 ありがとうございました。
- 542 名前:デフォルトの名無しさん mailto:sage [2015/12/18(金) 08:59:07.44 ID:gXOWTloZ.net]
- いや駄目だ
解決するまでここに逐一報告すること
- 543 名前:デフォルトの名無しさん [2015/12/18(金) 12:41:33.17 ID:A0wFUrCZ.net]
- でないとハゲるぞ
- 544 名前:デフォルトの名無しさん [2015/12/18(金) 12:42:43.06 ID:A0wFUrCZ.net]
- でないとハゲるぞ
- 545 名前:デフォルトの名無しさん [2015/12/18(金) 12:45:46.61 ID:A0wFUrCZ.net]
- でないとハゲるぞ
- 546 名前:デフォルトの名無しさん [2015/12/18(金) 12:47:50.46 ID:A0wFUrCZ.net]
- でないとハゲるぞ
|

|