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

1デフォルトの名無しさん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/

122デフォルトの名無しさん2018/03/29(木) 17:45:33.63ID:QwxffFOd
そうなんですね
じゃあMapで組みなおしてみます

ありがとうございました

123デフォルトの名無しさん2018/03/29(木) 18:51:34.60ID:yhEgq3Dh
文字列の内容が同じ時に必ず同じStringのインスタンスにしたい場合は String#intern() を使うと良い。

124デフォルトの名無しさん2018/03/29(木) 19:16:34.30ID:+yEHtKmw
拡張したStringクラス内でアップキャストして比較すればいけない?

125デフォルトの名無しさん2018/03/29(木) 19:38:33.67ID:LS3RTWy4
Stringって継承できるの?finalじゃなかった?
俺が古いのかな

126デフォルトの名無しさん2018/03/29(木) 19:39:40.10ID:vAfgGUZ/
研究でAIのチューニング用UIつくってるんですが
部品のレイアウトがうまくいかないです

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

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

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

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

http://fast-uploader.com/file/7077868223948/
パス 1234
デバッグ用にGUI部分だけ抜き出してみたんですが…

127デフォルトの名無しさん2018/03/29(木) 19:51:18.47ID:eXpBCev1
finalだったわ
継承はできないな

128デフォルトの名無しさん2018/03/29(木) 21:51:33.13ID:eXpBCev1
>>126
74行目でFrame自体ののレイアウトをFlowLayoutにしてるのが主な原因

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

レイアウト関連は背景色とかつけると解決しやすい

129デフォルトの名無しさん2018/03/29(木) 21:58:16.46ID:eXpBCev1
ソース整形したから74行目じゃなかった
まぁその辺りでthisに対して突っ込んでるレイアウト設定が原因ってことで

130デフォルトの名無しさん2018/03/30(金) 09:25:26.93ID:bu98gf73
126です

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

そもそもsetSizeがぜんぜんきいてないんですが
全部のパネルをsetLayout(null);
にしてもきかないのはなぜなんでしょうか

131デフォルトの名無しさん2018/03/30(金) 13:02:53.26ID:vz0AgFHK

132デフォルトの名無しさん2018/03/30(金) 13:22:52.68ID:bu98gf73
自己解決しました

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

位置の調整方法はわかりませんがとりあえずデフォルトレイアウトで
はみだしたり重ならず全部のパーツが表示されました

133デフォルトの名無しさん2018/03/31(土) 07:53:45.76ID:DDP7B6Z+
日時の文字列を生成するのに、DateFormatクラスとかを使えば標準的なフォーマットで出力されて
あと言語が変わっても大丈夫(自分でローカライズする必要がない)じゃないですか。

似たような感じで時間の長さ、例えば "2時間36分" をAPIで作れるといいと思っているのですが
そういうものはありますでしょうか。これが英語になると勝手に "2 hours 36 minutes" になるみたいな。

134デフォルトの名無しさん2018/03/31(土) 10:01:25.54ID:376M7ais
つDuration.parse

135デフォルトの名無しさん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

138デフォルトの名無しさん2018/04/23(月) 21:12:23.63ID:Hmrq+5/s
だから?

139デフォルトの名無しさん2018/04/24(火) 08:31:35.21ID:zK8TVl/a
良心的なブログよりためになるブログが良い
デザインパターンを書き写しただけのゴミを見せられる
読者の立場にもなれ

140デフォルトの名無しさん2018/04/24(火) 08:38:42.87ID:aRpe9XKh
初心者向け解説ばかりの時代

141デフォルトの名無しさん2018/04/24(火) 21:36:06.09ID:0Hi7fk6J
>>142
で?

142デフォルトの名無しさん2018/04/24(火) 22:44:47.72ID:IYsMY8oH
>>141
え?オレ何か言ったっけ?

143デフォルトの名無しさん2018/04/25(水) 00:58:24.44ID:g4RvSF2y
つまらぬわ!

144デフォルトの名無しさん2018/04/25(水) 08:46:24.05ID:xbNGGQDl
>>144
せやね

145デフォルトの名無しさん2018/04/25(水) 12:55:05.40ID:aMC3Bhoy
>>144
面白くない奴の便乗なんて寒いだけだからやめとけ

146デフォルトの名無しさん2018/05/06(日) 11:09:29.87ID:PC9jam24
データベースに保存したいJavaのオブジェクトが大量にあるのですが
直列化ではコーディングやデバグにかかる時間がかかりすぎるので
もっと簡単に永続化できるライブラリかフレームワークなどはありますか

147デフォルトの名無しさん2018/05/06(日) 11:13:54.12ID:PC9jam24
オブジェクトが大量にあるというかオブジェクトの雛形になる
クラスが大量にあるということです

148デフォルトの名無しさん2018/05/06(日) 11:51:06.89ID:/6fg2Qhj
まず高速プリンターを用意します

149デフォルトの名無しさん2018/05/06(日) 12:11:54.48ID:yG5Sy7/7

150デフォルトの名無しさん2018/05/06(日) 13:47:11.04ID:XXaq/T45
>>146
ObjectOutputStreamのwriteObject()呼び出すだけなわけだが、
コーディングに時間が掛かるとか、もっと簡単にとはいったい?
ここに書いてない要望が他にもあるんじゃないの?

151デフォルトの名無しさん2018/05/06(日) 14:33:54.08ID:kuy66ISG
>>150
顧客が本当に欲しい物は、
クラスを指定したらシリアライズ処理を自動で吐き出してくれるプラグインとか
そういうものなんじゃないかね

152デフォルトの名無しさん2018/05/06(日) 15:02:54.32ID:i9j42Pj0
ここに質問するのが適切なのか悩ましいのですが…
OpenJDKは再頒布可能なのでしょうか?

個人の趣味で作ったアプリケーションに同梱して配布してよいのかな?と思い調べているところです。
自分でビルドしたOpenJDKなら再頒布可能、CentOSなどが公開しているOpenJDKは再頒布不可などあるのでしょうか。

153デフォルトの名無しさん2018/05/06(日) 15:56:01.81ID:Ba+o29Eu
ディレクトリ a にある a.jar のなかの A.class (package a)
ディレクトリ b にある b.jar のなかの B.class (パッケージ宣言なし)
を使ったディレクトリ c にある c.jar ってどうやって実行すればいいですか

はるか昔に作って昔は動いてたはずなんですけど実行の仕方がわからなくなりました

154デフォルトの名無しさん2018/05/06(日) 16:09:20.09ID:yRUrTeQA
>>150-151
対象となるクラスがあまりにも多くてreadObjectとwriteObjectを
いちいち宣言するのが面倒くさい上に
少しでも書き間違えたときにIDEが検出してくれないし
デシリアライズに失敗したときに原因となったクラスを特定するのが困難だしで
その辺の手間を楽をする方法を探していたんだけど
JAXBでXML化する方法を思いついたので自己解決しました

ありがとうございます

155デフォルトの名無しさん2018/05/06(日) 17:01:33.93ID:Bse1bLkg
>>153
その jar ファイルを全てクラスパスに指定すればいいのでは?
環境変数 CLASSPATH かコマンドラインで -cp (java -help の出力またはドキュメント参照)。

156デフォルトの名無しさん2018/05/06(日) 18:35:06.08ID:Ba+o29Eu
>>155
動きました
パスってディレクトリに通すものかとおもってたんですがjarファイル自体を指定するんですね
ありがとうございました

157デフォルトの名無しさん2018/05/06(日) 19:08:09.02ID:hMxfhnzD
>>156
.jarとか.zipはそれ自体がフォルダーみたいなもんだから

158デフォルトの名無しさん2018/05/10(木) 16:22:03.34ID:TnST3c7c
GatlingとかLoad Runner、JMETERの動作テスト、Javaのスレッドダンプ取得とかの練習をしたいと思ってます

そのターゲットとなるWebアプリを探してます

今のところFessという、Tomcat上で動いてるWebアプリは見つけました
他にオープンソースで、Javaでうごいていて、Gatlingなんかの練習に使えるWebアプリについて情報ほしいです
どんなものがありますか?

159デフォルトの名無しさん2018/05/10(木) 17:36:39.17ID:1aaKaop2
普通自作すんだろ

160デフォルトの名無しさん2018/05/11(金) 09:01:56.54ID:ou2CAaSI
tools.jarはLinux,Mac,Winで互換性がありますか?

1611602018/05/11(金) 09:34:33.65ID:ou2CAaSI
あるいは、JavaCompiler単体のjarか独自のJavaCompilerは公開されていますか?
Java9からアプリ側から利用できなくなったそうなので。

162デフォルトの名無しさん2018/05/11(金) 09:57:35.61ID:BZrCuED6
javax.swing.JPopupMenuを直接show()で表示させてます
問題はマウスをメニューアイテムの上に乗せても、クリックしても色が変転しない
設定で定義しないといけない事があるのでしょうか?

163デフォルトの名無しさん2018/05/11(金) 13:18:37.00ID:Kz4/xaqB
>>158
Githubで言語絞れば一発
今聞かれて俺が思いつくような有名なOSSって規模が大きかったり環境整えるのが厄介だったりするのが多いから、
簡単に動かせそうなしょぼいのを適当に自分で選んだほうがいい

164デフォルトの名無しさん2018/05/12(土) 08:20:02.64ID:gX8J6qxW
>>162
addMouseListenerで e.getComponent().setBackground(Color);
で反転するようになった

165デフォルトの名無しさん2018/05/12(土) 10:58:22.92ID:pDgCeBjY
共同ツール 1
https://seleck.cc/685

https://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
ttp://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
https://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
https://slack.com/intl/ja-jp
https://www.dropbox.com/ja/
https://bitbucket.org/
https://ja.atlassian.com/software/sourcetree
https://sketchapp.com/extensions/plugins/
ttp://photoshopvip.net/103903

ttps://goodpatch.com/blog/sketch-plugins/

166デフォルトの名無しさん2018/05/12(土) 12:02:34.73ID:XqIGE8bt
Javaのデザインパターンのブログ(ヤフーブログ)・・・・なかなか良い。

https://blogs.yahoo.co.jp/kamyu_2010/35442561.html

167デフォルトの名無しさん2018/05/12(土) 13:54:22.02ID:UoMtV9Kh
          ∧_∧
    ∧_∧  (´<_`  ) また宣伝書き込み? 
うん ( ´_ゝ`) /   ⌒i
   /   \     | |
  /    / ̄ ̄ ̄ ̄/ |
__(__ニつ/  FMV  / .| .|____
    \/____/ (u ⊃

168デフォルトの名無しさん2018/05/23(水) 19:25:05.40ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

0XZ3H

169デフォルトの名無しさん2018/05/23(水) 19:53:26.57ID:iVq3rLr7
          ∧_∧
    ∧_∧  (´<_`  ) 儲かるなら自分でやればいいじゃんな。 
うん ( ´_ゝ`) /   ⌒i
   /   \     | |
  /    / ̄ ̄ ̄ ̄/ |
__(__ニつ/  FMV  / .| .|____
    \/____/ (u ⊃

170デフォルトの名無しさん2018/05/24(木) 05:14:55.03ID:iSd0paxF
https://ideone.com/fOelKc
除数が変数の%演算子がなんか遅かったからこんなん作ったんだが、もうちょっと速くならんかな?

被除数の範囲は0以上Long.MAX_VALUE以下、
除数は16ビットくらいまでの範囲が使えて速ければよす


うちの環境だとマイクロベンチで4倍
実際に組み込んで全体の速度が2倍くらいにはなったんだが (とボトルネックをいじってるよアピールw

171デフォルトの名無しさん2018/05/24(木) 20:56:47.08ID:iSd0paxF
ideoneでパラレルストリーム使えない・・・?
https://ideone.com/YpKyd3

paizaは普通に使える
https://paiza.io/projects/bgjMxfyxPJmc3vxGYiH8ug

172デフォルトの名無しさん2018/05/25(金) 10:54:04.75ID:Sw3LTZE2
>>171
ideoneはメインスレッド含めて8スレッド(論理コア分)アクティブになるとダメっぽい
んで、パラレルストリームで使われる共通ForkJoinPoolが論理コア-1個スレッドを起動するから、
メインスレッドと合わせて論理コア分アクティブになってアウト

スレッドプールの数を6でForkJoinPoolを作ってそれを使ってStream動かせば大丈夫っぽい…めんどくせw

新着レスの表示
レスを投稿する