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

レス数が900を超えています。1000を超えると表示できなくなるよ。
1デフォルトの名無しさん (アウアウウー Sa73-AAco [106.132.135.194])
垢版 |
2018/11/19(月) 11:37:06.10ID:C68x9bSia

プログラミング言語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質問・相談スレッド181★★
https://mevius.5ch.net/test/read.cgi/tech/1518252580/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured
2020/01/19(日) 01:13:46.61ID:qcodQ+dh0
URL のクエリー部分に、JSON を入れる人は、いないw

普通に、キー・値で書け!
2020/01/19(日) 06:36:58.45ID:qcodQ+dh0
以下は、VSCode の拡張機能、REST Client のサンプルだけど、
たぶん、JSON は、POST しかないと思う

以下を、test.http として保存して、
URL を、http://localhost:8888 などに変えて、REST Client でやってみれば?

GET https://example.com/comments/1 HTTP/1.1

###

GET https://example.com/topics/1 HTTP/1.1

###

POST https://example.com/comments HTTP/1.1
content-type: application/json

{
"name": "sample",
"time": "Wed, 21 Oct 2015 18:27:50 GMT"
}
2020/01/19(日) 11:55:03.03ID:Qx904AID0
publicとかprevateとかつける意味あるの?
メンドウクサイんですけど
2020/01/19(日) 12:12:33.24ID:iFGOF6Al0
>>828
YOU、全部グローバル変数にしちゃいなYO!
830826 (ワッチョイ e32c-Sfrr [219.162.234.204])
垢版 |
2020/01/19(日) 12:43:27.77ID:qcodQ+dh0
Ruby でやってみた!
標準のWEBrick サーバーで、>>827
のJSON を、POST で受け取って、そのまま返信する

require 'webrick'
require 'json'

srv = WEBrick::HTTPServer.new( {
:BindAddress => '127.0.0.1', :Port => 8888 } )

srv.mount_proc( '/' ) do |req, res|
res[ "content-type" ] = "text/plain"

# p JSON.parse( req.body ) # JSON を、Ruby Object に変換する事もできる
res.body = req.body
end

Signal.trap( :INT ){ srv.shutdown } # Ctrl+C で終了
srv.start
2020/01/19(日) 19:42:05.87ID:U7GTLDND0
>>828
お前みたいなバカは全部privateがお似合いw
832デフォルトの名無しさん (ササクッテロル Sp41-hE/J [126.233.105.215])
垢版 |
2020/01/22(水) 20:00:42.92ID:Tupj1TxXp
String yyyyをSQL用にDate変換するにはどうしたらいいんだ…?
調べてもyyyy/mm/ddの記事ばかり
2020/01/22(水) 20:44:41.49ID:Ad54xjX8M
mmddに1月1日でも入れときゃいいんじゃね
2020/01/22(水) 23:56:49.84ID:fyGKoId60
Ruby on Rails は、抽象的なtimestamps 型を使う。
それがDB のMigration で、各DB の時刻型になる!

時刻は、日付型も含んでいる。
0時0分0秒にすればよい

UTC 時刻で保存しておけば、各国のローカルタイムにも変換できる
2020/01/23(木) 07:06:00.23ID:YEvEyesH0
jdkが含まれてると有償になるみたいですがwindowsならアプリケーションの一覧に出てくるでしょうか?
java使ってるっぽいアプリがあるのですがjdkが入ってるか入ってないか調べる方法が解りません
836デフォルトの名無しさん (ワッチョイ 1b01-7vT5 [111.90.14.57])
垢版 |
2020/01/23(木) 07:28:23.50ID:cFfrxTRF0
>>832
var localDate = LocalDate.of(Integer.parseInt("2019"), 1, 1);
var sqlDate = java.sql.Date.valueOf(localDate);
System.out.println(sqlDate);
2020/01/23(木) 09:57:36.39ID:gE68l7u+0
>>834
ス・レ・チ
2020/01/23(木) 12:52:46.95ID:mWAdwIcyr
var localDate = Year.parse("2019").atDay(1);
と書くとちょっとだけすっきり
2020/01/27(月) 14:02:10.88ID:SzZb6gPjM
月が1から始まるだけで感涙しそう
2020/01/28(火) 17:07:27.77ID:tlwivndu0
finalって何のためにあるの?
変更できない変数なら変数にしなきゃいいじゃん
ばかみたい
2020/01/28(火) 17:14:06.59ID:CmoTnj/f0
2020/01/28(火) 17:56:19.12ID:EaxnzHwqM
>>840
必要になったときに計算で値を算出できる、かつ、計算コストが小さいならメソッドにしても良いかも知れない
2020/01/28(火) 18:00:44.22ID:EaxnzHwqM
変数を使用するときは、値を得るタイミングと値を使用するタイミングが異なるときであったり、計算コストが高いときであったりするから、変数を消すのはそれなりに大変
2020/01/28(火) 19:41:55.33ID:HF/SUcrCM
>>840
数値とかだったりするとぱっと見でどういった意味の値かわかりづらいやろ
同じ意味で使ってる値の変更するときも安全
2020/01/28(火) 20:54:00.04ID:z4RJoCBm0
ファイナルアンサーの為に
846デフォルトの名無しさん (アウアウウー Sa9d-lBRq [106.132.128.243])
垢版 |
2020/01/29(水) 10:02:47.97ID:Ji+gdkxYa
>>840
定数に使える。

同じ意味でプログラムの複数箇所でその変数を使っている場合、変更時に変数への初期化箇所を直すだけで全ての変更が終わる。
直接数値などを書いた場合はプログラムの関連する箇所の全ての修正が必要となり修正ミスや修正忘れによるバグの発生率が増える。
2020/01/29(水) 10:47:34.48ID:5KUzLeA7r
定数でしか使わないのは勿体ない
immutable programmingについて学ぶとfinalの価値が高いことに気付くよ
Javaだとfinal打つのが面倒で省きがちだけどね
2020/01/29(水) 11:16:39.32ID:Fo4vX5x5M
>>840
finalクラス、finalメソッド、final変数とそれぞれ役割がある

変数だけについて言うとfinalを使うのは定数を定義したい場合とイミュータブルな変数を定義したい場合

イミュータブルな変数とは初期化後は変更されない事がコンパイラ等によって保証された変数

オブジェクトが生成されてから破棄されるまで変数の値が不変である事が保証されると
意図しない変更を防止(バグ回避)できたり、同時実行制御ロジックをシンプルにできたり、IDではなく値の同値性で比較すべきオブジェクトを表現できたり、変更されない事を前提とした最適化ができたりと様々なメリットがある

Kotlinのvar, val, constのようにモダンな言語はほぼ全てミュータブルな変数、イミュータブルな変数、定数の3つを明確に使い分けられるように設計されている
2020/01/29(水) 12:10:44.48ID:5KUzLeA7r
素晴らしい回答だな
850デフォルトの名無しさん (アウアウウー Sa9d-lBRq [106.132.128.243])
垢版 |
2020/01/29(水) 12:16:25.17ID:Ji+gdkxYa
そうだな。

それと、こういう初心者定番の質問と回答をまとめたwikiとか作っとくと良いのではないか?
Javaだと既にあるかな?
2020/02/01(土) 00:12:05.55ID:qUTCHDuq0
理屈はわかるが実践としてfinal使う人いるか?
いたら連れてきてくれ
852デフォルトの名無しさん (ワッチョイ fb01-rcOU [111.90.14.57])
垢版 |
2020/02/01(土) 01:16:32.43ID:kZmU3WGD0
マルチスレッドのプログラム書くときとか
ラムダ式使ったり匿名クラス使ったりするときにfinal使うっしょ
使いまくりっすよ
まあ最近のJavaはコンパイラが自動的にfinalにしてくれたりするけど
853デフォルトの名無しさん (ワッチョイ 13ad-e4+k [27.139.41.170])
垢版 |
2020/02/01(土) 02:35:49.24ID:SqAgZ26K0
>>851
君だってライブラリ側でfinal指定の引数の関数を使うときは使うだろう?
2020/02/01(土) 04:50:38.45ID:dcKIHlgcr
おれはメンバ変数ではfinalは隙あらば書きたい
引数とローカル変数では書きたくない
5+1文字打つことのコスパが全然違う

immutableクラスを作るときに凡ミス防止を助けてくれるし
ほかの開発者が後で破壊的な変更をしてしまわないようにアピールする効果も狙える

実践で使わないなんて言えるのはimmutableの便利さにまだ実感をもってないからだよ
もしJavaのStringがStringBufferだったら阿鼻叫喚だったろうし
Java8でDateとCalendarが残念な過去のものとされたのもimmutableが理由のひとつとしてJSRで挙げられてる
2020/02/01(土) 09:33:35.69ID:9lmFlpKY0
final プリミティブ=イミュータブル←わかる
final ミュータブル←それただのリードオンリーや幸子
2020/02/01(土) 09:53:46.19ID:dcKIHlgcr
final イミュータブルにすればいい
final ミュータブルだったとしてもコンストラクタでコピーして不用意なgetterを付けずカプセル化するなら結果的に同じ
2020/02/01(土) 10:02:53.61ID:dcKIHlgcr
節子、それを言うなら幸子やない。それ年末に凄い衣装で歌う人や
2020/02/01(土) 11:15:25.54ID:HI9gNj8C0
final answer;
2020/02/01(土) 12:15:11.92ID:EspH/Y2K0
>>857
蛍の墓なんて、上映当時は暗くて嫌だったのでトトロしか観なかったんだよね…
2020/02/01(土) 13:35:17.93ID:HI9gNj8C0
日本入国禁止
2020/02/01(土) 14:40:22.67ID:6DXJSl9u0
幸子てw
素なのかボケなのかw
2020/02/01(土) 15:10:43.95ID:+HWOljVE0
幸せを数えたら片手にさえ余る
2020/02/01(土) 15:47:27.99ID:dcKIHlgcr
final int 年齢;
public 彼女(int 年齢) {
 this.年齢 = 年齢;
}

var 俺の嫁 = new 彼女(18);

こう書くといつまでも年齢が変わらない彼女が手に入る
finalで保証されているから安心ずっとピチピチギャルじゃよ

ローカル変数の俺の嫁にfinalは書かない
再代入は自由だから新作や来期が来たら替えてもいいぞ
定数(static)ではないのでこうも書ける
var 俺のハーレム = List.of(new 彼女(25), new 彼女(12), /* 以下略 */);

※ただし彼女は2次元限定だ
2020/02/01(土) 19:17:32.12ID:PDlR+uaq0
俺のハーレム.stream().forEach(嫁 -> 嫁.ほにゃらら(俺));

この場合、"俺" は final または effectively final でなければならない、
こういうことですね
2020/02/01(土) 23:48:37.32ID:OSOKpenJ0
副作用を口実に何も与えられず使い捨て
そして最後はGC行き

←GC|
. ̄.|| ̄      オレ氏┗(^o^ )┓三
  ||           ┏┗   三
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
866デフォルトの名無しさん (アウアウウー Sa9d-lBRq [106.132.128.127])
垢版 |
2020/02/03(月) 11:19:40.31ID:EEPHYlO9a
Kotlin もよろしく
2020/02/08(土) 15:50:35.38ID:XDLxtpqZ0
EditTextのGONEを使っても大丈夫ですか?
2020/02/08(土) 15:52:21.65ID:XDLxtpqZ0
まちがいました
スレ違いでした
失礼します
2020/02/11(火) 12:22:58.90ID:zPkn4No/d
外部apiを使うんですが
apiキーをコードに記述して直接apiを叩いてクライアントだけで完結させるか
サーバーにapiキーだけ置いてそれを取得する形にするか
サーバーがapiを使った処理をやって結果だけ返すようにするか
どれがいいですかね?
2020/02/11(火) 15:07:20.43ID:FrrTL3l30
イミフ
2020/02/11(火) 15:10:00.31ID:rTcYf6uaM
まあ二番目以外じゃね?
java関係ないけど
872デフォルトの名無しさん (アウアウウー Sa09-6yOj [106.132.123.2])
垢版 |
2020/02/11(火) 17:51:44.15ID:ix+UlUL8a
ゴーンは逃亡しました。
873デフォルトの名無しさん (アウアウウー Sa09-6yOj [106.132.123.2])
垢版 |
2020/02/11(火) 17:52:59.56ID:ix+UlUL8a
あ、リロード忘れて俺の書き込みもイミフに
874デフォルトの名無しさん (ワッチョイ c71d-sg8N [118.238.238.98])
垢版 |
2020/02/12(水) 01:53:03.72ID:CB9IiDBv0
実務経験1年で月収80万稼げるエンジニアになった理由
https://www.youtube.com/watch?v=DrbbyGsHQic
意識が低いエンジニアこそフリーランスになれ
https://www.youtube.com/watch?v=nSEaAJlgjbQ
フリーランスエンジニアの週3労働ってどんな感じ?
https://www.youtube.com/watch?v=8yjoDCdbzMc
ぼくがスキルのない社畜ならこうやって脱する
https://www.youtube.com/watch?v=aae8xxbUlMM
初めて人を雇ったらもう二度とサラリーマンをやりたくないと思った話
https://www.youtube.com/watch?v=U0OCGRVLFsM
プログラミングは文系でも余裕で出来ます!理由を現役プログラマーが解説
https://www.youtube.com/watch?v=iBOeiSKBIW8
貧乏人こそ社会不適合者
https://www.youtube.com/watch?v=O3BT72BIBJI
元ド貧乏が教える】貧乏を抜け出すための2つの考え方
https://www.youtube.com/watch?v=IRrCgTy3ckc
より良いオファー貰ってるのに転職しないとか何考えてるの?
https://www.youtube.com/watch?v=i0J6uRhlj7o
2020/02/12(水) 15:18:31.59ID:9vv3BaQq0
閑話休題
2020/02/18(火) 05:20:22.57ID:s//kq2Ho0
JavaFXがswingに撮って変わった原因てなんですか?
Swingのほうが異なるos間で動く可能性は高い?
2020/02/18(火) 08:37:15.21ID:Bhh8NQSMa
JavaFXはコミュニティに移管され事実上廃止
Swingも元々ほとんど使われてない
取って代わったも原因もクソも、そもそもJavaでGUIアプリなんて今も昔もはっきり言って誰もやっていない
2020/02/18(火) 10:23:36.60ID:B1+kI16CM
>>877
なぜなんですかね?
2020/02/18(火) 18:13:46.94ID:sX1qjJQt0
>>877
アメリカにはゲームが有ったらしい。
2020/02/18(火) 20:53:50.65ID:KdC1vrBfr
EclipseやIntelliJといったJava用IDEくらいしかJava製GUIアプリ思いつかん
881デフォルトの名無しさん (ワッチョイ 22ad-ievF [27.139.41.170])
垢版 |
2020/02/18(火) 23:03:56.74ID:LK2OtjFi0
Oracleのインストーラが裏に行っちゃっていつも困った
882デフォルトの名無しさん (アウアウウー Sa57-6k5J [106.132.129.246])
垢版 |
2020/02/19(水) 14:10:45.35ID:/R79ylGQa
>>878
歴史的な事情
2020/02/19(水) 14:14:18.61ID:1aV3jaSpM
ネイティブコンパイル出来るようになったからGUIアプリの需要結構あると思うけどね

C#のネイティブコンパイラまだ実用レベルにないし
2020/02/19(水) 14:37:29.31ID:4iImSo2cM
>>882
どういう歴史的事情なのですか?
2020/02/19(水) 14:38:16.24ID:4iImSo2cM
JavaのGUIが普及さなかったことに僕は納得できません
886デフォルトの名無しさん (アウアウウー Sa57-6k5J [106.132.129.246])
垢版 |
2020/02/19(水) 18:31:45.86ID:/R79ylGQa
>>884
Javaが広まり始めた90年代後半のPCは遅くてメモリも少なく、JavaVM起動直後の初期化でとても時間が掛かった。もちろん何もかもが遅く当然GUIも遅かった。
またJavaプログラム以外に別途JavaVMをインストールしておかねばならず初心者にはこれが壁になり普及を大きく妨げた。

ということでPCのデスクトップアプリケーションとしてのJavaは早々に死に、サーバーサイドのプログラムとして使われる事が多くなった。GUIの進化などするわけがない。

ただしAndroidによってクライアント側のGUIが救われたとは思える。主にスマホやタブレットになるが。
2020/02/19(水) 18:34:21.04ID:7ZNyFvkM0
swingがスレッドセーフじゃないと知らずに別スレッドに投げて処理してた。
TextFieldは大丈夫だった。comboboxがうまく動かなくて調べて初めて知った。
2020/02/19(水) 18:59:54.45ID:4iImSo2cM
>>886
納得しました
889デフォルトの名無しさん (JP 0Hdf-DPpo [153.143.139.144])
垢版 |
2020/02/20(木) 11:02:01.43ID:vFkAWpkQH
動画リンク
https://youtu.be/7DbdPKWhrpY
ファイル名
令和のコペルニクス.mp4

六角アミダって有りそうで無いので自作しました。
890デフォルトの名無しさん (ワッチョイ ef01-/D8n [111.90.14.57])
垢版 |
2020/02/20(木) 21:26:53.76ID:F4jYa5rU0
>>889
ソースコード見た
きれいなコードだった
891デフォルトの名無しさん (アウアウウー Sa57-6k5J [106.132.135.72])
垢版 |
2020/02/21(金) 12:50:11.92ID:TKnLlA6xa
そういえば Chromebook はAndroid用のプログラムも動くらしいな。
ということは何の苦もなくそのままの状態でJavaのGUIがPCで動くということでもあるな。
日本では Chromebook 売れてないけど。
2020/02/25(火) 02:33:13.31ID:zG0qK6rK0
>>877 Swing 便利だぞ
2020/03/15(日) 23:27:22.01ID:weQDtzSh0
List って使うのやめませんか?
見にくい
2020/03/16(月) 00:27:35.44ID:5NAQQQ5VM
何が見にくいのやら
2020/03/16(月) 09:57:38.95ID:bP3xNskMa
ArrayListのことを言っているのだとすれば
長さが可変の配列として使えるので「便利」
2020/03/17(火) 03:50:44.28
Eclipse使ってます。

色々なライブラリを導入した時は、Javadocもインストールして開発を捗らせてます。
あるライブラリ(jar)の日本語javadocがあるかどうかってどこでどうやって判断したら良いですかね?
それとも、Pleadesに標準装備されてるJavadoc以外は基本的に日本語Javadocは期待しない方がいいですかね
2020/03/17(火) 05:05:59.52
Eclipse使ってます。
昨日、pleiades-2019-12-ultimate-win-64bit-jre_20200213つまり最新版の全部込みを導入したんですが、
Javaソースコード編集中にマウスカーソルホバーでドキュメントがポップアップするやつですが、Filesクラスの説明が英語のままなんだが、何で?
ブラウザから
https://docs.oracle.com/javase/jp/13/docs/api/java.base/java/nio/file/Files.html
を見に行ったらちゃんと日本語だったんだが、Eclipse側でどういう設定にしたら良いの?
898デフォルトの名無しさん (アウアウウー Sa91-lxu7 [106.132.124.63])
垢版 |
2020/03/17(火) 17:37:29.70ID:4Vk7SyLRa
>>893
Kotlinだと同じListが見た目綺麗に書けるよ。
2020/03/18(水) 00:29:29.98ID:LQtyodHE0
Ruby on Rails なら、アプリの設定ファイルに、
I18n.locale = :ja とか、:en とか設定する

それで、自分で日本語用の翻訳ファイルを作る。
設定/locales/ja.yml

member: 会員情報
full_name: 氏名
email: メールアドレス

こういう感じ
2020/03/18(水) 09:49:51.69ID:0YH7V5fkM
>>899
早く氏ね
901デフォルトの名無しさん (ワッチョイ dfb0-y1YS [114.165.4.23])
垢版 |
2020/03/26(木) 18:37:22.31ID:/asxdJYI0
Javaで何かを作る過程を詳細に説明してる書籍ってないの?
902デフォルトの名無しさん (ワッチョイ 7fb9-B4Y8 [123.48.128.206])
垢版 |
2020/03/30(月) 05:29:57.97ID:vlbwcsc70
クラスローダー毎にstaticフィールドが異なるという話が本当か調べようと思って
実験コードを書いてたんだけど
異なるクラスローダーで同じクラスを読み取って
this.getClass().getClassLoader()ってやったら同じインスタンスが返ってきてしまって
異なるクラスローダーで同じクラスを実行するという事ができない。
誰かそういうコード書ける?
903デフォルトの名無しさん (ワッチョイ 7fb9-B4Y8 [123.48.128.206])
垢版 |
2020/03/30(月) 06:11:56.99ID:vlbwcsc70
できたわ
確かにクラスローダー毎に静的フィールド異なるな
このコード書いてみてクラスローダー周りが良く分かった
904デフォルトの名無しさん (ワッチョイ 1ab9-zfCe [123.48.128.206])
垢版 |
2020/04/09(木) 17:33:07.09ID:09nXStiY0
人いないな
人気言語Javaでこれか
2020/04/09(木) 17:37:43.96ID:OBt9P9fC0
俺もいる
2020/04/09(木) 17:38:30.10ID:RTR2QVCs0
>>904
内緒の話だけど、
2ch/5chは昔から5人位くらいががんばっていろんな板に書いているだけ。
2020/04/09(木) 18:01:19.95ID:pqMoXxyo0
>>901
掌田津耶乃だろ。
あらゆるゲームエンジン・フレームワークの本を書いてる!
まあ、Rails が一番有名だけど

Spring Framework 4 プログラミング入門、掌田津耶乃、2014
Spring Boot プログラミング入門、掌田津耶乃、2016

Node.js超入門、2017
PHPフレームワーク Laravel入門、2017
CakePHP 超入門、2018

Python Django 超入門、2018
Android/iOSクロス開発フレームワーク React Native入門、2018

Ruby on Rails 6 超入門、2020/2/21
2020/04/11(土) 00:40:17.85ID:mccf80iK0
>>907
死ね屑
909デフォルトの名無しさん (アウアウエー Sa52-tpvz [111.239.185.171])
垢版 |
2020/04/11(土) 12:22:10.65ID:xkRXqkmOa
下記図のように、複数の三角形を描きたいです。
List<Point> ls;に格納したPointはソートされていますが、数は増減したりし、
マウスの座標は動きます。
java.awt.GraphicsのfillPolygonを使って
for (int i = 0; i < ls.size(); i++) {
g.fillPolygon(new int[mx, ls.get(i).getX(), ls.get(i + 1).getX()],
new int[my, ls.get(i).getY(), ls.get(i + 1).getY()]
,3);
}
のように書けないか考えているのですが、何かいい方法はありますでしょうか?
2020/04/12(日) 21:06:14.95ID:PRMGLprP0
for (int i = 0; i < ls.size(); i++) {
g.fillPolygon(new int[]{mx, ls.get(i).getX(), ls.get(i + 1).getX()},
new int[]{my, ls.get(i).getY(), ls.get(i + 1).getY()}
,3);
}
こういうこと?
毎回newするのはイケてないので配列使いまわしたほうが良いよ
911デフォルトの名無しさん (ワッチョイ 5fb0-VPH2 [114.165.4.23])
垢版 |
2020/04/14(火) 16:10:32.31ID:Y5NGNrzR0
ラムダ式って匿名クラスの省略表記のことですか?
2020/04/15(水) 15:03:37.07ID:pEtkgVWE0
ラムダ式の式って、方程式の式?それともオギノ式の式?
便乗で、くだらない質問でスマソ
2020/04/15(水) 15:38:20.11ID:SJCxaNjJ0
lambda expression
equation
Ogino method

equationはmathematical expressionの一種だから方程式の式
2020/04/15(水) 15:44:38.42ID:SJCxaNjJ0
>>911
間違ってはいない
Javaでは匿名クラスの省略表記のような形でラムダ式が実現されてる
プログラミング言語一般で考えると第一級関数である方が本流で匿名クラスと等価とは限らない
2020/04/15(水) 15:49:51.69ID:pEtkgVWE0
>>913
なるほど。回答サンクス
916デフォルトの名無しさん (ワッチョイ 19b0-dkLK [114.165.4.23])
垢版 |
2020/04/15(水) 17:34:16.36ID:tqIYDceK0
>>914
ありがとうございます
Javaで何か作ってみたいのですがJavaでゲームを作ろうみたいなやつは古い本ばかりであまり参考になりそうにないですね
2020/04/15(水) 19:42:23.77ID:oc9v+Ado0
Java でゲームプログラミングと言えば、
YouTube で有名な、T Umezawa のシリーズだろ

最近のJava は、Ruby on Rails のコピーで、
Spring Boot で、web プログラミングだろ

まあ、すべてのフレームワークの基本である、
Rails をやっていないと、web プログラミングは難しい
918デフォルトの名無しさん (ワッチョイ 095f-NJmS [106.72.163.96 [上級国民]])
垢版 |
2020/04/16(木) 23:06:30.69ID:GRiepDCa0
知ったかぶり風
919デフォルトの名無しさん (ワッチョイ 095f-NJmS [106.72.163.96 [上級国民]])
垢版 |
2020/04/16(木) 23:07:20.97ID:GRiepDCa0
WebアプリケーションそのものはJavaではない。
920デフォルトの名無しさん (アウアウエー Sa23-qpj1 [111.239.187.174])
垢版 |
2020/04/18(土) 00:08:56.76ID:/cj6qYxIa
>>910
ありがとうございます。
出来ました。

1つ質問なのですが、
「毎回newするのはイケてないので配列使いまわしたほうが良いよ 」
ということはどういうことでしょうか?
921デフォルトの名無しさん (ワッチョイ 095f-NJmS [106.72.163.96 [上級国民]])
垢版 |
2020/04/18(土) 00:46:21.08ID:AvZMO+wH0
毎回、動的にメモリを確保する意味がわからない。
2020/04/18(土) 02:09:38.89ID:yOAua5ec0
ヴィジュアルスタジオコードで
新しいpackageを作るにはどうすればよいの?
923デフォルトの名無しさん (ワッチョイ 13ad-Ho7r [27.139.77.105])
垢版 |
2020/04/18(土) 13:43:12.82ID:VYQrLT4k0
>>920
その場合ループの中にあって同じ要素数の配列のためのメモリ確保と解放の処理が繰り返されるし、尚且つ一つのメソッドの引数で使って即不要になるので無駄な感じがする。
もちろんコンパイラがうまいこと最適化して最終的なコードに無駄はなくなる可能性はあるのだが、Javaの場合はそれが保証されていない。

ということでそういう場合はループの外で配列を new してから使う方が良い。
924デフォルトの名無しさん (ブーイモ MMeb-AGCG [163.49.209.169])
垢版 |
2020/04/19(日) 16:00:29.92ID:8cBnO1r8M
リソースと外部ファイルの違いを理解するところから。
Javaに限った話ではない。
925デフォルトの名無しさん (ワッチョイ 095f-Tn3+ [106.72.163.96 [上級国民]])
垢版 |
2020/04/19(日) 17:42:15.94ID:3CRJEjuQ0
年齢に関係なく物理メモリが無尽蔵にあると思っている人間は多いからね。
926デフォルトの名無しさん (アウアウエー Sa23-csEB [111.239.186.230])
垢版 |
2020/04/21(火) 20:33:38.51ID:8bW+Kt6Ua
>>923
ありがとうございます。
このような書き方でもいいのでしょうか?

public void func() {
int[] lx, ly = new int[3];
lx[0] = mx;
ly[0] = my;
for (int i = 0; i < ls.size(); i++) {
lx[1] = ls.get(i).getX();
lx[2] = ls.get(i + 1).getX();
ly[1] = ls.get(i).getY();
ly[2] = ls.get(i + 1).getY();

g.fillPolygon(lx, ly, 3);
}
}
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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