★★Java質問・相談スレッド181★★

■ このスレッドは過去ログ倉庫に格納されています
2018/02/10(土) 17:49:40.56ID:l9ZzjyKP
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    http://pc11.2ch.net/hp/
Webプログラミング http://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質問・相談スレッド180★★
https://mevius.5ch.net/test/read.cgi/tech/1492780397/
42デフォルトの名無しさん
垢版 |
2018/02/22(木) 21:30:20.55ID:gkrr6Csx
「それほど」がどの程度の速度低下まで許容されるのかをちゃんと定義してくれないと(すっとぼけ)
2018/02/22(木) 21:52:44.46ID:IYnEzTFC
「メモリ幅」ってなんのことだ?
44デフォルトの名無しさん
垢版 |
2018/02/22(木) 23:26:05.38ID:YcYRar81
確保するメモリのサイズのことじゃなかろうかと知らんけど
45デフォルトの名無しさん
垢版 |
2018/02/22(木) 23:26:40.80ID:YcYRar81
「メモリ幅」ってなんのことだ?
46デフォルトの名無しさん
垢版 |
2018/02/22(木) 23:27:09.12ID:YcYRar81
同じバイトコードになるという答えが見当違いとは思えない
2018/02/22(木) 23:53:50.86ID:K6gwUVsb
メモリ幅なんて言う奴は、CPU・RAM を分かっていない

どの言語でも、そんなの保証していない
2018/02/22(木) 23:54:13.94ID:ylubyEbg
>>39
ほんこれ
わからないなら初心者版行けとしか
2018/02/23(金) 06:23:51.21ID:Brpvjprl
java 文字列連結 最適化
でググった方が早いよ。
2018/02/23(金) 08:13:48.99ID:oHNB0pIN
そもそも ab+=cd と ab=ab+cd の違いが問題になるほどのプログラム組んでるのかよ w
大量の文字列追加があるならStringBuilder使えや
2018/02/23(金) 09:42:52.51ID:HSy+CPfQ
「わからない人は答えないでください」は知恵遅れでよく見るけどそれが掲示板にも流れてきてるのか
そういうやつが「普通」になっているのか、どっちなんだろう?
52デフォルトの名無しさん
垢版 |
2018/02/23(金) 11:27:53.19ID:mFZl6vMq
>>45
ほら、目盛りの幅。3cmとか。
53デフォルトの名無しさん
垢版 |
2018/02/23(金) 11:54:49.01ID:zNsQyXzG
>>50
これ
2018/02/23(金) 18:05:40.89ID:tsgXcJ7V
質問スレ 「わからない人は答えないで下さい」

ま、まあそうだな…
55デフォルトの名無しさん
垢版 |
2018/02/23(金) 19:26:11.88ID:Py5a3myD
String a = "わからない人は";
String b = "答えないでください。";

a += b;
56デフォルトの名無しさん
垢版 |
2018/02/23(金) 19:37:01.17ID:Jw2VdbNh
ふう
2018/02/23(金) 22:52:04.40ID:IHdQ8A6l
>>55
ベストアンサー
2018/02/24(土) 06:52:39.70ID:Fw6wAD1s
>>37
周辺のコードとJavaコンパイラのバージョンによって変わったりするからそれだけの情報だと何とも
つまりは>>50の通り
>>38は間違ったこと言ってないからね

メモリ幅?:Stringが確保する領域のこと?
内部のやりくり?:GCのタイミングの話?
連続して〜?:ループ処理の内部を+=か+で変えるってこと?それなら38の通り

何を持って見当違いだと判断したのだ
2018/02/24(土) 07:22:33.34ID:BKLSO8lU
>37は人気者だね!
2018/02/24(土) 07:44:29.29ID:UzdWcVQE
わからないの群れを見越して質問者に先に釘をさされるようじゃここも終わりだな
2018/02/24(土) 08:10:48.12ID:8SGsAbML
質問内容があの走ってる電車のレール長は変わりますか?どのように変わりますか?
に対して38のこたえが レールの上を走ってるに決まってんだろ だからじゃね
頓珍漢と思われても仕方ない
2018/02/24(土) 08:12:05.24ID:MAo3e6Of
僕の頭の中がわかる人だけこたえてください
2018/02/24(土) 08:36:28.75ID:CuRF79s8
わざわざ言わんでも、「メモリ幅」が何を意味しているのか推理できる人しか答えられないのは確かだな。
2018/02/24(土) 08:40:19.77ID:nsuuekrF
>>60
お前はどこにいるのw
2018/02/24(土) 08:54:31.97ID:Fw6wAD1s
>>61
その例えはおかしいわ
この場合、性能が同じaの電車とbの電車があります。同じ回数走ったらレールの長さや電車の速度はかわらないんでしょうかと言ってるようなものだぞ
当然、レールの長さは変わらない
2018/02/24(土) 08:58:48.32ID:Fw6wAD1s
いや、やっぱなんか違うな
無理やり例えるのは良くないな
2018/02/24(土) 18:13:10.60ID:IGnDdAZf
>>61
お前もわかってないからそんな頓珍漢な例えになるんだよ
同じバイトコードになるってことは、それが元々 a += b と書かれてたか a = a + b と書かれてたかなんてJVMにはわからないし、
JVMが同じものとして解釈する以上、メモリ幅の変動(?)も速度低下(?)もないわけで

>>37が言ってるのは、同じバイトコードになる、よってそのコードは等価
お前の例えは、レールの上を走ってる、よってなんなの?
2018/02/24(土) 18:16:34.78ID:dm+ZE7MQ
電車から逃げ出した痴漢だろ
2018/02/24(土) 20:20:05.65ID:BKLSO8lU
っていうかメモリ幅ってなにさ?
2018/02/24(土) 21:19:43.00ID:mD86uI0D
SIMMの幅のことだろ
2018/02/24(土) 22:08:13.59ID:01A04fC8
むかしパソコン詳しい人に教えてもらったっけ
メモリは机の広さで多くのファイルを広げられるから作業が速くなる
机が小さかったら使わないファイルや文房具をしまったりするから効率が悪くなるって

なるほどなーって思った
それでうちの机はあまり大きくないからメモリ少なめのパソコン買ったよ(^o^)
2018/02/25(日) 03:42:22.23ID:PW98pIgG
なんで主記憶容量の話に
2018/02/25(日) 10:14:47.10ID:+Ur3vkTA
アホの議論だから
2018/02/25(日) 11:16:42.37ID:59jeAjzx
でもパソコンのメモリって減らないからすごいよな!
スマホは毎月7ギガとか減るのに
75デフォルトの名無しさん
垢版 |
2018/02/25(日) 11:25:47.01ID:251p5lsj
ポータブルハードディスクって幅小さくて持ちやすいよな
2018/02/25(日) 13:39:46.79ID:8xIV5yfC
>>71
ちょっとだけクスッとした。
77デフォルトの名無しさん
垢版 |
2018/03/03(土) 17:37:02.43ID:V2kYq93l
だから?
78デフォルトの名無しさん
垢版 |
2018/03/03(土) 18:03:32.42ID:h2dbhV1r
https://images-na.ssl-images-amazon.com/images/I/61DmP9T3dkL._SL1500_.jpg
79デフォルトの名無しさん
垢版 |
2018/03/10(土) 00:24:37.51ID:J3fnbe39
java勉強中の初心者です
javaEEのservletの“doDelete”について質問です。
勉強のためcurdを実装しているのですが、
post(c),get(r),はhtmlのform,hrefから送信できたのですが、
htmlからdelete(d)を送信し"doDelete”に渡したいのですがどの様にすればいいのでしょうか。
そもそも、考え方が間違っているのでしょうか。
アドバイス、参考などがありましたらご教授お願いします。
80デフォルトの名無しさん
垢版 |
2018/03/10(土) 00:34:48.00ID:q/evhJ6x
ご教示
81デフォルトの名無しさん
垢版 |
2018/03/10(土) 00:50:58.87ID:aNTnNw8G
>>79
JavaScriptで
デベロッパーツールとjQueryでREST APIのテストリクエストを実行
http://dim5.net/programming/using-ajax-request-on-js-console.html
2018/03/10(土) 10:31:42.46ID:vFw8BYES
>>79
HTTPメソッドのDELETEに対応して実装されているのでしょう
確かリソース自体の削除だったか
実際に使われるのはGETとPOSTがほとんど
負荷が高いとHEADで対応はあるかも

データの削除はPOSTによるコマンド的なものでやる
またはURL末尾にdeleteとかメソッドっぽく含める
という方が見かける

URLの設計次第ではアリだと思うけどブラウザがあまり対応してないのかな
2015-07-22 [html/css] httpのフォームでDELETE やPUTのメソッドを送る方法
http://portaltan.hatenablog.com/entry/2015/07/22/122031
2018/03/10(土) 10:33:16.22ID:vFw8BYES
>>79
HTTPメソッドのDELETEに対応して実装されているのでしょう
確かリソース自体の削除だったか
実際に使われるのはGETとPOSTがほとんど
負荷が高いとHEADで対応はあるかも

データの削除はPOSTによるコマンド的なものでやる
またはURL末尾にdeleteとかメソッドっぽく含める
という方が見かける

URLの設計次第ではアリだと思うけどブラウザがあまり対応してないのかな
2015-07-22 [html/css] httpのフォームでDELETE やPUTのメソッドを送る方法
http://portaltan.hatenablog.com/entry/2015/07/22/122031
2018/03/10(土) 18:28:38.86ID:32LTkPVU
>>79
hrefはGETのみ、formはGETかPOSTしかサポートしてない
htmlからPUTやDELETEメソッドを使いたければXMLHttpRequest(XHR)を使う
>>81で書いてるjQueryは内部的にXHRを使ってる

サーバーAPIの単純な動作確認が目的ならhtmlじゃなく
cURLやPostmanのようなhttpクライアントを使ったほうが簡単
85デフォルトの名無しさん
垢版 |
2018/03/10(土) 23:13:45.90ID:J3fnbe39
>>84
>>83
そうなんですね。
聞きかじったRESTfullとhtmlのhref,formを混同していました。
新たにクラスを作っていhrefからdoGETにパラメータを渡して処理するようにしました。

しかし、なぜformからGETとPOSTしかサポートされないでしょうかね。
正直、釈然としません・・・

スレ違いだったらスルーしてください
2018/03/11(日) 11:18:11.36ID:u0Fc0bsI
>>85
2014-03-29 なぜ html の form は PUT / DELETE をサポートしないのか?
http://jxck.hatenablog.com/entry/why-form-dosent-support-put-delete
2018/03/11(日) 13:58:39.70ID:91F3yKR+
よくインターネット上の広告で半年でエンジニアに!みたいなのあるけど、インターネット不得手、プログラム未経験者が真剣に半年頑張れば本当にそんなこと可能なんですか?
可能ならその理由はなんでしょう?人材が足りていないというのは存じ上げていますが
2018/03/11(日) 13:59:53.47ID:XNLW8FjI
IT土方、昔は元コンビニ店員(未経験)といたけど
89デフォルトの名無しさん
垢版 |
2018/03/11(日) 14:17:33.20ID:OHQW+NNW
半年でエンジニアになる理由?
90デフォルトの名無しさん
垢版 |
2018/03/11(日) 14:19:09.66ID:OHQW+NNW
1年よりも半年がいいし
半年よりも1ヶ月がいいだろうけど
半年かかるってことなんじゃ
2018/03/11(日) 15:07:12.87ID:u0Fc0bsI
>>87
スキルシートに○○開発半年と書ければ派遣できるからじゃないか
92デフォルトの名無しさん
垢版 |
2018/03/11(日) 15:59:35.51ID:FcyL3wwo
あれ?デジャ・ビュか?どこかで同じ書き込みを見たような・・・
93デフォルトの名無しさん
垢版 |
2018/03/13(火) 18:07:26.87ID:cTFPDQau
javaというより数学の話に近いかもしれんのだがこれ答え間違ってるよね?
http://tech.pjin.jp/blog/2017/10/30/java-programing-exercise-8/
94デフォルトの名無しさん
垢版 |
2018/03/13(火) 18:32:22.59ID:LC30GjQR
>>93
え?どれが?
95デフォルトの名無しさん
垢版 |
2018/03/13(火) 18:57:50.45ID:jO7pAkit
答えが正である理由が分からないわ。と思ったが
差は大きな数字から小さな数字を引くことだと今になって初めて知った。ボクは恥ずかしい女ですw
2018/03/13(火) 20:35:25.12ID:XMKMH3bD
>>95
お前はおっさんです!
2018/03/13(火) 20:40:24.25ID:/ChP+Vc3
状況によると思う
基準値からの差とか言う時に絶対値だけだと色々不便だし
98デフォルトの名無しさん
垢版 |
2018/03/13(火) 22:18:55.48ID:wTdUbQ7M
>>94
例えば+xと-yだとしたらx+yになって差になってないと思うけど…
出題者と自分とで「差」の認識が違ったのかな
いろいろ場合分けしてたから「え?これでいいの?」って拍子抜けだった
99デフォルトの名無しさん
垢版 |
2018/03/13(火) 22:30:12.11ID:Q4D8j7yB
>>98
君が考えた差を計算するソース見せて
100デフォルトの名無しさん
垢版 |
2018/03/13(火) 22:35:23.36ID:jO7pAkit
ユーザや設計者から指定された「差」の定義や例文がないと混乱するわね。
以上以下と未満ですら怪しい人が多いから
>>96
僕はボクっ子だもん
101デフォルトの名無しさん
垢版 |
2018/03/13(火) 22:36:24.93ID:9h29uVxq
おいおい中一レベルだぞ
102デフォルトの名無しさん
垢版 |
2018/03/14(水) 00:02:50.00ID:5wanHWIv
>>99
ちょっと考えたら自分が見当違いのことしてたの分かったからもう許して
2018/03/14(水) 21:36:07.79ID:V4ac6dGx
xとyの値次第でintの範囲に収まらなくなる可能性あるから
あんまり良くないなこれ
2018/03/15(木) 22:43:23.98ID:jcS43Jhh
> 差を求めるということは大きい値から小さい値を引いた結果になります。

この定義には驚きだね。差の絶対値じゃん。
2018/03/15(木) 22:45:38.78ID:jcS43Jhh
プログラム視点でもintの演算を勝手にunsignedにしてるし
2018/03/15(木) 22:46:20.74ID:85Z09i/Z
ものを知らないだけ
辞書引けよ
2018/03/27(火) 00:04:41.18ID:LxXLqxse
>>95
>差は大きな数字から小さな数字を引くことだと今になって初めて知った。ボクは恥ずかしい女ですw
それだと負数考慮してないでしょ。差は被減数から減数を引くこと。

>>93
問題文が悪いのよこれ。

数学的には「差」は減法の答え(減算の結果)で、
国語的にはただ「差」といった場合には隔たりの事、数の差と言った場合には2つの数の距離の事
(この距離を表す数は数学的にはベクトルになるけど、これが国語的な2者間の数の隔たりを表す)だけど、
一方がゼロ点であるとは限らないから、結局数学と同じ意味になる。
多分、この問題文考えたのも>>95と同じ様に負数の概念がすっぽ抜けてんだよ。>>93は正しい。
2018/03/27(火) 03:43:48.88ID:cnMXkmda
>>107
その話題もう終わってるから
109デフォルトの名無しさん
垢版 |
2018/03/27(火) 06:37:48.65ID:UWBQsjyU
>>108
別に良いと思う
時間も空間も超越するのが5chの醍醐味やで
お前老害や
2018/03/28(水) 01:09:27.59ID:hR1N5KW+
リストでループ途中に要素が追加されてもループするのはどうすればいいんですか?

forEachでもIterattionでもmodifiedなんちゃらエラーになるんですよね
昔ながらのVectorでfor(int i = 0; i < size(); i++) elementAt(i) とかしなきゃだめですか?
111デフォルトの名無しさん
垢版 |
2018/03/28(水) 01:21:01.26ID:7s/C1dYs
>>110
追加されたものもループで処理したいん?
2018/03/28(水) 07:58:42.47ID:hR1N5KW+
そうです

有限グラフ探索で隣接ノードをリストにためて順番に処理していきたいので
最初は開始ノードのみで途中でどんどんふえていく感じにしたくて
2018/03/28(水) 08:23:59.58ID:7oWFtssG
>>110
追加中にバッファが再確保される可能性があるから仕方ない。
つList#listIterator()
114デフォルトの名無しさん
垢版 |
2018/03/28(水) 09:46:54.23ID:fhRmItKh
>>110
それ要素が処理している所よりも手前に挿入されたらダメだよね。必ず最後に追加しかされないことが保証されているリストならいいけど。
それと、削除もできないようになってないと処理中に削除される可能性がある。

ということで、処理する側と完全に連携可能なやつを自作した方が良いのでは?
2018/03/28(水) 12:02:29.13ID:B/xf69WY
いやList#listIteratorつかおうよ
2018/03/28(水) 13:23:01.36ID:/IZ3VKI9
キューをwhileで処理するんがええんじゃなかろうかと
2018/03/28(水) 19:27:30.32ID:hR1N5KW+
>>114,116
もちろん自作してもいいし実現方法はいくらでもある話なんですけど
java8の拡張文で用意されてるクラス使ってきれいにかけないのかなとちょっと思っただけでした
2018/03/29(木) 11:20:13.01ID:QwxffFOd
Collecionから一致したデータを取り出すのってどうすればいいですか?

Stringをextendsして情報を追加したクラスのCollectionから
Stringで検索してデータを取り出したいんですけど
自作するしかないですか?
119デフォルトの名無しさん
垢版 |
2018/03/29(木) 12:35:43.41ID:Zp+X1sFq
>>118
それHashMapは使えないの?KeyからValue引っ張り出すようなやつ。
2018/03/29(木) 14:23:38.22ID:QwxffFOd
>>119
やっぱりそうするしかないかな

その場合 HashMap の Key にも Value にも同じ文字列もつことになるのでデータの無駄な気がして…

String + Iformation だけのクラスにわけて Map でもつことも考えたけど
length とか charAt とか使うから結局中で文字列ももたないといけないんですよね

そこそこデータ数が多いので文字列をテーブルに2個もつのはさけたかった…
121デフォルトの名無しさん
垢版 |
2018/03/29(木) 17:22:09.18ID:wUwtUNlx
>>120
文字列複数とはいってもStringのインスタンスは一つで二ヶ所から参照されるだけだからたいしてメモリ食わないのでは?
2018/03/29(木) 17:45:33.63ID:QwxffFOd
そうなんですね
じゃあMapで組みなおしてみます

ありがとうございました
123デフォルトの名無しさん
垢版 |
2018/03/29(木) 18:51:34.60ID:yhEgq3Dh
文字列の内容が同じ時に必ず同じStringのインスタンスにしたい場合は String#intern() を使うと良い。
2018/03/29(木) 19:16:34.30ID:+yEHtKmw
拡張したStringクラス内でアップキャストして比較すればいけない?
2018/03/29(木) 19:38:33.67ID:LS3RTWy4
Stringって継承できるの?finalじゃなかった?
俺が古いのかな
2018/03/29(木) 19:39:40.10ID:vAfgGUZ/
研究でAIのチューニング用UIつくってるんですが
部品のレイアウトがうまくいかないです

最初の画面にはききたいことの入力欄だけあって

入力すると次のページに数件予想質問と結果を表示して
候補にあれば選択ボタン
なければ全部NGボタンをおしてから正解の答えを入力する

ってしたいんですが
どうしても部品が画面外にでたり重なったりします

FlowLayout BoxLayout setBounds指定とかいろいろためしたんですがうまくいきません
どこが悪いか教えていただけませんか

http://fast-uploader.com/file/7077868223948/
パス 1234
デバッグ用にGUI部分だけ抜き出してみたんですが…
2018/03/29(木) 19:51:18.47ID:eXpBCev1
finalだったわ
継承はできないな
2018/03/29(木) 21:51:33.13ID:eXpBCev1
>>126
74行目でFrame自体ののレイアウトをFlowLayoutにしてるのが主な原因

あとテキストボックスのwidthサイズが大きい

レイアウト関連は背景色とかつけると解決しやすい
2018/03/29(木) 21:58:16.46ID:eXpBCev1
ソース整形したから74行目じゃなかった
まぁその辺りでthisに対して突っ込んでるレイアウト設定が原因ってことで
2018/03/30(金) 09:25:26.93ID:bu98gf73
126です

アップしたのがたまたまそうなってただけで
レイアウトをいろいろ変更してみてるんですが全くうまくいかないです…

そもそもsetSizeがぜんぜんきいてないんですが
全部のパネルをsetLayout(null);
にしてもきかないのはなぜなんでしょうか
2018/03/30(金) 13:02:53.26ID:vz0AgFHK
これが参考になるかもしれません。
https://stackoverflow.com/questions/3692987/why-will-boxlayout-not-allow-me-to-change-the-width-of-a-jbutton-but-let-me-chan
2018/03/30(金) 13:22:52.68ID:bu98gf73
自己解決しました

setSize()はきかなくてsetPreferredSize(new Dimension())
を使えばサイズだけは反映するようになりました

位置の調整方法はわかりませんがとりあえずデフォルトレイアウトで
はみだしたり重ならず全部のパーツが表示されました
2018/03/31(土) 07:53:45.76ID:DDP7B6Z+
日時の文字列を生成するのに、DateFormatクラスとかを使えば標準的なフォーマットで出力されて
あと言語が変わっても大丈夫(自分でローカライズする必要がない)じゃないですか。

似たような感じで時間の長さ、例えば "2時間36分" をAPIで作れるといいと思っているのですが
そういうものはありますでしょうか。これが英語になると勝手に "2 hours 36 minutes" になるみたいな。
2018/03/31(土) 10:01:25.54ID:376M7ais
つDuration.parse
2018/04/01(日) 18:17:02.75ID:QRZAvcI4
>>134
どうもです。しかし最終的に普通の時刻の文字列をDurationのインスタンスから
生成する方法がわからないのですが... ??

Duration duration = Duration.parse("PT2H36M"); とかしたとして、
toString()も単に"PT2H36M"を返しますよね。
もしかして toHours() -> 2, minusHours(2).toMinutes() -> 36 とかでで2と36を取り出し、
その後これらから文字列をなんとか作るという話でしょうか?

経過時間の計算そのものでなく、時間と分の数値は最初から与えられたとして、経過時間
の文字列の生成を如何に楽に行うかに興味があるのですが...
136デフォルトの名無しさん
垢版 |
2018/04/05(木) 14:05:21.72ID:MD4dwdXJ
XPにはJava8インストールできないの?
137デフォルトの名無しさん
垢版 |
2018/04/14(土) 11:08:12.71ID:Z+3xnQ4k
デザインパターンをインターフェースから説明した良心的なブログ
途中で息切れしてるみたい??

https://blogs.yahoo.co.jp/kamyu_2010/35417803.html
2018/04/23(月) 21:12:23.63ID:Hmrq+5/s
だから?
2018/04/24(火) 08:31:35.21ID:zK8TVl/a
良心的なブログよりためになるブログが良い
デザインパターンを書き写しただけのゴミを見せられる
読者の立場にもなれ
2018/04/24(火) 08:38:42.87ID:aRpe9XKh
初心者向け解説ばかりの時代
2018/04/24(火) 21:36:06.09ID:0Hi7fk6J
>>142
で?
2018/04/24(火) 22:44:47.72ID:IYsMY8oH
>>141
え?オレ何か言ったっけ?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況