X



★★Java質問・相談スレッド184★★
0001デフォルトの名無しさん (ブーイモ MMff-liuG)
垢版 |
2021/09/19(日) 11:52:45.82ID:DdTXq5RcM
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    https://itest.5ch.net/subback/hp
Webプログラミング https://itest.5ch.net/subback/php
をご利用下さい。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 (p)ttp://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※

質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。

前スレ
★★Java質問・相談スレッド183★★
https://mevius.5ch.net/test/read.cgi/tech/1588770728/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
0156デフォルトの名無しさん (ワッチョイ 118f-xZlB)
垢版 |
2023/03/08(水) 10:26:00.14ID:dHMh5Dpe0
>>152
たぶんお前は何もわかってないバカ
0157デフォルトの名無しさん (ワッチョイ 118f-xZlB)
垢版 |
2023/03/08(水) 10:26:55.37ID:dHMh5Dpe0
基礎を身につけるのは本が一番
0159デフォルトの名無しさん (アウアウウー Sa1d-9OjX)
垢版 |
2023/03/08(水) 12:44:05.00ID:MldDZpKGa
もうこいつの相手しない方がいいかも
ただのレス乞食だろこれ
0160デフォルトの名無しさん (ワッチョイ 8b10-Qpn1)
垢版 |
2023/03/08(水) 12:51:56.74ID:htQurChY0
まぁメモリもスレッドも網羅してるJava書籍があると思ってるバカ学生じゃ相手になるわけねーわなw
基本のキの字すら理解してないのに本読んで基本理解するとか書いてるホンモノのバカなんだからw
逃亡宣言なんかいちいちせんでええからとっとと消えろゴミ
0161デフォルトの名無しさん (ワッチョイ 118f-xZlB)
垢版 |
2023/03/08(水) 16:39:37.90ID:dHMh5Dpe0
知らないだけでしょ
知らないことを偉そうに言うなよ
0163デフォルトの名無しさん (ワッチョイ 8b10-Qpn1)
垢版 |
2023/03/08(水) 18:50:09.87ID:htQurChY0
バカ「絶対に100億兆円稼げるアプリの実装方法が書かれた本を教えてください!!!」

賢者「は?ねーよバカw」

バカ「知らないことを偉そうに言うな!!!」


THE 糞バカ
0164デフォルトの名無しさん (アウアウウー Sa1d-9OjX)
垢版 |
2023/03/08(水) 19:09:52.57ID:qUbsss6Za
取り敢えず上から目線のゴミ野郎はNGに入れといたわ
非建設的な持論を並べ立てるだけのバカほど見苦しいものはない
まあ現実が上手くいってないんだろうねこの人
0166デフォルトの名無しさん (ワッチョイ 118f-xZlB)
垢版 |
2023/03/08(水) 19:34:14.31ID:dHMh5Dpe0
バカだから何言われてるのかわからないだけでしょ
わからないことを偉そうに言うなよ
0168デフォルトの名無しさん (ワッチョイ 0954-v9OY)
垢版 |
2023/03/19(日) 10:11:53.31ID:83t6ehf+0
まあ雑談なんだけど、独学でjavasilverはとって今オンラインスクールで勉強してるのね(独学でwebアプリ作ろうとかしだすとすごく効悪いと思ったから)、まだそんなレベルなんだけど、JAVAってオブジェクト指向が難しいっていうけど、何をやりだしたら難しいのかな。
他の言語知らないから比べられんのやけど。
0169デフォルトの名無しさん (ワッチョイ 0954-v9OY)
垢版 |
2023/03/19(日) 10:23:11.66ID:83t6ehf+0
独学でjavasilverまではとって、まだそのレベルなんだけど、JAVAで難しいって言われるオブジェクト指向って、どうゆうとこだと思います?
クラス型の変数をつくってそこにオブジェクトをつっこむってところがいまいち納得いかないけど、そうゆうとこかな。
頭の中で理論立ててくいのが大変。わかる人はもう慣れで考える必要もなく、読んだり組んだりするのかな。
クラス型の変数にnewしたやつを代入して、その変数がメソッドの引数に使われてると、つどつど内容を追って考えるものですか?
0170デフォルトの名無しさん (アウアウエー Sa23-lF85)
垢版 |
2023/03/19(日) 12:40:59.77ID:fPDrKYk/a
ライブラリやモジュール設計するつもりでなければ気にすんな
0171デフォルトの名無しさん (ワッチョイ 1b02-ijvT)
垢版 |
2023/03/19(日) 19:00:22.27ID:3QN5+OXV0
Tomcat上で動作しているWebアプリがあるのですが、
テキストボックスを追加するとかの改造したいと思ってます

ただ、フレームワークか何かを使っているようで、
正直、動作がよく分かりません

Eclipseとかで、ソースのここに来たらブレーク、みたいに指定できますが、
似たような感じで、ブラウザのこのボタンが押されたらブレーク、みたいにして
その時にどのソースのどこが動作していたかが分かるようにならないかと
思ってますが、そういうことってできますか
それとも構造を読み解かないと無理でしょうか
0172デフォルトの名無しさん (ワッチョイ eb10-F0re)
垢版 |
2023/03/19(日) 22:44:13.21ID:Ug3S7Goj0
知識不足
まず画面とトムと業務クラスがどういう連携してるか知るところから理解してないと話にならん
そのレベルだと画面のサブミットの意味も理解してないだろうからHTMLの勉強からだから絶望的知識不足
画面にしてもwebアプリサーバーにサブミットする方法はformだったりスクリプトだったり非同期だったり
テンプレエンジン使ってたりいろいろあるから読むのなんてあたりまえ
0173デフォルトの名無しさん (ワッチョイ 13ad-F0re)
垢版 |
2023/03/20(月) 14:12:07.94ID:uf3XtkTY0
I am Tom.
0174デフォルトの名無しさん (アウアウウー Sa95-jnF6)
垢版 |
2023/03/20(月) 19:10:22.38ID:paLbfV2Za
Java は、Spring Boot, Groovy とか?
基本はRuby on Rails で、それ以外のフレームワークは劣化版

YouTube で有名な雑食系エンジニア・KENTA の初心者向けRailsサロンが有名

WSL2, Linux, AWS, Docker, VSCode,
CircleCI, Github Actions
Bootstrap, React, Vue.js, TypeScript

最近、Java のログ機能に重大なセキュリティーホールが見つかって、
Tomcat のサイトからパスワードが盗まれたとか、Edge から通知が来たw
0176デフォルトの名無しさん (ワッチョイ ebbb-F0re)
垢版 |
2023/03/24(金) 01:16:49.67ID:YHnwGLAd0
とある文字コードのバイト列を他の文字コードの文字列に変換するには
下記みたいに一旦tmpStr、tmpBytesに変換しないと駄目なのかな?
byte[] bytes = {0x00, 0x01, 0x02, 0x03}; // 例えばShift_JISとする
String tmpStr = new String(bytes, "Shift_JIS");
byte[] tmpBytes = tmpStr.getBytes("UTF-8");
String convStr = new String(tmpBytes, "UTF-8");
0177デフォルトの名無しさん (ワッチョイ 13ad-F0re)
垢版 |
2023/03/24(金) 03:15:33.42ID:6qfM3P2X0
>>176
バイト列を new String(bytes, charsetName) で String のインスタンスにしたら内部では char[] に UTF-16 で保持されている。つまり Unicode になっている。
その String のインスタンスから何かのエンコードのバイト列にしたいなら getBytes(charsetName) 等を使う。
0179デフォルトの名無しさん (ワッチョイ e98f-a1qf)
垢版 |
2023/03/24(金) 11:22:42.95ID:miXOHSMu0
> byte[] bytes = {0x00, 0x01, 0x02, 0x03}; // 例えばShift_JISとする
Shift_JISでエンコードされたバイト列

> String tmpStr = new String(bytes, "Shift_JIS");
Shift_JISでデコードしてStringを得る

> byte[] tmpBytes = tmpStr.getBytes("UTF-8");
UTF-8でエンコードされたバイト列

> String convStr = new String(tmpBytes, "UTF-8");
UTF-8でデコードしてStringを得る

これらは同じものだよ
・Shift_JISでデコードしたString
・UTF-8でデコードしたString

文字コードはString→バイト列の変換規則であって
String自体にはShift_JISもUTF-8もないよ
0181デフォルトの名無しさん (ワッチョイ ed8f-JnmT)
垢版 |
2023/03/25(土) 00:27:26.96ID:MJx23FgN0
>>180
Shift_JISのバイト列をUTF-8のバイト列に直接変換する機能は標準ライブラリには用意されてない
自作するならShift_JISは8000文字くらいだからトライ木に詰め込んで変換するとかかな
自作しても処理が速くなるとは限らないしStringにデコードするのが正統派スタイルよ
英数字だけならShift_JISもUTF-8も同じバイトだから変換する必要ないけどね
0182デフォルトの名無しさん (ワッチョイ 2e10-3uzD)
垢版 |
2023/03/25(土) 00:39:13.30ID:FZuV1mNq0
バカって基本的な原理を全く知ろうとしないで延々と質問するよな
原理を知ってればそれに頼らないでどう処理すればわかるのに
答えだけすぐ見る頭の悪い学生みたいに常に行き当たりばったりの行動しか取れないから永久に進歩しないし嫌われる
逝ってヨシ!!!!!!!!
0184デフォルトの名無しさん (ワッチョイ ed8f-Nv0v)
垢版 |
2023/03/25(土) 11:47:36.33ID:MJx23FgN0
>>182
君なんでそんなに攻撃的なの?
更年期のババアなの?
0185デフォルトの名無しさん (アウアウウー Saa5-jS6D)
垢版 |
2023/03/25(土) 14:21:30.91ID:qW4hqU/Ea
基本的に、CP932(sjis)のようなWindows 専用日本語を知っている外人は、まずいない。
逆に日本人で、CP932以外のCPを知っている香具師がいないのと同じ

例えば、MySQL もいつも日本語のバグを修正しているから使えない。
Ruby では、iconv を非推奨にして、NKF に変わった

CP932を変更しても、各モジュールがその変更に追随しないから使えない。
特に、Ruby, Java の2大バックエンドのウェブ開発では、
OSS を使うから、UTF-8 以外には対応しない

これが基本中の基本
0186デフォルトの名無しさん (アウアウウー Saa5-tUaT)
垢版 |
2023/03/25(土) 14:55:58.15ID:B9hd5fwCa
香具師
0187デフォルトの名無しさん (テテンテンテン MM26-uluY)
垢版 |
2023/03/25(土) 21:57:39.03ID:CsLeeAHHM
一応枝葉の部分を拾っておくと、java.nio.charset.Charset(やCharsetEncoder)あたりを使えば
Stringを介さずにBuffer(バイト列)のままShift_JIS(あるいはWindows-31J) -> UTF-16 -> UTF-8と変換することは出来る
巨大なデータとかメモリマップファイルとかでもなければStringを介するほうが楽でよいと思うけど(どちらにせよUTF-16経由になるし)

あとおそらくcharsetはShift_JISではなくWindows-31Jを使う方が望ましい結果が得られる可能性が高いかと
0188デフォルトの名無しさん (ワッチョイ 9e9a-qKFK)
垢版 |
2023/05/06(土) 10:06:48.61ID:PEDNurG50
某マイクラのJava版の中身を見たりいじったりしたいのですが、
versions/1.19.4/1.19.4.jarというファイルがメインjarに見えるので直接java -jarしたら
Error: Could not find or load main class net.minecraft.client.Main と言われてしまいます

実際マニフェストにはnet.minecraft.client.Mainだと書いてあるのだけど、jarを展開すると
上記クラスファイルはなく、代わりにnet/minecraft/client/main/Main.classというのがある
一方マイクラのlauncherから起動する分には何の問題もない

これってどうなってるんでしょうかね。これは本当のメインjarではないとか?
あるいはマニフェストの設定をランタイムで変更したりとかできるんでしょうか
0191デフォルトの名無しさん (ワッチョイ 869a-tbGU)
垢版 |
2023/05/22(月) 07:22:39.68ID:F35vhY0Y0
>>190
そういうのってその案件次第じゃ?
古いJDKを使って欲しい案件だってあるでしょ

ちなみに今Android Studioをチェックしたら17が入ってるようだ
しかしこのスレは生きているのか
0193デフォルトの名無しさん (ワッチョイ 8a7c-xCRl)
垢版 |
2023/05/26(金) 09:48:30.11ID:aEN9HMnl0
フロントがJS、バックがSpringMVCという構成ではなく、
バックをWebFluxにして、R2DBCを使えば、単純なDBクエリだけれどリクエスト数は多い
というサービスに効果あるかな。今後も、WebFluxのユーザは増えていくでしょ。
と思ったのですが……

JDK20以降でLoomが完全実装されたら仮想スレッドになって
実質、ノンブロッキングのコードを書いても書かなくても同じになって、
WebFluxやR2DBCの優位性は無くなります?
0195デフォルトの名無しさん (ワッチョイ 8d8f-qVLu)
垢版 |
2023/06/03(土) 18:46:06.08ID:lPLamTYg0
ワシのところはJava11だ、Java8の知識があれば十分
0197デフォルトの名無しさん (ワッチョイ ee10-N/Lw)
垢版 |
2023/06/03(土) 21:40:19.53ID:XKXIyQhC0
冗長な糞コードしか書けない雑魚は別にバージョンなんて全く気にする必要もないし気にするだけ思考の無駄
8未満と8以降じゃ公文式使えなかったりストリップも使えないからオワコンだけど
0198デフォルトの名無しさん (ワッチョイ 8d8f-qVLu)
垢版 |
2023/06/03(土) 21:49:16.80ID:lPLamTYg0
イキリすぎだろw
0200デフォルトの名無しさん (アウアウウー Sa2b-edyX)
垢版 |
2023/07/22(土) 10:36:21.82ID:al5RdX3ea
javaってjarを実行するよりclassファイルを実行したほうが速いですか?
なんとなくjarは最初に圧縮の解凍があって遅そうなイメージがあるのですが
そんなことはないですか?
0201デフォルトの名無しさん (ワッチョイ 079c-1AW6)
垢版 |
2023/07/22(土) 11:41:27.95ID:NXQ0T+AH0
むしろjarのほうが速いよ
0203デフォルトの名無しさん (アウアウウー Sa2b-vDZl)
垢版 |
2023/07/27(木) 13:53:23.14ID:gIycSMlBa
>>200
圧縮されていた方が(コンピュータからしたら)とても遅いディスク等からメモリへの読み込みが少なくて済むので速くなる。圧縮状態から元に戻すのはメモリ上でやるのであまり時間が掛からない。

もちろんこの逆の状態とか、圧縮状態から元に戻すのに物凄く時間が掛かるCPUだったりそのような圧縮だったりすればこの限りではない。
でもそんな環境は今は珍しいと思うよ。組み込み関係のマイコンとかならあるかも知れない。(ラズパイみたいなお前普通のPCだろとツッコミを入れたくなるようなやつは除く)
0204デフォルトの名無しさん (ワッチョイ df02-Mdmh)
垢版 |
2023/07/27(木) 19:59:15.65ID:FKk2H2CJ0
その速度差を気にするのだったら
そもそもJavaで書かないほうがいいと思う
0205デフォルトの名無しさん (ブーイモ MMb6-A2L1)
垢版 |
2023/08/16(水) 14:43:55.58ID:6XslkswQM
Javaって今時Union型も無いんですか
どうして?
0208デフォルトの名無しさん (ワッチョイ 6301-DXLR)
垢版 |
2023/08/16(水) 19:20:53.06ID:AMR7lasI0
>>205
JavaはクラスのインスタンスはGCで管理するので共用体の必要が無いのでは?
0209デフォルトの名無しさん (ワッチョイ 1a02-P1Fn)
垢版 |
2023/08/16(水) 19:58:11.06ID:TYqhyd0v0
強力な Object 型ならあるぞ
0211デフォルトの名無しさん (ワッチョイ 2bbb-QZaR)
垢版 |
2023/08/22(火) 00:46:18.91ID:TPz+mBYc0
さまざまな型システムにはメリデメのトレードオフが必ずある
共用体も節度を持って使えば便利だけど濫用すると惨劇を招く
Javaはシンプルさと移植性を重視してデザインされたので、クラス定義や複数の変数で代用可能な共用体は用意されなかった
Cの直系やBetter JavaScriptと違ってそんなに必要になるシーンも多くないのでSealed Classで事足りるだろう
世界中にある莫大なコードベースに対して破壊的変更が少なくなるように配慮せざるを得ない部分もある
シンプルさが大量のプログラマを生んで成功したからこそ長い栄華を誇ったのだし、栄枯盛衰の落ち目を笑うのは浅はか
0212デフォルトの名無しさん (ブーイモ MMb3-HTZh)
垢版 |
2023/08/22(火) 07:55:42.93ID:tV8s6iNuM
Javaにも様々な新機能が追加されていってるけど頑なに実装を拒んでるものもあるよな
その筆頭がasync/await
要望が多いのに「代わりにVirtual Thread使ってくれ」とか言ってるからな

Virtual Thread とは使い処が違うんだよ!!
0213デフォルトの名無しさん (ワッチョイ 2501-d0po)
垢版 |
2023/08/29(火) 22:09:14.54ID:HMbn0XNH0
質問です。
pleiades 2023 で gradle のプロジェクトをインポートしようとしているのですが
以下エラーが出てビルド出来ません。
------------------------------------------------------------------
FAILURE: Build failed with an exception.

* What went wrong:
org/gradle/api/plugins/MavenPlugin
> org.gradle.api.plugins.MavenPlugin

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.

CONFIGURE FAILED in 1s
----------------------------------------------------------
結構頑張ってググっているのですが原因が分からないのですが、
どなたか助けていただけませんでしょうか。
環境は Mac Ventura, gradle 8.3, Java17 です。
02140213 (ワッチョイ 2501-d0po)
垢版 |
2023/08/29(火) 22:10:24.92ID:HMbn0XNH0
文字数制限で連投になりすみません。
なお build.gradle の内容は以下です。
---------------------------------------------------------------------
plugins {
id 'org.springframework.boot' version '2.3.5.RELEASE'
id 'io.spring.dependency-management' version '1.0.10.RELEASE'
id 'java'
id 'eclipse'
id 'idea'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = 11

compileJava.options.encoding = "UTF-8"

repositories {
mavenCentral()
}
dependencies {
implementation('org.springframework.boot:spring-boot-starter-jdbc')
implementation('org.springframework.boot:spring-boot-starter-thymeleaf')
implementation('org.springframework.boot:spring-boot-starter-validation')
implementation('org.springframework.boot:spring-boot-starter-web')
runtimeOnly('com.h2database:h2')
runtimeOnly('org.springframework.boot:spring-boot-devtools')
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
testImplementation('org.springframework.boot:spring-boot-starter-test') {
exclude group: 'org.junit.vintage', module: 'junit-vintage-engine'
}
}
0215デフォルトの名無しさん (ワッチョイ 2501-d0po)
垢版 |
2023/08/29(火) 23:20:37.15ID:HMbn0XNH0
すみません、自己解決しました。
ビルドに使う Gradle を 7.2 にしたら何故か出来ました。
ググると maven プラグインは 8 から廃止なので maven-publish を使えみたいな記事はあったのですが、
maven-publish と build.gradle の plugins に書いてもダメだったんですよね……。
根本的には解決していないのですが、とりあえずご報告でした。
0216デフォルトの名無しさん (ワッチョイ ff6b-j351)
垢版 |
2023/09/24(日) 10:29:14.83ID:Hs7TDocS0
int[] a={1,2,3,4,5};
という入れる変数を作ったんですが、プログラムの途中で
a={5,4,3,1,2};というふうにしたいんですができません。
いちいちa[0]~a[4]全部に代入しないといけないのでしょうか?
0218デフォルトの名無しさん (ワッチョイ 3be4-h2iX)
垢版 |
2023/09/24(日) 11:28:29.11ID:1DaYlERU0
>>216
a[2]は代入しなくていいよ
0220デフォルトの名無しさん (ワッチョイ daad-iLfk)
垢版 |
2023/10/08(日) 06:01:02.29ID:c7bH/Jal0
>>216
a の参照先を変えてしまっていいなら a = new int[] { 5, 4, 3, 2, 1 }; と書けば良い。それまで a の参照していた先のメモリはgcが自動で解放してくれるので考える必要はない。
a の参照先をそのままにしたいなら一つづつ a[0], a[1], a[3], a[4] に代入するかループ使って代入すれば良い。
0222デフォルトの名無しさん (ワッチョイ d117-iRXk)
垢版 |
2023/10/31(火) 02:58:33.18ID:NWeBFhUv0
設定ファイル(setting.config)があり、その中身が
pathA="D:\\Download";
pathS="G:\\Download";
pathC="Z:\\Download";
と各行にあるものを読み込み、各Pathに設定されたディレクトリを指定した変数に代入するプログラムを書こうとしています。
その場合、一般的にはどのように読み込み処理を書かれるのでしょうか?
0223デフォルトの名無しさん (ワッチョイ 13ad-zW/F)
垢版 |
2023/10/31(火) 03:05:20.29ID:obpiiey30
>>222
java.util.Properties クラスのインスタンスを作って load() でそのファイルを読んで getProperty("pathA") みたいにして内容を取り出す。
0224デフォルトの名無しさん (ワッチョイ 81ee-iRXk)
垢版 |
2023/11/01(水) 01:08:48.05ID:QIM0oxL50
>>223
ありがとうございます。
0225デフォルトの名無しさん (ワッチョイ 81ee-iRXk)
垢版 |
2023/11/01(水) 01:08:53.32ID:QIM0oxL50
>>223
ありがとうございます。
0226デフォルトの名無しさん (ワッチョイ 1910-KYV2)
垢版 |
2023/11/10(金) 14:23:27.45ID:ZmoDO33M0
intellij使ってメソッド定義する際に引数にOptionalを指定すると
「Optional<型>がパラメータ'変数名'の型として使用されています」って警告が出るけど
引数にOptional指定するのってよくない書き方なのかな?
0227デフォルトの名無しさん (ワッチョイ ff60-ljUV)
垢版 |
2023/11/11(土) 20:17:07.76ID:XF4CbZuB0
背景が黒くならないのは何故でしょうか?
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);
}});}}
0229デフォルトの名無しさん (ワッチョイ ff60-ljUV)
垢版 |
2023/11/11(土) 21:40:55.85ID:XF4CbZuB0
>>228
ありがとうございます。
g2.clearRect(0, 0, getWidth(), getHeight());
を追記したらできました。
0230デフォルトの名無しさん (ワッチョイ ff60-ljUV)
垢版 |
2023/11/11(土) 22:53:11.36ID:XF4CbZuB0
ちなみに、エクスプローラーの左側にフォルダ構成が表示できる「ナビゲーションウインドウ」はどのような方法で実装されいますでしょうか?
0231デフォルトの名無しさん (ワッチョイ ffbd-sg3J)
垢版 |
2023/11/15(水) 23:56:40.14ID:8ll9Bxfa0
>>226
基本的にOptionalは戻り値として使うために作られたもので、引数として使うことを想定してない
一般的にも引数には使わないことが推奨されている(いろいろ議論はあるけど)
「引数がnullの時にデフォルト値を与える」みたいな使い方をしたくなるけど、それやると呼び出す側にOptionalで包むことを強制することになるので、かえって煩雑になったりするんだよね
0232デフォルトの名無しさん (ワッチョイ e905-bTTa)
垢版 |
2023/11/19(日) 01:53:31.27ID:qZa+eOkQ0
ttps://pastebin.com/tM0VgmHA
左側に表示されるフォルダをクリックすると、右側にそのクリックされたフォルダの中身を表示したいのですが、どうすればいいのでしょうか?
0234デフォルトの名無しさん (ワッチョイ 0dba-6HfB)
垢版 |
2023/11/22(水) 19:43:34.58ID:kYVkXFrV0
非プログラム民です Javaの一番初歩的なスレがここっぽいので失礼します

Win11にJavaってあんまり要らないんでしょうか?
8年ぶりぐらいに新調したんですがそういや入れてないけど何も要求されてないなと気付きました
PCの使用用途としてはネットサーフィンやゲーム程度 Office(Excel)はLibre使ってて今のところマイクラもやってない…
プログラムなどPCの根っこ部分を弄るような人以外はもう特に入れる必要がない時代なんでしょうか?
ちょっとふわっとした質問ですが教えていただけると助かります
0235デフォルトの名無しさん (スップ Sd22-vj+6)
垢版 |
2023/11/22(水) 20:40:30.76ID:XdkKjHJEd
>>234
Javaのデスクトップアプリというジャンルがほぼ死に体なのでPCにJavaを入れる機会は大幅に減った
下手に入れて放置とかしてるとセキュリティホールになりかねないので必要になるまで入れない方がいいよ
0237デフォルトの名無しさん (ワッチョイ 91de-iedC)
垢版 |
2023/11/23(木) 07:07:52.59ID:feYNNbaU0
Oracle公式のJava Runtime Environment自体が廃止されたし
Javaは開発者が使うもの、ユーザーはアプリにバンドルされたJavaを使うことになったから
ユーザーがJavaをインストールする必要はなくなった
0238デフォルトの名無しさん (ワッチョイ 46ff-bTTa)
垢版 |
2023/11/24(金) 22:53:30.32ID:fPE4U9Nj0
インベーダーゲームを作成していて、敵の左右移動についての質問になります。
敵の最初配置は以下のようになっており、最初は右方向に移動します。
■■■■
■■■■ →
■■■■
右端へ行く途中に、いくつか敵が倒された後(倒された敵は□で非表示)
□■■□
□□■□
□□□■
一番端で生き残っている者(※ここでは一番下の右側の敵)が右端に着くと、全体が移動方向を反転したいと思います。

どのように実装されているでしょうか?
現在は以下の通りに敵を作り、それぞれに移動方向をセットしています。
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);//右に移動する
}}
0239デフォルトの名無しさん (ワッチョイ c755-ds/9)
垢版 |
2023/11/25(土) 08:06:59.65ID:vlVh3gWj0
Alienのコンストラクタにthisを渡さないほうがいいよ
thisを渡してるってことはAlienクラスが外側のクラスを参照してるってこと
このような相互参照する設計は結合が密になって後々不都合が出ることが多い

Alienインスタンスそれぞれが x, y 座標を持ってるんだからaliensを二次元(画面座標)にする必要はない
0240デフォルトの名無しさん (ワッチョイ 5ff5-T+3p)
垢版 |
2023/11/25(土) 08:51:19.25ID:DleP5wfq0
ScopedValueの説明記事読んでたら思ったんだけど
あれって同じ変数名なのに違う型になってるよね?
Object x=;
ScopedValue.where(x,,);
これが対象スコープ内では
ScopedValue x;
として呼び出せてしまってる、ということだよね
xが場所によって型が違う
なかなか嫌な構文だね。可読性低下しない?勘違いしそう
0242デフォルトの名無しさん (ワッチョイ 5ff5-T+3p)
垢版 |
2023/11/25(土) 10:44:51.02ID:DleP5wfq0
>>241
そうだった。かんちがいした
0243デフォルトの名無しさん (ワッチョイ c714-6ggm)
垢版 |
2023/11/26(日) 08:44:10.15ID:1Nq25AZ10
>>239
ありがとうございます。疎結合やList<Alien>にできるよう見直します。
0244デフォルトの名無しさん (ワッチョイ bd68-jFlW)
垢版 |
2023/12/02(土) 02:11:40.58ID:TtNr0xet0
スペースインベーダーの敵の移動について、一番端にいる敵が画面の端まで移動した場合、方向を反転するという動きを実装しようとしております。
現在、敵が端まで行った際に反転するところまでは実装できたのですが、敵が画面外に少し出た状態で反転します。
画面の端できっちりと反転する方法はありますでしょうか?
ttps://pastebin.com/2KFpUcpc
0245デフォルトの名無しさん (ワッチョイ eaad-Ej9D)
垢版 |
2023/12/03(日) 09:59:40.93ID:iaiv32Fc0
あるんじゃない?てか、そんなの少し手前を画面の端とみなすように作れば良いだけでは?
0246デフォルトの名無しさん (アウアウウー Sa21-wVFe)
垢版 |
2023/12/03(日) 11:04:08.98ID:QTewqrs7a
まるちんこ
0247デフォルトの名無しさん (ワッチョイ 6311-DOnR)
垢版 |
2023/12/28(木) 09:10:42.32ID:Z5LVjO8Y0
エラーチェックをする関数を作るとき、
エラーがあれば、エラーあるよーんってメッセージをつけた例外を呼び出し元に投げる。
ということをしたいとき。
エラーの詳細はどうでもいいとき、
throw Exception(“エラーあるよーん“)
はだめなの?
わざわざExceptionを継承したクラス作らないとだめなの?
0248デフォルトの名無しさん (ワッチョイ a352-H80b)
垢版 |
2023/12/28(木) 09:47:21.79ID:wPnlX7lS0
いいよ
0250デフォルトの名無しさん (ワッチョイ 334d-hEBs)
垢版 |
2023/12/28(木) 13:21:50.26ID:37lmfGGJ0
いいよ
0251デフォルトの名無しさん (ワッチョイ 7390-neWB)
垢版 |
2023/12/28(木) 22:29:56.50ID:Hk4w0gA/0
例外クラスの自作はあまりやらないよな?
既存のヤツでだいたいは間に合う

作るとすれば
エラー情報を盛込みたいとか
しっくりくる名前の例外クラスが無い場合とか
後で拡張を考えてるとか
そんくらいだよな
0252デフォルトの名無しさん (ワッチョイ 4ea5-nqB8)
垢版 |
2023/12/30(土) 14:57:08.35ID:AS8gr52a0
なんでも質問スレからきました

VScodeでjavaを勉強する初心者です
プログラムが完成したのでjarファイルをビルドしたのですが
jarファイルをクリックしてもコマンドプロンプトで起動しても
デバッグでの動作を全くせずに終了してしまいます
javaを入れなおして再起動などもしてみましたが起動しません
どうすれば動くjarファイルを作成できるのでしょうか
よろしくお願いします
0253デフォルトの名無しさん (ワッチョイ 5f4d-vVi2)
垢版 |
2023/12/30(土) 15:20:21.10ID:7sdDSpr80
>>252
コマンドから実行したら何かメッセージ出力されるんじゃないかな
それをここに貼り付けてくれ
レスを投稿する


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