X



★★Java質問・相談スレッド181★★
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
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/
0019デフォルトの名無しさん
垢版 |
2018/02/13(火) 04:06:37.94ID:uX7IZed7
>>17
ま、なんというか、その辺はJavaでは今更どうにもならんのでKotlinとか使えば良いんじゃないかな。
0020デフォルトの名無しさん
垢版 |
2018/02/13(火) 08:59:03.90ID:/bOHErQ9
log4j2のxmlが反映されない・・・
LogManager.getLoggerした時点で狂ったようにログ吐くからなんとかしたいんだけど
これでtraceをinfoにしても止めれないんだけどなぜですか?
<Loggers>
<Root level="trace">
<AppenderRef ref="console" level="trace"/>
</Root>
</Loggers>
0022デフォルトの名無しさん
垢版 |
2018/02/13(火) 12:05:27.36ID:AHnFnr3H
>>14
sofだと、ドメイン取ったほうがええよ。でもとれないならメアドか自分のプロジェクトレポジトリのurlを使いなよ、って回答に人気があるね。
0023デフォルトの名無しさん
垢版 |
2018/02/13(火) 12:27:53.31ID:IoOWXwkE
例外は、基本的に戻り値ではなく、try-catch で囲む。
戻り値で返すとわかりにくいから、例外構文ができた

あとは君が考える

入力値エラー、0 除算、ファイルが存在しない、
メモリが足りない、型変換エラーの場合に、君はどうする?
0026デフォルトの名無しさん
垢版 |
2018/02/14(水) 08:19:05.85ID:IbDcUCKa
Booleanとbooleanとかオブジェクト型とプリミティブ型の使いわけどうすればいいですか?
性能的にシビアなところはプリミティブのほうがいいですか?
0027デフォルトの名無しさん
垢版 |
2018/02/14(水) 08:27:53.52ID:/di6HjOp
Listに入れるとかnullが必要なパターンじゃない限りbooleanでok
0028デフォルトの名無しさん
垢版 |
2018/02/14(水) 08:39:24.34ID:xRv25q5d
>>26
基本プリミティブ型だけ使う。ジェネリクスの型宣言するときだけラッパー型使えばいいよ。
0029デフォルトの名無しさん
垢版 |
2018/02/14(水) 10:32:08.01ID:xbUNXEcU
>>26
主に他の言語やら他のアーキテクチャと連携するときとかに使う
データ通信時にtrue/falseを文字列でやり取りしたりもすることもあるので使えるようになると便利

他のラッパークラスも一緒
0030デフォルトの名無しさん
垢版 |
2018/02/16(金) 04:25:55.90ID:PIB5v9ZW
バッチ処理とJavaでする処理ってなにか違いがあるんでしょうか
よく「夜になったらバッチが動いてデータを処理してくれる」とかありますが「夜になったらJavaがデータを処理してくれる」とかでも良いように見えて違いがわからないです
0032デフォルトの名無しさん
垢版 |
2018/02/16(金) 10:23:33.09ID:OW1usLwi
夜になるとバッチ処理でJavaのプログラムが起動して、なんてこともありうる。
0034デフォルトの名無しさん
垢版 |
2018/02/21(水) 18:43:46.25ID:Ho2ISOMi
Java終わりかな
0035デフォルトの名無しさん
垢版 |
2018/02/21(水) 19:34:28.74ID:2C7myRiq
普通に考えて中々終わらんだろう。
Androidも健在だしな。Kotlin使うとしても新規プログラムからばかりでこれまでにJavaで作ったやつを変換してまで乗り換えるようなのはあまりないと思うよ。
0037デフォルトの名無しさん
垢版 |
2018/02/22(木) 17:39:01.87ID:XBqMjBt+
文字の連結、追加で
ab+=cd
と記述できますが
ab=ab+cd
この記述と違ってメモリ幅の変動がなく
連続して前者の追加加算をしてもそれほど速度低下にはならないもんなんでしょうか?
内部を知ってる方に伺いたいです
0039デフォルトの名無しさん
垢版 |
2018/02/22(木) 17:59:09.72ID:XBqMjBt+
書いてあるようにメモリ幅と内部のやりくりについての質問です
全くの見当違いの人はレス不要です
わからない人でなくわかっている人に聞いています
0040デフォルトの名無しさん
垢版 |
2018/02/22(木) 18:24:41.64ID:Rqvcd5k2
両方書いてコンパイルしてバイトコード出して見比べてみたら?
0042デフォルトの名無しさん
垢版 |
2018/02/22(木) 21:30:20.55ID:gkrr6Csx
「それほど」がどの程度の速度低下まで許容されるのかをちゃんと定義してくれないと(すっとぼけ)
0044デフォルトの名無しさん
垢版 |
2018/02/22(木) 23:26:05.38ID:YcYRar81
確保するメモリのサイズのことじゃなかろうかと知らんけど
0045デフォルトの名無しさん
垢版 |
2018/02/22(木) 23:26:40.80ID:YcYRar81
「メモリ幅」ってなんのことだ?
0046デフォルトの名無しさん
垢版 |
2018/02/22(木) 23:27:09.12ID:YcYRar81
同じバイトコードになるという答えが見当違いとは思えない
0047デフォルトの名無しさん
垢版 |
2018/02/22(木) 23:53:50.86ID:K6gwUVsb
メモリ幅なんて言う奴は、CPU・RAM を分かっていない

どの言語でも、そんなの保証していない
0050デフォルトの名無しさん
垢版 |
2018/02/23(金) 08:13:48.99ID:oHNB0pIN
そもそも ab+=cd と ab=ab+cd の違いが問題になるほどのプログラム組んでるのかよ w
大量の文字列追加があるならStringBuilder使えや
0051デフォルトの名無しさん
垢版 |
2018/02/23(金) 09:42:52.51ID:HSy+CPfQ
「わからない人は答えないでください」は知恵遅れでよく見るけどそれが掲示板にも流れてきてるのか
そういうやつが「普通」になっているのか、どっちなんだろう?
0052デフォルトの名無しさん
垢版 |
2018/02/23(金) 11:27:53.19ID:mFZl6vMq
>>45
ほら、目盛りの幅。3cmとか。
0053デフォルトの名無しさん
垢版 |
2018/02/23(金) 11:54:49.01ID:zNsQyXzG
>>50
これ
0055デフォルトの名無しさん
垢版 |
2018/02/23(金) 19:26:11.88ID:Py5a3myD
String a = "わからない人は";
String b = "答えないでください。";

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

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

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

>>37が言ってるのは、同じバイトコードになる、よってそのコードは等価
お前の例えは、レールの上を走ってる、よってなんなの?
0071デフォルトの名無しさん
垢版 |
2018/02/24(土) 22:08:13.59ID:01A04fC8
むかしパソコン詳しい人に教えてもらったっけ
メモリは机の広さで多くのファイルを広げられるから作業が速くなる
机が小さかったら使わないファイルや文房具をしまったりするから効率が悪くなるって

なるほどなーって思った
それでうちの机はあまり大きくないからメモリ少なめのパソコン買ったよ(^o^)
0074デフォルトの名無しさん
垢版 |
2018/02/25(日) 11:16:42.37ID:59jeAjzx
でもパソコンのメモリって減らないからすごいよな!
スマホは毎月7ギガとか減るのに
0075デフォルトの名無しさん
垢版 |
2018/02/25(日) 11:25:47.01ID:251p5lsj
ポータブルハードディスクって幅小さくて持ちやすいよな
0077デフォルトの名無しさん
垢版 |
2018/03/03(土) 17:37:02.43ID:V2kYq93l
だから?
0079デフォルトの名無しさん
垢版 |
2018/03/10(土) 00:24:37.51ID:J3fnbe39
java勉強中の初心者です
javaEEのservletの“doDelete”について質問です。
勉強のためcurdを実装しているのですが、
post(c),get(r),はhtmlのform,hrefから送信できたのですが、
htmlからdelete(d)を送信し"doDelete”に渡したいのですがどの様にすればいいのでしょうか。
そもそも、考え方が間違っているのでしょうか。
アドバイス、参考などがありましたらご教授お願いします。
0080デフォルトの名無しさん
垢版 |
2018/03/10(土) 00:34:48.00ID:q/evhJ6x
ご教示
0082デフォルトの名無しさん
垢版 |
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
0083デフォルトの名無しさん
垢版 |
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
0084デフォルトの名無しさん
垢版 |
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クライアントを使ったほうが簡単
0085デフォルトの名無しさん
垢版 |
2018/03/10(土) 23:13:45.90ID:J3fnbe39
>>84
>>83
そうなんですね。
聞きかじったRESTfullとhtmlのhref,formを混同していました。
新たにクラスを作っていhrefからdoGETにパラメータを渡して処理するようにしました。

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

スレ違いだったらスルーしてください
0087デフォルトの名無しさん
垢版 |
2018/03/11(日) 13:58:39.70ID:91F3yKR+
よくインターネット上の広告で半年でエンジニアに!みたいなのあるけど、インターネット不得手、プログラム未経験者が真剣に半年頑張れば本当にそんなこと可能なんですか?
可能ならその理由はなんでしょう?人材が足りていないというのは存じ上げていますが
0089デフォルトの名無しさん
垢版 |
2018/03/11(日) 14:17:33.20ID:OHQW+NNW
半年でエンジニアになる理由?
0090デフォルトの名無しさん
垢版 |
2018/03/11(日) 14:19:09.66ID:OHQW+NNW
1年よりも半年がいいし
半年よりも1ヶ月がいいだろうけど
半年かかるってことなんじゃ
0092デフォルトの名無しさん
垢版 |
2018/03/11(日) 15:59:35.51ID:FcyL3wwo
あれ?デジャ・ビュか?どこかで同じ書き込みを見たような・・・
0094デフォルトの名無しさん
垢版 |
2018/03/13(火) 18:32:22.59ID:LC30GjQR
>>93
え?どれが?
0095デフォルトの名無しさん
垢版 |
2018/03/13(火) 18:57:50.45ID:jO7pAkit
答えが正である理由が分からないわ。と思ったが
差は大きな数字から小さな数字を引くことだと今になって初めて知った。ボクは恥ずかしい女ですw
0097デフォルトの名無しさん
垢版 |
2018/03/13(火) 20:40:24.25ID:/ChP+Vc3
状況によると思う
基準値からの差とか言う時に絶対値だけだと色々不便だし
0098デフォルトの名無しさん
垢版 |
2018/03/13(火) 22:18:55.48ID:wTdUbQ7M
>>94
例えば+xと-yだとしたらx+yになって差になってないと思うけど…
出題者と自分とで「差」の認識が違ったのかな
いろいろ場合分けしてたから「え?これでいいの?」って拍子抜けだった
0099デフォルトの名無しさん
垢版 |
2018/03/13(火) 22:30:12.11ID:Q4D8j7yB
>>98
君が考えた差を計算するソース見せて
0100デフォルトの名無しさん
垢版 |
2018/03/13(火) 22:35:23.36ID:jO7pAkit
ユーザや設計者から指定された「差」の定義や例文がないと混乱するわね。
以上以下と未満ですら怪しい人が多いから
>>96
僕はボクっ子だもん
0101デフォルトの名無しさん
垢版 |
2018/03/13(火) 22:36:24.93ID:9h29uVxq
おいおい中一レベルだぞ
0102デフォルトの名無しさん
垢版 |
2018/03/14(水) 00:02:50.00ID:5wanHWIv
>>99
ちょっと考えたら自分が見当違いのことしてたの分かったからもう許して
0103デフォルトの名無しさん
垢版 |
2018/03/14(水) 21:36:07.79ID:V4ac6dGx
xとyの値次第でintの範囲に収まらなくなる可能性あるから
あんまり良くないなこれ
0104デフォルトの名無しさん
垢版 |
2018/03/15(木) 22:43:23.98ID:jcS43Jhh
> 差を求めるということは大きい値から小さい値を引いた結果になります。

この定義には驚きだね。差の絶対値じゃん。
0107デフォルトの名無しさん
垢版 |
2018/03/27(火) 00:04:41.18ID:LxXLqxse
>>95
>差は大きな数字から小さな数字を引くことだと今になって初めて知った。ボクは恥ずかしい女ですw
それだと負数考慮してないでしょ。差は被減数から減数を引くこと。

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

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

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

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

ということで、処理する側と完全に連携可能なやつを自作した方が良いのでは?
0117デフォルトの名無しさん
垢版 |
2018/03/28(水) 19:27:30.32ID:hR1N5KW+
>>114,116
もちろん自作してもいいし実現方法はいくらでもある話なんですけど
java8の拡張文で用意されてるクラス使ってきれいにかけないのかなとちょっと思っただけでした
■ このスレッドは過去ログ倉庫に格納されています

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