★★Java質問・相談スレッド184★★ (371レス)
上下前次1-新
225: (ワッチョイ 81ee-iRXk) 2023/11/01(水)01:08 ID:QIM0oxL50(2/2) AAS
>>223
ありがとうございます。
226(1): (ワッチョイ 1910-KYV2) 2023/11/10(金)14:23 ID:ZmoDO33M0(1) AAS
intellij使ってメソッド定義する際に引数にOptionalを指定すると
「Optional<型>がパラメータ'変数名'の型として使用されています」って警告が出るけど
引数にOptional指定するのってよくない書き方なのかな?
227(1): (ワッチョイ ff60-ljUV) 2023/11/11(土)20:17 ID:XF4CbZuB0(1/3) AAS
背景が黒くならないのは何故でしょうか?
public class ImageViewer extends JPanel implements Runnable {
private static int screenWidth = Toolkit.getDefaultToolkit().getScreenSize().width;
private static int screenHeight = Toolkit.getDefaultToolkit().getScreenSize().height;
private Thread thread;
public ImageViewer() {
thread = new Thread(this);
thread.start();
}
@Override
public void run() {
while (true) {
repaint();
}
}
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g;
g2.setBackground(Color.BLACK);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
JFrame frame = new JFrame();
frame.getContentPane().add(new ImageViewer());
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(0, 0, screenWidth / 2, screenHeight / 2);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}});}}
228(1): (ワッチョイ 1f90-nPbH) 2023/11/11(土)20:57 ID:D1g3ncRT0(1) AAS
>>227
paintComponentの中で塗りつぶししてないからじゃない?
今スマホだからメソッド名が分からないけど
fillXXとかいう名前のメソッドがGraphicクラスになかった?
229: (ワッチョイ ff60-ljUV) 2023/11/11(土)21:40 ID:XF4CbZuB0(2/3) AAS
>>228
ありがとうございます。
g2.clearRect(0, 0, getWidth(), getHeight());
を追記したらできました。
230: (ワッチョイ ff60-ljUV) 2023/11/11(土)22:53 ID:XF4CbZuB0(3/3) AAS
ちなみに、エクスプローラーの左側にフォルダ構成が表示できる「ナビゲーションウインドウ」はどのような方法で実装されいますでしょうか?
231: (ワッチョイ ffbd-sg3J) 2023/11/15(水)23:56 ID:8ll9Bxfa0(1) AAS
>>226
基本的にOptionalは戻り値として使うために作られたもので、引数として使うことを想定してない
一般的にも引数には使わないことが推奨されている(いろいろ議論はあるけど)
「引数がnullの時にデフォルト値を与える」みたいな使い方をしたくなるけど、それやると呼び出す側にOptionalで包むことを強制することになるので、かえって煩雑になったりするんだよね
232(1): (ワッチョイ e905-bTTa) 2023/11/19(日)01:53 ID:qZa+eOkQ0(1) AAS
外部リンク:pastebin.com
左側に表示されるフォルダをクリックすると、右側にそのクリックされたフォルダの中身を表示したいのですが、どうすればいいのでしょうか?
233: (ワッチョイ 5190-n3S/) 2023/11/22(水)18:05 ID:OkHSaxJz0(1) AAS
>>232
クリックを感知するリスナー作って
表示するようにするだけ
234(1): (ワッチョイ 0dba-6HfB) 2023/11/22(水)19:43 ID:kYVkXFrV0(1) AAS
非プログラム民です Javaの一番初歩的なスレがここっぽいので失礼します
Win11にJavaってあんまり要らないんでしょうか?
8年ぶりぐらいに新調したんですがそういや入れてないけど何も要求されてないなと気付きました
PCの使用用途としてはネットサーフィンやゲーム程度 Office(Excel)はLibre使ってて今のところマイクラもやってない…
プログラムなどPCの根っこ部分を弄るような人以外はもう特に入れる必要がない時代なんでしょうか?
ちょっとふわっとした質問ですが教えていただけると助かります
235: (スップ Sd22-vj+6) 2023/11/22(水)20:40 ID:XdkKjHJEd(1) AAS
>>234
Javaのデスクトップアプリというジャンルがほぼ死に体なのでPCにJavaを入れる機会は大幅に減った
下手に入れて放置とかしてるとセキュリティホールになりかねないので必要になるまで入れない方がいいよ
236: (ワッチョイ 0dba-6HfB) 2023/11/23(木)00:21 ID:WhR9OG610(1) AAS
そうなのか それじゃあしばらくお別れになりそうだな
回答ありがとうございます
237: (ワッチョイ 91de-iedC) 2023/11/23(木)07:07 ID:feYNNbaU0(1) AAS
Oracle公式のJava Runtime Environment自体が廃止されたし
Javaは開発者が使うもの、ユーザーはアプリにバンドルされたJavaを使うことになったから
ユーザーがJavaをインストールする必要はなくなった
238: (ワッチョイ 46ff-bTTa) 2023/11/24(金)22:53 ID:fPE4U9Nj0(1) AAS
インベーダーゲームを作成していて、敵の左右移動についての質問になります。
敵の最初配置は以下のようになっており、最初は右方向に移動します。
■■■■
■■■■ →
■■■■
右端へ行く途中に、いくつか敵が倒された後(倒された敵は□で非表示)
□■■□
□□■□
□□□■
一番端で生き残っている者(※ここでは一番下の右側の敵)が右端に着くと、全体が移動方向を反転したいと思います。
どのように実装されているでしょうか?
現在は以下の通りに敵を作り、それぞれに移動方向をセットしています。
Alien[][] aliens;
for (int i = 0; i < col; i++) {
for (int j = 0; j < row; j++) {
aliens[j][i] = new Alien(x, y, this);
aliens[j][i].setDirection(RIGHT);//右に移動する
}}
239(1): (ワッチョイ c755-ds/9) 2023/11/25(土)08:06 ID:vlVh3gWj0(1) AAS
Alienのコンストラクタにthisを渡さないほうがいいよ
thisを渡してるってことはAlienクラスが外側のクラスを参照してるってこと
このような相互参照する設計は結合が密になって後々不都合が出ることが多い
Alienインスタンスそれぞれが x, y 座標を持ってるんだからaliensを二次元(画面座標)にする必要はない
240(1): (ワッチョイ 5ff5-T+3p) 2023/11/25(土)08:51 ID:DleP5wfq0(1/2) AAS
ScopedValueの説明記事読んでたら思ったんだけど
あれって同じ変数名なのに違う型になってるよね?
Object x=;
ScopedValue.where(x,,);
これが対象スコープ内では
ScopedValue x;
として呼び出せてしまってる、ということだよね
xが場所によって型が違う
なかなか嫌な構文だね。可読性低下しない?勘違いしそう
241(1): (ワッチョイ bf15-Fdi3) 2023/11/25(土)10:24 ID:hi6RRccf0(1) AAS
>>240
自分も説明読んだだけだけど、whereの第一引数はScopedValueじゃないか?
242: (ワッチョイ 5ff5-T+3p) 2023/11/25(土)10:44 ID:DleP5wfq0(2/2) AAS
>>241
そうだった。かんちがいした
243: (ワッチョイ c714-6ggm) 2023/11/26(日)08:44 ID:1Nq25AZ10(1) AAS
>>239
ありがとうございます。疎結合やList<Alien>にできるよう見直します。
244: (ワッチョイ bd68-jFlW) 2023/12/02(土)02:11 ID:TtNr0xet0(1) AAS
スペースインベーダーの敵の移動について、一番端にいる敵が画面の端まで移動した場合、方向を反転するという動きを実装しようとしております。
現在、敵が端まで行った際に反転するところまでは実装できたのですが、敵が画面外に少し出た状態で反転します。
画面の端できっちりと反転する方法はありますでしょうか?
外部リンク:pastebin.com
245: (ワッチョイ eaad-Ej9D) 2023/12/03(日)09:59 ID:iaiv32Fc0(1) AAS
あるんじゃない?てか、そんなの少し手前を画面の端とみなすように作れば良いだけでは?
246: (アウアウウー Sa21-wVFe) 2023/12/03(日)11:04 ID:QTewqrs7a(1) AAS
まるちんこ
247(2): (ワッチョイ 6311-DOnR) 2023/12/28(木)09:10 ID:Z5LVjO8Y0(1) AAS
エラーチェックをする関数を作るとき、
エラーがあれば、エラーあるよーんってメッセージをつけた例外を呼び出し元に投げる。
ということをしたいとき。
エラーの詳細はどうでもいいとき、
throw Exception(“エラーあるよーん“)
はだめなの?
わざわざExceptionを継承したクラス作らないとだめなの?
248: (ワッチョイ a352-H80b) 2023/12/28(木)09:47 ID:wPnlX7lS0(1) AAS
いいよ
249: (ワッチョイ 330a-l39z) 2023/12/28(木)10:06 ID:Gvv1ir3M0(1) AAS
>>247
そのコードを呼び出す側が全ての例外をcatchするもしくは全ての例外をcatchしないという使い方しか絶対にしないのならいいんじゃね
250: (ワッチョイ 334d-hEBs) 2023/12/28(木)13:21 ID:37lmfGGJ0(1) AAS
いいよ
251: (ワッチョイ 7390-neWB) 2023/12/28(木)22:29 ID:Hk4w0gA/0(1) AAS
例外クラスの自作はあまりやらないよな?
既存のヤツでだいたいは間に合う
作るとすれば
エラー情報を盛込みたいとか
しっくりくる名前の例外クラスが無い場合とか
後で拡張を考えてるとか
そんくらいだよな
252(1): (ワッチョイ 4ea5-nqB8) 2023/12/30(土)14:57 ID:AS8gr52a0(1/3) AAS
なんでも質問スレからきました
VScodeでjavaを勉強する初心者です
プログラムが完成したのでjarファイルをビルドしたのですが
jarファイルをクリックしてもコマンドプロンプトで起動しても
デバッグでの動作を全くせずに終了してしまいます
javaを入れなおして再起動などもしてみましたが起動しません
どうすれば動くjarファイルを作成できるのでしょうか
よろしくお願いします
253(1): (ワッチョイ 5f4d-vVi2) 2023/12/30(土)15:20 ID:7sdDSpr80(1/2) AAS
>>252
コマンドから実行したら何かメッセージ出力されるんじゃないかな
それをここに貼り付けてくれ
254(1): (ワッチョイ 4ea5-nqB8) 2023/12/30(土)16:07 ID:AS8gr52a0(2/3) AAS
>>253
* 実行するタスク: java (build): Build Workspace
Building all the Java projects in workspace...
Task complete.
* ターミナルはタスクで再利用されます、閉じるには任意のキーを押してください。
上記のようなメッセージが表示されますが、jarファイルは見当たりません。
上下前次1-新書関写板覧索設栞歴
あと 117 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.016s