X



★★Java質問・相談スレッド183★★
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん (ワッチョイ 7f9f-FhGp)
垢版 |
2020/05/06(水) 22:12:08.99ID:q8N1X/Ij0
プログラミング言語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質問・相談スレッド182★★
https://mevius.5ch.net/test/read.cgi/tech/1542595026/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
0003デフォルトの名無しさん (ワッチョイ 8f01-Njp+)
垢版 |
2020/05/07(木) 14:51:38.51ID:vfnMEiuB0
0007◆QZaw55cn4c (ワッチョイ e798-EltK)
垢版 |
2020/05/07(木) 18:09:54.18ID:VS6AE9q50
>>5
別に深い意味はなく、単に標準 class library がそうなっている、というだけではないでしょうか。
自分だけで書いているのなら my_name でガンガン書いてもいいと思いますよ、要は他人との関係というだけで
0008デフォルトの名無しさん (ワッチョイ 4af8-KsCX)
垢版 |
2020/05/07(木) 19:40:03.07ID:RMklkh4T0
>>5
(オラクル公式)コーディング規約に従っておいたほうが他人が読みやすいからじゃね。
公式が推奨してない理由はわからんけど、何か理由を探すなら、
例えばpythonみたいにコーディング規約の中に🐫と🐍が混在するのを避けたかったのか、
cみたいに1行がやたら長くなるのを避けたかったのか。
00095 (ワッチョイ 731d-jW3u)
垢版 |
2020/05/07(木) 23:59:58.41ID:oPQE1Em40
>>6-8
そうだったんですね。
いろいろと知らなかったことを聞けました。
ありがとうございました。
0013デフォルトの名無しさん (ワッチョイ 26c7-AOPt)
垢版 |
2020/05/11(月) 11:22:22.25ID:5x1w4aVw0
processingでエラー部分のラインを知る事はできますでしょうか
0014デフォルトの名無しさん (ワッチョイ 26c7-AOPt)
垢版 |
2020/05/11(月) 11:23:31.03ID:5x1w4aVw0
失礼、解決しやした
0015デフォルトの名無しさん (ワッチョイ 73f1-rVcO)
垢版 |
2020/05/12(火) 13:08:18.16ID:4J1vnKbM0
'(シングルクウォーテーション)と"(ダブルクウォーテーション)の使い分けに悩みます。
悩みを消しこれだと自信を持って使う考え方はありますか?
どっちを使ってもいい場合とどちらか限定の使い方があるので気持ち悪いですw
0016デフォルトの名無しさん (ワッチョイ 73f1-rVcO)
垢版 |
2020/05/12(火) 13:09:03.21ID:4J1vnKbM0
どうやら間違えたようです
0018デフォルトの名無しさん (ワッチョイ 6de6-imz8)
垢版 |
2020/05/13(水) 22:31:27.44ID:PF9y92K50
Javaの初心者です。
javaって、画面は作れるし正規表現も使える最強の言語ですか?

ちょっとクラス名が長いかな?
0019デフォルトの名無しさん (ワッチョイ 6de6-imz8)
垢版 |
2020/05/13(水) 22:34:09.30ID:PF9y92K50
やり直し。

Javaを今から勉強しようと考えています。
画面も正規表現も使えるので、C++、Ruby,Pythonよりも
Javaを勉強しようと思っていますが、欠点はありますか?

作りたいのは、デスクトップアプリです。
0020デフォルトの名無しさん (ワッチョイ 4f9c-mVSN)
垢版 |
2020/05/13(水) 22:49:27.80ID:WA96+D6q0
Javaはいいぞぉー
JavaFXを使えばデスクトップアプリもちょちょいのちょいよ
Javaだけでサーバー、デスクトップ、モバイルすべての領域を抑えられるのが大きなメリット
0023デフォルトの名無しさん (ワッチョイ 311d-EoUu)
垢版 |
2020/05/14(木) 02:16:06.53ID:h5GztxHf0
質問です。
戻り値のあるメソッド内で例外処理を行いたいのですが、
以下の場合はどう対処すればよいでしょうか?

public static int method() {
__try {
____…
____return 10;
__} catch (Exception ex) {
____…
____System.exit(1);
__}
}

上記のように書くとreturnが無いというコンパイルエラーが出てしまうのですが、
例外をキャッチしたら処理を終了させたいのです。

どなたかよろしけれぼ助言をお願いします。
0024デフォルトの名無しさん (ワッチョイ f561-imz8)
垢版 |
2020/05/14(木) 07:02:14.59ID:E0jdtTYV0
returnを追加すればいいんだよ。
System.exit(1);
return;
(もしくはtryの外)
このreturnが実行されることはないけど、コンパイラはそこまでは見ない。
0025デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/14(木) 09:17:44.62ID:9P667XH00
>>23
RuntimeExceptionでラップしてスローすれば処理は終了するよ
0026デフォルトの名無しさん (ワッチョイ 4f9c-mVSN)
垢版 |
2020/05/14(木) 11:07:23.37ID:shSisxKh0
>>24
コンパイラは見ないかもしれないがIDEによっては未到達コードとしてエラーにするかも
以前、Visual Studioでコード書いてるときにExitProcess( )の後ろにコード書くと未到達コードの警告が出て感心した
ExitProcess APIの挙動まで考慮してるのか!と
0027デフォルトの名無しさん (ワッチョイ f561-imz8)
垢版 |
2020/05/14(木) 11:48:34.56ID:phBBauvk0
余計ないこと言わんでいい。
言語仕様とmess detectorを同列で語るな。
0028デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/14(木) 12:25:50.97ID:9P667XH00
言っても良いじゃん語っても良いじゃん
ここは何でも言って良い掲示板
多様性なくして進化はない
0029デフォルトの名無しさん (ワッチョイ cd01-uRPb)
垢版 |
2020/05/14(木) 12:58:05.29ID:QxbT6fEj0
MSのIDEを褒めるのはOSSに対して失礼だろ。
0032デフォルトの名無しさん (ワッチョイ cd01-uRPb)
垢版 |
2020/05/14(木) 13:45:48.43ID:QxbT6fEj0
礼儀を失ったものにプログラマの資格はない。
003323 (ワッチョイ 311d-EoUu)
垢版 |
2020/05/14(木) 14:16:27.13ID:h5GztxHf0
>>24
>>25
回答ありがとうございました。

言われたように、catchブロックの後に、finallyを用いず、
return文(この例ではreturn 10;)を持ってくることで、解決しました。

・例外が発生しない場合…catchブロックは実行されずreturn文へ
・発生した場合…catchブロックに処理が移りexitメソッドへ
0034デフォルトの名無しさん (ワッチョイ eb9f-SSwS)
垢版 |
2020/05/15(金) 00:00:31.45ID:V4mObZ3i0
未経験者です
Javaを勉強してみようと思うのですが開発環境?は何を使うのがオススメですか?
友人に聞いたらeclipseというものが良いと聞きました
本当でしょうか?
0035デフォルトの名無しさん (ワッチョイ 17f1-8kLo)
垢版 |
2020/05/15(金) 01:01:04.30ID:EjwoXCA/0
わたしも質問です
Javaは普通の人はEclipse一択というのは本当ですか?
いま流行りのVS codeというのもアリ?
0036デフォルトの名無しさん (テテンテンテン MM17-/iGY)
垢版 |
2020/05/15(金) 01:12:58.68ID:kU/eypzIM
それは一昔前orITドカタの話で、今はIntelliJが人気
コーディングの快適さだけで言えばVSCodeも優れていて、勉強や、他の言語をメインでやりながらたまにちょっとJavaも触るくらいならいいかもね
eclipseは強制されない限りは特に選ぶ理由はないと思うよ
0037デフォルトの名無しさん (ブーイモ MM81-mVSN)
垢版 |
2020/05/15(金) 01:21:58.35ID:HJBYv/YHM
俺は10年以上Eclipse使ってきたけど昨年IntelliJに乗り換えたよ
最近はJava自体も言語仕様が拡張されたりと進歩が早くなってる
IntelliJのほうがEclipseよりJava新機能への対応が早いのが素敵

Eclipseでコード補完してると匿名クラスになってしまう状況でも
IntelliJなら補完候補にラムダ式やメソッド参照も出てくるので自然とモダンなコードが書けるようになってく
Eclipseだとコード補完が弱く新構文を使うときは手書きが必要になることが多い
0040デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/15(金) 07:52:38.37ID:PTR7iuOb0
ナトービーンズも忘れないで!
0043デフォルトの名無しさん (ワッチョイ 4f9c-mVSN)
垢版 |
2020/05/15(金) 08:36:26.93ID:g5AKfHkb0
IntelliJはUltimateとCommunityがあってCommunityは無料
Webアプリ開発が少し制限されていてHTMLやCSSでのコード補完ができない
このあたりはVSCode併用でもいいと思う
Ultimate高いからねー
0045デフォルトの名無しさん (ワッチョイ e361-imz8)
垢版 |
2020/05/15(金) 09:32:02.01ID:Hn2/0FFl0
起動も遅いし起動してからもいちいち遅いのがeclipse
Netbeansの方がマシ。
0050デフォルトの名無しさん (ワッチョイ eb9f-XScl)
垢版 |
2020/05/15(金) 12:02:52.51ID:V4mObZ3i0
つまり人によって結構認識に相違があってこれが1番いい!これは絶対ダメなレベルで糞!というものは特に無い、裏を返せばどれを使っても学習は可能ということでしょうか?
0051デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/15(金) 12:13:02.18ID:PTR7iuOb0
友だちを信じてあげなよって思った
0052デフォルトの名無しさん (ワッチョイ eb46-gIXh)
垢版 |
2020/05/15(金) 13:47:31.02ID:v/gIfsRy0
嘘でも誇張でも糞でも何でもなく今までにエクリプソン以外のIDE使ってる現場に遭遇したことないからな
個人でインポテンツJ使うのは勝手だけど実際に仕事したときに
エクリプソン初めて使います状態だと軽く死ねるからな
0054デフォルトの名無しさん (ワッチョイ 4f9c-mVSN)
垢版 |
2020/05/15(金) 14:17:09.48ID:g5AKfHkb0
それはEclipseに依存しすぎなのでは?
以前、リポジトリにEclipseプロジェクトの完了ファイルまで入れてる人がいて驚いた
普通リポジトリにはIDE固有の管理ファイルなんて入れないよね
今ならGradleかMaven形式でリポジトリ入れよう

EclipseもIntelliJもGradle、Mavenをインポートできるので開発者ごとに好きなIDEを選べる
IDE固有のプロジェクトファイルをリポジトリ管理してるから全員ローカルのファイルパスも揃えておくとか怖すぎる
0060デフォルトの名無しさん (ワッチョイ 4f9c-mVSN)
垢版 |
2020/05/15(金) 14:55:20.59ID:g5AKfHkb0
>>58
いやそんな簡単な話ではない
ソースコード以外にも依存ライブラリの定義とか残しておきたいものはあるからあえてEclipseのプロジェクトファイルをリポジトリに入れてたっぽい
0061デフォルトの名無しさん (ワッチョイ eb9f-XScl)
垢版 |
2020/05/15(金) 16:00:13.30ID:V4mObZ3i0
ただJavaの文法等の勉強がしたいならeclipseでもintelliJでもVSCodeでもなんでもOK
仕事にするなら現場での活用シェア的にeclipseの使い方を学ぶのも込みでeclipse使用が無難ということでしょうか?
0062デフォルトの名無しさん (アウアウエー Sa93-gIXh)
垢版 |
2020/05/15(金) 18:27:02.24ID:WecV0Jtua
まあEclipse一択だろうな
ただプログラミングを始めるまでに
適切なバージョンのインストール、使い方を
一通りやるのが初心者には結構大変かも
web関係をやるんだとtomcatのバージョンの選択とか
いろいろある
0064デフォルトの名無しさん (スプッッ Sd13-XScl)
垢版 |
2020/05/15(金) 21:33:35.55ID:/xQynyl0d
レス見てるとお前らってつくづく無能なんだなと実感するわ
この手の質問者はどれがオススメなのかだけ教えて欲しいだけでなんなら自分の中でこれがいいかな?って言うのがあってそれの確認も込めた後押しを求めてるにすぎないんだわ
それに対して明らかに初心者には伝わらないような専門用語であれこれ会話し出すあたり相手の立場に立てない無能なんだろうなと
0066デフォルトの名無しさん (ワッチョイ 73a5-EyJl)
垢版 |
2020/05/15(金) 21:51:28.87ID:uPHiB+rf0
違うだろ何見てんだ
こいつが知りたいのは、友人の言ったことがウソかホントか判定してほしい、だ
結局他人なんて信用できてねーんだよ
そんな奴はどうだっていいじゃん
0067デフォルトの名無しさん (ワッチョイ 4f9c-mVSN)
垢版 |
2020/05/15(金) 21:58:35.10ID:g5AKfHkb0
近くに相談できる人がいるってのは大きな強みだからねえ
普通は友人がEclipse薦めてくれたらまずは使ってみるもんだ
質問者もちょっとアレなんだよな
念押し確認みたいなことばかりレスしてるし最初の一歩を踏み出す行動力がなさそう
0068デフォルトの名無しさん (スプッッ Sd13-XScl)
垢版 |
2020/05/15(金) 22:07:35.19ID:/xQynyl0d
だからその念押し求めてるやつにintelliJとeclipseのシェア具合やらGradleがどーたらtomcatがどーたらほざいてるのが論点ズレてるって言ってんだけどw
ガイジ集団すぎて草
0072デフォルトの名無しさん (ワッチョイ eb46-gIXh)
垢版 |
2020/05/15(金) 23:57:03.04ID:v/gIfsRy0
友人がエクリプソン薦める
このスレでも一部のインポテンツJ工作員を除いてほとんどがエクリプソンを薦める

質問者「ほんとにエクリプソン使っていいんですね?!使いますよ?!」

こんな低能質問者のキチガイっぷりを棚にあがて
「質問者が求めてることは〜(キリッ!!! 論点がずれてる!(キリッ!!!とかあ〜だこ〜だから〜(キリッ!!!!!」
とか馬鹿理論展開されておめーが一番のガイジなんだよ低能ゴミ
0073デフォルトの名無しさん (ワッチョイ eb46-gIXh)
垢版 |
2020/05/16(土) 00:03:09.29ID:Iv/V6qmt0
そもそも2回も3回も同じこと聞く暇あったら手動かせゴミって感じだしな
マジレスするとゴミ未満なんだからIDEどうこうとか関係ねーし
コンソールでハローワールド出してから質問しにこいアホ
0074デフォルトの名無しさん (スプッッ Sd13-XScl)
垢版 |
2020/05/16(土) 00:25:35.25ID:CDoqtrytd
痛いところ突かれたら質問者攻撃し出すとかほんとどうしようもねえなお前らw
ザ・社会の底辺って感じw
会社でも雑に扱われてる底辺なんやろなあ可哀想に
その鬱憤をこれから始めようとする初心者に当たり散らしてるとか救いようがなさすぎるわw
0076デフォルトの名無しさん (ワッチョイ 73a5-EyJl)
垢版 |
2020/05/16(土) 00:43:46.27ID:MbRt1bgi0
友人とやらが本当に実在する保証なんてないだろ
それにそもそも質問者が初心者とも限らない
そこまで考えられないのは流石にガキだろ
0078デフォルトの名無しさん (ワッチョイ a301-30Ky)
垢版 |
2020/05/16(土) 08:28:39.63ID:F27qhMVV0
質問には答えない他の回答者を叩くという立場は卑怯じゃないかな、こう答えるべきなんだという思いがあるなら自分でやるべきだよ、他の回答者に文句言うんじゃなくてね
0079デフォルトの名無しさん (ワッチョイ a301-30Ky)
垢版 |
2020/05/16(土) 08:57:29.45ID:F27qhMVV0
・質問者と質問を切り離す
・質問に対する議論を行う
・質問者がそこから得るものがあれば良いよね
ということだと思った

質問者の事を考えるべきだというのは気持ち悪い
0080デフォルトの名無しさん (ワッチョイ ef9f-J8BE)
垢版 |
2020/05/16(土) 10:48:50.51ID:QYTi0Yz90
>>61
EclipseがおすすめなのはSIerと呼ばれる会社に就職する場合だよ
SIerはプログラミング能力よりもサラリーマン能力の高い人向き
勉強したJavaスキルが仕事で末長く活かせる一方、新しい言語も新しいバージョンも使わせてもらえない

それ以外なら基本的にintellij ideaおすすめ
gradle+intellij ideaで環境設定してる人をそのまま真似るのがいい
オープンソースのライブラリを試したくなったとき、その組み合わせが一番楽
Eclipseだとプラグイン入れたり一手間加わる
Eclipseは昔の最強なので調べものをすると古くてもう使えない情報も多く出がち

VSCodeは汎用エディタだから特に思い入れがないなら今は強く奨めない
ある程度解ってる人向け
0081デフォルトの名無しさん (ブーイモ MM3f-mVSN)
垢版 |
2020/05/16(土) 12:05:57.87ID:O6BRVUnUM
>>80
一応、Eclipseを擁護しておくとEclipseにもBuildshipというGradleプラグインが標準装備されてるからEclipseもGradleとの親和性に不足はない

俺もIntelliJ IDEA派だけど、お金を掛けずにJavaでWebアプリ開発したい人にはEclipseを勧めることがある
IntelliJ IDEA Community EditionでHTML/CSS書くのは辛いし他エディタ併用も初心者には手間になるからね
0087デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/16(土) 14:00:56.24ID:F27qhMVV0
センスおじさん現る
0092デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/16(土) 20:35:31.49ID:F27qhMVV0
仕事でもプライベートでもEclipse使ってるけど
IntelliJ使ってみたら快適すぎたw
0093デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/16(土) 20:36:22.69ID:F27qhMVV0
Eclipseはゼロから作り直したが良いレベル
0095デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/16(土) 22:00:23.49ID:F27qhMVV0
>>94
使ったみたらわかるよ
わからないんだったら君はEclipseにわかだね
0096デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/16(土) 22:01:24.82ID:F27qhMVV0
ラムダ式書きまくってみるとわかる
0099デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/16(土) 22:11:33.54ID:F27qhMVV0
>>98
ですです!
ラムダ式が導入されたのはJava 8だから6年前なんだけど
Eclipseはいまだにラムダ式の中でコード補完ができないことがあって
そのためにラムダ式ではなくて匿名クラスで書くことある
この面倒臭さ何?って思う
0100デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/16(土) 22:13:15.40ID:F27qhMVV0
>>97
金欲しいけどね、そんな簡単に金もらえたら苦労しないよ
たぶん僕は君よりEclipseでコード書いてると思うよ
だから君よりもEclipseの限界を知ってる
0102デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/16(土) 22:24:17.59ID:F27qhMVV0
>>101
君の方が根拠ないと思うけどなあ
僕はEclipseのここがダメだというところを具体的に示したよ

君はそうじゃないことを具体的に言ってないし僕が金もらってることの
根拠もないじゃない、根拠なしマウントマンは君の方だよ
君は具体的に説明できるほどEclipseを使い込んでない
0103デフォルトの名無しさん (ワッチョイ a301-VqWV)
垢版 |
2020/05/16(土) 22:25:30.68ID:F27qhMVV0
恋と愛の違いみたいだよね
君はEclipseに恋してるだけ
僕はEclipseを愛してる
恋は幻想で、愛は現実なんだよ
0106デフォルトの名無しさん (ワッチョイ 979c-ebFg)
垢版 |
2020/05/26(火) 12:34:11.05ID:ZAA3Wx9Q0
送信タイムアウトは設定できない
なぜなら受信とは異なり送信操作はブロッキングが発生しないからだ
送信要求はTCP/IPスタックの送信キューに書き込まれたら復帰する
つまりパケットが相手ノードに到達しなくても完了する操作なの
だからタイムアウトがない
0107デフォルトの名無しさん (ワッチョイ 9a7e-9InA)
垢版 |
2020/05/26(火) 13:00:56.26ID:OWDboe8a0
>>106
SO_SNDBUFの設定値を越えて送信しようとすると
ブロッキングI/Oならブロッキングが発生するよ。
Javaに限らずソケットの基本。
SNDBUFやRCVBUFによるブロッキングの時間はsetsockoptで
SO_TIMEOUTを指定することで制御可能。

ただ、バッファ要因ではないTCPのハーフクローズからのFIN消失による
F待ちのようなものには効かない。
0117デフォルトの名無しさん (ワッチョイ 93b9-4KSb)
垢版 |
2020/05/27(水) 16:59:30.94ID:jU0q0Aes0
javaのJITは結果が分かり切った同じ計算を省略してくれますか?

例えば
public int f(int x, int y){
return x+y;//本当はもっと重たい処理
}
//様々な場所でこの参照透過なメソッドが同じ引数で呼び出される
f(1,2);
f(1,2);
f(1,2);
0118デフォルトの名無しさん (テテンテンテン MM4b-5vhd)
垢版 |
2020/05/27(水) 17:15:04.98ID:7/RVgntXM
実行される回数の多いコードについてはJITがインライン展開してくれることはある
ただ一般に、君のようなプログラマが速度への影響を気にするポイントってのは、ほとんどの場合「全く」実効的なパフォーマンスには影響がないんだ
もちろんJITを作った賢い人達もそれをよく知っていて、最適化されるための閾値は結構大きい
0122デフォルトの名無しさん (ワッチョイ abba-THcr)
垢版 |
2020/05/27(水) 23:18:40.52ID:yd99JbW00
アプリケーションが強制終了します。
exceptionでcatchしようとしても当然捕まらず、
throwableでcatchしようとしても捕まりません。
原因分からず困ってるのですが、何とか調べられませんか?
300万ループくらいのうちの、240万くらい(毎回ばらばら)で死にます。
outofmemoryerrorとかかなと思ったのですが、
それならthrowableでcatchできますよね?
0123デフォルトの名無しさん (ワッチョイ db01-5TGn)
垢版 |
2020/05/27(水) 23:34:30.12ID:6hr6rh6U0
>>122
Exceptionのインスタンス作れないくらいメモリが足りないとか
Linuxで動かしてるならOOM Killerにやられちゃってるとか
メモリの使用量監視すれば何が原因かの切り分けはできるんじゃなかろうかと

調査方法としてはシャットダウンフックでスタックトレースを出力してみるとか
0124デフォルトの名無しさん (ワッチョイ db01-5TGn)
垢版 |
2020/05/27(水) 23:37:17.05ID:6hr6rh6U0
メモリ使用量の調査はメモリが逼迫してるときはGCが頻発するんでGCログを出力してみたりとか
jstatコマンドを使用したりとか
0125デフォルトの名無しさん (ワッチョイ 93a5-bhdz)
垢版 |
2020/05/27(水) 23:48:49.03ID:X1ls3/710
>>117
メモ化すればいいんじゃね?
たぶんキーがx,yのHashMap程度でいいだろきっと
0126デフォルトの名無しさん (ワッチョイ 2b2c-HO12)
垢版 |
2020/05/28(木) 00:26:16.97ID:MEC8WK3T0
>>122
Kill シグナルみたいな、終了処理ができない強制終了とか、

非同期処理とか、UI/非UI スレッドなど、
コンテキスト・文脈が異なるスレッドのエラーだから、catch できないとか
0129デフォルトの名無しさん (ワッチョイ abba-THcr)
垢版 |
2020/05/28(木) 22:58:53.26ID:QenXyt800
122です。
何とかしてメモリを増やしてやってみたら、動きました。
ご考察の通り、インスタンス生成出来ないくらいメモリ足りなかったのかと思います。
何でもcatch出来ると思ったらダメですね。
ありがとうございました。
0131デフォルトの名無しさん (ワッチョイ 93b9-YHRm)
垢版 |
2020/05/29(金) 23:42:35.03ID:+ftl216y0
javafxをandroidで動かす場合、fxmlで作ってないと無理とかある?
コード直書きでも動かせるんだろうか?
0132デフォルトの名無しさん (ワッチョイ 93ad-moxv)
垢版 |
2020/05/30(土) 03:04:13.01ID:k7WMMDxu0
java.io.File クラスでファイルが存在するパーティションの容量や空きが分かるのは良いのだが、
パーティションがいくつあるのかとか、それぞれのパーティションへのパスは分からないのだろうか?

OS固有の外部コマンド動かせば分かるのは分かっているが、Javaの標準的なライブラリでそういうのはない?
0134デフォルトの名無しさん (ワッチョイ db01-5TGn)
垢版 |
2020/05/30(土) 10:59:16.25ID:cB0ZATSK0
>>132
FileSystems.getDefault().getRootDirectories().forEach(System.out::println);
0135デフォルトの名無しさん (アウアウウー Sac5-5vhd)
垢版 |
2020/05/30(土) 11:34:40.47ID:XyaO0zHAa
>>131
JavaFXの時点でアクティブユーザーは日本で100人いるかどうか
更にAndroidでとなると国内では君1人かもしれない
日本で質問して答えが返ってくることを期待してるなら今すぐやめてXamarinにでも乗り換えた方がいい
0136デフォルトの名無しさん (ワッチョイ 93bd-GNjF)
垢版 |
2020/05/30(土) 15:44:03.52ID:UQB2jEvO0
質問なんですが、Progateでjavaの勉強をしていて、乗り物をある人間が所有している状況をプログラムで表現しようとあるのですが、 なぜ画像の上から2行の作業をする必要があるのでしょうか?
よろしければアドバイスお願いいたします🙇♂
https://i.imgur.com/4xKKsB6.jpg
0137デフォルトの名無しさん (ワッチョイ db01-5TGn)
垢版 |
2020/05/30(土) 15:52:55.78ID:cB0ZATSK0
>>136
そうしないとフィールドにインスタンスを持てないからでしょ
0138デフォルトの名無しさん (ワッチョイ d3f8-UxUG)
垢版 |
2020/05/30(土) 15:59:59.71ID:lGnwlNHH0
自分の車に連絡先を書いとくようなもんだろ。
もしも連絡先が書いてなかったら(車クラスが人クラスの変数を持ってなかったら)、
車を受け取った人はオーナーを調べるのに別の手段を用意しないといけない。

逆にオーナーを調べる別の手段を用意できるなら、他の解もある。
例えばハンバープレートからオーナーを引ける顧客管理表をもってるとか。
0139デフォルトの名無しさん (ワッチョイ 13bd-GNjF)
垢版 |
2020/05/30(土) 16:30:59.18ID:C8U1l3hK0
>>138
わかりやすいアドバイスありがとうございます!
中々オブジェクト指向はイメージがしにくかったので助かりました😂
0140デフォルトの名無しさん (ワッチョイ 93ad-atjb)
垢版 |
2020/05/30(土) 16:45:06.33ID:k7WMMDxu0
>>134
おお。そっちにあったのか。ありがとう。

ググってもググっても見つからなかったのだが、単に需要があまりなくて書いてる人が少なかっただけってことだな。多分。
0141デフォルトの名無しさん (ワッチョイ 93a5-bhdz)
垢版 |
2020/05/30(土) 17:35:15.28ID:/dD/Ru8o0
>>136
画像の上から2行って
public static int count = 0;
じゃねえの?

それともVehicleのcolorとnameか?
クルマの色と、nameはなんだろな
ヴィッツとかヤリスとか入るのか

それとも所有者が「轟天号」とかカッコイイ名前を付けるのか
船だったら明らかにナントカ丸って命名してるだろう
乗り物なんだから船でもクルマでも馬でもいいんだから馬の一つや二つ命名するじゃん
0142デフォルトの名無しさん (ワッチョイ d99f-9gVz)
垢版 |
2020/05/30(土) 23:09:02.57ID:Hw7cZasS0
Progateでプログミングの勉強始める奴って総じてアホだと思ってたけどまさにそれを証明するかのような質問やなw
センスないからやめた方がいいよ
勉強に費やす時間でシコってる方がまだ有意義なレベルで才能ないわお前
0143デフォルトの名無しさん (ワッチョイ 5146-moxv)
垢版 |
2020/05/30(土) 23:31:37.22ID:usMGBs1d0
まず質問がどこの事言ってるかもわからんし
このわからない状態で勝手にエスパーして答えてる馬鹿も酷い
質問スレはこういう馬鹿スパイラルを起こす馬鹿が絶対いなくならんのよな
ホント見ててイライラしかしないわ
0146デフォルトの名無しさん (ワッチョイ a19f-67EO)
垢版 |
2020/05/31(日) 10:38:45.49ID:hm54d19c0
イライラするだけのスレだと感じたらもう見るのは辞めようと思うのが普通の人
歪んだ正義感でバカどもを正してやるのが義務と信じ誰一人喜ばない努力を続けるのは不幸に囚われた人
一番辛いのは実社会で誰にも相手にされずネットで罵詈雑言を吐くことで人との繋がりを保とうとしているケース
もしそうなら社会的支援に頼った方がいい
0148デフォルトの名無しさん (ワッチョイ 93a5-bhdz)
垢版 |
2020/05/31(日) 14:03:13.88ID:27DcnLkI0
いっぱいいるもクソも>>146自身が「歪んだ正義感でバカどもを正してやる」と自己紹介
それにすら気付けないんだからホントは誰が病院行くべきか分かるだろ
0149デフォルトの名無しさん (ワッチョイ db01-5TGn)
垢版 |
2020/05/31(日) 14:14:58.42ID:0XZA+K880
じゃあみんなで病院行こう
0150デフォルトの名無しさん (ワッチョイ a19f-67EO)
垢版 |
2020/05/31(日) 14:21:23.86ID:hm54d19c0
◯◯ちゃんも同じようなことしてるんだからボク悪くないもん
ってのは論理的思考ができない人が陥りがちな詭弁
その理論ではせいぜい俺も>>148も同類でみんなで病院という結論にしかならない
質問・相談スレに粘着してググレカスを言い続けるやつの抱える闇が軽くなる訳ではない
0151デフォルトの名無しさん (ワッチョイ 93a5-bhdz)
垢版 |
2020/05/31(日) 14:36:50.28ID:27DcnLkI0
ワッチョイの見方すら知らん奴にどうこう言われても・・・
0153デフォルトの名無しさん (ワッチョイ 5146-moxv)
垢版 |
2020/05/31(日) 19:27:01.13ID:Su8vmIub0
このプリン連呼してるキチガイは
別の初心者スレで自分がボコボコに叩かれてからずっと根にもって喚いてんだよね
こんなスレまで追っかけてきて荒らしてんだから低能が変にプライドもって拗らせるとこうなる良い例
普通にスルー推奨
0156デフォルトの名無しさん (アウアウエー Sa23-VESM)
垢版 |
2020/06/01(月) 14:57:52.48ID:+e7s6jLCa
Java 3Dの質問は何処ですれば良いですか?
0158デフォルトの名無しさん (ワッチョイ 93da-VESM)
垢版 |
2020/06/01(月) 16:34:09.57ID:+IZY5kIK0
>>157
ありがとうございました
0160デフォルトの名無しさん (ワッチョイ 93b9-YHRm)
垢版 |
2020/06/01(月) 21:17:29.15ID:FNfjc0Rl0
lwjglかjavafxを検討してみては
0161デフォルトの名無しさん (アウアウエー Sa23-VESM)
垢版 |
2020/06/01(月) 21:43:37.51ID:r418buFea
>>159
ありがとうございます、初心で VRMLをテキストエディタで書くところから初めてたので
VRMLファイルをそのまま流用しようと思い
Java 3Dでvrml97.jarのローダーを使いました
背景にwrlファイルを読み込み
アバターはobjローダーで簡易な3Dワールド構築がしたかったのですが、JavaからOpenGLの
使い方がよく分からず、難しいです。
0162デフォルトの名無しさん (アウアウエー Sa23-VESM)
垢版 |
2020/06/01(月) 21:53:11.54ID:r418buFea
>>160
ありがとうございます調べたところ
ライトウェイトゲームライブラリーというものだそうですが、
アマゾンなどではLWJGLの書籍が見当たりません、日本のサイトも見当たらなくて
使い方などの分かりやすいサイトなどがあればよろしくお願いします。
JavaFXはウィンドウデザイン向けでしょうか?
グラフィック部が別スレッドらしいですね
これも開発が外部に移ってるみたいですが
簡単に 3Dも出来るのでしょうか?
lwjglとjavafxを混成できるのかも
wrlファイルやobjファイルが読み込み出来るのかもよくわかりません
0163デフォルトの名無しさん (ワッチョイ a11d-Jcj6)
垢版 |
2020/06/01(月) 23:36:29.73ID:5NIHbXOS0
国連から表彰されても引退なの?個人アプリ開発の世界は残酷だ。
https://appmarketinglabo.net/leorivas-interview/
「約3年で1,180万円を稼いだ、いま広告収入は月100万くらい」地味だけど寿命は長い「電卓アプリ」実際に効果があった5つの施策。
https://appmarketinglabo.net/calculator-1100man/
パチスロ生活しながらアプリ開発で1,500万円稼いだ「ダメ人間」が語る、ソシャゲとパチンコ
パチスロの客層融合説と、電卓アプリ作者が語る3年の収益推移
https://appmarketinglabo.net/pachislotapp-damehuman/
1日に3〜5万円だったアプリ収益が「プロモーションで大化け」数百万円を稼げるように。
AppLovinが語る「ハイパーカジュアル」の可能性と成功のコツ。
https://appmarketinglabo.net/hypercasual-applovin/
なぜそこにアラブ人。スマホゲームに飢えた「アラブの課金王」国境を越える。そこに
「存在しないはずのアラブ人」が欧米のアプリストアをつかう真実。
https://appmarketinglabo.net/arab-mobilegame/
約4年でアプリ売上1億円。副業からスタートしたアプリ開発会社「AppStair」が
730万ダウンロードを達成し、メタップスに買収されるまで。
https://appmarketinglabo.net/appstair-ma/
0165デフォルトの名無しさん (ワッチョイ 93b9-YHRm)
垢版 |
2020/06/02(火) 18:53:55.11ID:GZsMfx7t0
java 15でzgcが実験段階終わるけど
java 11もアップデートされたりするんだろうか?
LTSだしそうして欲しいんだが
0167デフォルトの名無しさん (ワッチョイ 4ab9-B5RW)
垢版 |
2020/06/03(水) 00:29:19.46ID:RhIm5p+E0
jdk11のログみてたらshenandoahのbackportというコミット履歴があったから
たぶんshenandoahはjava15相当のが来てる
0168デフォルトの名無しさん (ワッチョイ 4ab9-B5RW)
垢版 |
2020/06/03(水) 00:37:35.43ID:RhIm5p+E0
jdk8にもbackportされてるけど一部のJDKのみ採用してるようだ
0169デフォルトの名無しさん (ワッチョイ 15f1-GwrY)
垢版 |
2020/06/03(水) 10:19:52.02ID:/BExPaqE0
メソッドのオーバーロードで
あるものは返り値返さずあるものは返り値返す
ということはできますか?
0170デフォルトの名無しさん (ワッチョイ 3e01-cXqP)
垢版 |
2020/06/03(水) 10:23:18.67ID:KDlF+5RH0
>>169
戻り値だけを変えてオーバーロードすることはできないっす
0171デフォルトの名無しさん (ワッチョイ 3e01-cXqP)
垢版 |
2020/06/03(水) 10:25:00.69ID:KDlF+5RH0
引数の数や引数の型を変えないとオーバーロードはできない
0172デフォルトの名無しさん (ワッチョイ 15f1-GwrY)
垢版 |
2020/06/03(水) 11:00:19.11ID:/BExPaqE0
もちろん引数の数/種類は変える
0173デフォルトの名無しさん (ワッチョイ a99c-m9VU)
垢版 |
2020/06/03(水) 11:14:28.19ID:mZPhGC330
戻り値を変えるといっても狭める(親クラスの戻り値クラスのサブクラスにする)ことしかできないんじゃなかった?
まったく関係ない戻り値型にできたら多態性が失われる
0174デフォルトの名無しさん (ワッチョイ 3e01-cXqP)
垢版 |
2020/06/03(水) 11:26:57.04ID:KDlF+5RH0
>>173
そりはオーバーライドではないかと
0177デフォルトの名無しさん (ワッチョイ ca61-jG9V)
垢版 |
2020/06/03(水) 19:48:10.86ID:dW+jBiMP0
むしろオーバーロードは戻り値を揃えるために使うものと考える。
一番分かり易い例がファクトリ。
0178デフォルトの名無しさん (ワッチョイ 3e01-cXqP)
垢版 |
2020/06/03(水) 20:29:44.15ID:KDlF+5RH0
同じ名前のメソッドを定義できますよってだけで戻り値は好きにしたら良いよ
同じになることもあれば異なることもある
0181デフォルトの名無しさん (ワッチョイ 3e01-cXqP)
垢版 |
2020/06/03(水) 23:19:32.10ID:KDlF+5RH0
max関数はジェネリクスでは難しいかも
ジェネリクスが使えることもあるだろうけど
0182デフォルトの名無しさん (ワッチョイ 3e01-cXqP)
垢版 |
2020/06/03(水) 23:20:51.83ID:KDlF+5RH0
浮動小数点数と整数は比較の仕方から違ったりするから
処理を共通化できるならジェネリクスでそうじゃないならオーバーロードで
というわけ方になるのだろうね
0187デフォルトの名無しさん (ワッチョイ 5d9f-/HF9)
垢版 |
2020/06/04(木) 03:24:33.64ID:eWLlw/BB0
>>180
java.lang.Mathが実際maxを始めとしてそういうオーバーロードだらけだよ
既に言われている実装の違いはJDKのソースで見れる
演算やロガーみたいに激しく高頻度で呼ばれるメソッドの場合、ボクシングのコストを嫌って各種プリミティブのオーバーロードを揃えることが多い
0194デフォルトの名無しさん (ワッチョイ 5dda-INBt)
垢版 |
2020/06/07(日) 12:43:10.81ID:/m0mrLuk0
Java経験者と未経験者とではKotlinへの学習効率が大きく異なると聞いたことがあるのですが、
Kotlin経験者も、Kotlin未経験者に比べるとJavaの学習効率は高くなりますか?
0195デフォルトの名無しさん (ワッチョイ 86b0-FXWY)
垢版 |
2020/06/07(日) 13:10:05.32ID:rGpM3+QL0
未経験でJavaエンジニア目指す場合じゃんけんゲームみたいなしょぼい作品はgitにのせない方がいいの?
0198デフォルトの名無しさん (ワッチョイ 86b0-FXWY)
垢版 |
2020/06/07(日) 17:42:24.39ID:rGpM3+QL0
>>197
履歴書に書く場合は?
0199デフォルトの名無しさん (ワッチョイ a99c-RoQW)
垢版 |
2020/06/07(日) 17:49:14.45ID:h3PveQsa0
どうだろうなあ
自己PR用のポートフォリオとして使うならくだらないものは載せないほうがいいと俺は思うが
実際はgithubアカウント持ってるエンジニア自体が少ないからね

「なんだこの程度のものしか作ったことがないのか」
「少なくともgithubアカウント作るくらいの意欲はあるしgitも使えるんだな」

良くとられらるか悪くとられるかは相手次第だろうか
0200デフォルトの名無しさん (ワッチョイ a99c-RoQW)
垢版 |
2020/06/07(日) 17:52:28.43ID:h3PveQsa0
あとはgithubとSNSの区別が付いてない馬鹿もいる
「こいつを雇ったらうちの資産をネットにアップして晒されるかも」みたいなトンチンカンな判断する人もいるよ
だから俺はネットでの活動をリアル社会で繋がりのある人に話したり自慢したりはしない
0201デフォルトの名無しさん (ワッチョイ 86b0-FXWY)
垢版 |
2020/06/07(日) 20:26:38.88ID:rGpM3+QL0
実務未経験でも掲示板とかTwitterの模倣サイトみたいなの作らないとプラス評価にはならないのかな
0208デフォルトの名無しさん (ワッチョイ 179c-NuIp)
垢版 |
2020/06/21(日) 11:16:36.86ID:Cvmphw/V0
遅くないよ
何百万回も実行したら数ミリ秒の差は出るかもしれないというレベル
ちなみに例外が遅いと言われていたのは例外機構ではなく例外インスタンスの生成な
例外インスタンスが保持するスタックトレースを作るのが重いと言われていた(昔の話)
0211デフォルトの名無しさん (ワッチョイ 7601-KnoZ)
垢版 |
2020/06/21(日) 13:57:12.31ID:DdBoZ7r/0
paizaだと例外の方が時間がかかったけどローカルでJITコンパイル切って実行したら逆の結果になった
これはわからんな
https://paiza.io/projects/IcXMFru7MVKOOVFx7YMzSQ
0213デフォルトの名無しさん (ワッチョイ 4e63-1/Nl)
垢版 |
2020/06/21(日) 16:23:59.80ID:yJkQ5Ayp0
ありがとうございます

ただ例外が起こらんときのことが知りたくて
戻り値方式だと
関数呼び出すたびに呼び出し元で毎回エラー判定いるから

これみたいに、エラー起こりまくるときに例外使うと遅くなるだろうけど
エラーがめったに起きないとき
戻り値方式で毎回エラー判定処理入ったら
その判定分通常処理が遅くなったりしないかと
0217デフォルトの名無しさん (ワッチョイ b39f-WeSd)
垢版 |
2020/06/21(日) 17:25:06.59ID:IV+d62C50
遅い遅くないって、10億回繰り返した後の100ミリ秒の差に一喜一憂してるの?
冗談やネタじゃなくて?

なお例外が出る場合は10万や100万throwくらいのオーダーで有意差が出る模様
0223デフォルトの名無しさん (ブーイモ MM26-Tffq)
垢版 |
2020/06/23(火) 16:15:08.83ID:4QDBM1xJM
CDIでAmbiguousResolutionExceptionが発生した場合ってどう対処すればいいんですか?
同じインターフェースを実装するクラスが2つあって、片方は自作のクラスなんですが、もう片方はライブラリに組み込まれていてコードの修正ができません
クラスのクライアント側もライブラリ内なので手出しできません
自作のクラスを優先して使わせたいのですが可能でしょうか?
0224デフォルトの名無しさん (ワッチョイ 0ab9-ERT+)
垢版 |
2020/07/03(金) 04:18:25.71ID:K25ENh2J0
jdkの内部実装を学ぼうと思ってるんだけど
良いサイトとか本ある?
0226デフォルトの名無しさん (ワッチョイ a3f1-Ji0+)
垢版 |
2020/07/03(金) 09:32:21.44ID:lDWf2b6S0
外クラスから内クラスのprivateメンバが見れるのはなぜですか?

超論理的思考によるとどう考えても理論に欠陥があり矛盾してる。
みなさんはこのJavaにおけるクラス体系をおかしいと思いながら割りきって使ってるのですよね?
0228デフォルトの名無しさん (ワッチョイ a3f1-Ji0+)
垢版 |
2020/07/03(金) 10:36:03.96ID:lDWf2b6S0
ところで継承したサブクラスをインスタンス化したときは
メモリ上にはスーパークラスの情報も存在するのですか?

だってsuper.xxx、とスーパークラスのオーバーライド前のフィールドやメソッドも使えるはずだし。
0230デフォルトの名無しさん (ブーイモ MMc7-VDpN)
垢版 |
2020/07/03(金) 20:22:27.88ID:kzJb1xMFM
private可視性といえばインスタンスを跨げるのも違和感あるよな
MyClassにprivateフィールドnameがあるとき
MyClassのインスタンスaからMyClass bのnameが見れちゃう

人間にはチンポついてるじゃん
でもaさんがbさんのチンポ見れちゃまずいでしょ
aさんが見れるのは自分のチンポだけってほうが自然じゃない?
0232デフォルトの名無しさん (ワッチョイ 8e02-CmLz)
垢版 |
2020/07/03(金) 22:31:34.26ID:22sFhG6i0
最新のpleiadesでjframeをやろうと思ったらエラー出ました
openJDKだからだと思うんですが何をしたらswingなどが
使えるようになりますか?
system.out.printlnはうまくいったのでコードの書き方には
問題はないはずです
0234デフォルトの名無しさん (ワッチョイ bb9f-NeN4)
垢版 |
2020/07/04(土) 09:54:16.99ID:l/UGkzzj0
Javaのprivateは同じソースファイルからなら見えるの意だな
ひとつのソースは巨大すぎず、また同じ人が上から下まで書くだろうという前提に立つと、アクセスしたくなければ当人が判断してアクセスしなければ良い
コントロール下にあるなら自由にさせろという、合目的的な線引きの仕方
小さく完結してるならprivateというコンパイラ支援を受けるメリットが少ない
一方、後から手を入れる必要があるときは勝手にpublicに書き換えられたりgetterを増やされたりまで注意が必要
それはもはやスコープ指定の仕事じゃない
0236デフォルトの名無しさん (アウアウエー Sa82-h0J+)
垢版 |
2020/07/04(土) 14:22:07.70ID:Em2AcreDa
>>232
>>1
質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。
0237232 (ワッチョイ 8e02-CmLz)
垢版 |
2020/07/04(土) 22:12:26.95ID:ihmD8+jR0
エラーメッセージくらい書けばよかっですね
すみません
プロジェクトを一旦削除して
バージョン(1.8)のjdkに変えたら動きました
0239デフォルトの名無しさん (ワッチョイ 5301-chZG)
垢版 |
2020/07/05(日) 22:14:28.48ID:UlkHztnN0
Javaを始めたばかりの初心者です
Androidアプリを開発してるのですが
このような動作は出来るのでしょうか?

動作A(UIの読み込み&操作等)
for (int i = 0; i < forNum; i++) {
動作B
インターバル(数秒)
}

の用にしたいのですが、
インターバルにSystemClock.sleep()を使うと動作A(UIの動作)まで止まってしまいます。
どうにか動作Bのみを数秒待機させる方法はないのでしょうか?
0244デフォルトの名無しさん (ワッチョイ 0ab9-ERT+)
垢版 |
2020/07/06(月) 04:05:20.60ID:As2E4FLw0
実行時環境がv6対応してるか調べる方法ある?
0246デフォルトの名無しさん (ワッチョイ 0ab9-ERT+)
垢版 |
2020/07/06(月) 15:49:03.47ID:As2E4FLw0
v6はIPv6だぞ
0248デフォルトの名無しさん (ワッチョイ 0601-bAMZ)
垢版 |
2020/07/06(月) 16:32:34.97ID:ODctk1XU0
v3は仮面ライダーだからな
0250デフォルトの名無しさん (ブーイモ MMef-Ji0+)
垢版 |
2020/07/06(月) 17:30:52.11ID:K0spL5LtM
10base-Tの10はテン
100base-Tの100はヒャクだぞ
0252デフォルトの名無しさん (アウアウウー Sacf-Im8i)
垢版 |
2020/07/07(火) 18:45:15.60ID:e1WbjzO/a
2位じゃいけないんですか?
0253デフォルトの名無しさん (ブーイモ MMb6-Ji0+)
垢版 |
2020/07/07(火) 20:10:02.00ID:zJDYRW2WM
>>252
ダメだ。
アルツハイマーでもこれくらい分かる。
0254デフォルトの名無しさん (ワッチョイ ad10-7Vnq)
垢版 |
2020/07/08(水) 13:42:39.75ID:i1rS618L0
数独のプログラムで3×3マスの部分で被りがないか判定するにはどうすればいいの?
0256デフォルトの名無しさん (ワッチョイ ad10-7Vnq)
垢版 |
2020/07/08(水) 14:27:54.31ID:i1rS618L0
そのやり方だと9つのブロックに名前つけて9通りのfor文を用意する必要があると思うんだけどもう少しスマートなやり方ないかな?
0263デフォルトの名無しさん (ワッチョイ f505-3Ggx)
垢版 |
2020/07/08(水) 18:10:39.89ID:CKA99sQd0
mementoというAndroidのDBを使っています
主キー(プライマリキー)の設定がないようで
javaで書くしかないようです

過去のレコードで最大の物に+1ずつしていく、というのはどう書くのですか?
0265デフォルトの名無しさん (ワッチョイ ad10-7Vnq)
垢版 |
2020/07/08(水) 20:41:07.61ID:i1rS618L0
俺のレベルだと
switch(row){
case 0: case 1: case 2:
blockrowstart =0;
break;
case 3: case 4: case 5:
blockrowstart=3;
break;
って分けていく案を出すのでやっとだった
Set<Integer>でどうやればいいのかわからない
というか未経験でIT業界入って1ヶ月もたたないうちに挫折しそう
0270デフォルトの名無しさん (ワッチョイ 4dad-7rnT)
垢版 |
2020/07/08(水) 23:06:54.42ID:lQhyGabo0
ビンソート使って
int[] b=new int[10];
for(int i=0; i<a.length; i++){
for(int j=0; j<a[i].length;j++){
b[a[i][j]]++;
}}
ってやれば、この後b[1-10]のチェックをしても、配列アクセス18回位で重複検出できる。
0272デフォルトの名無しさん (ワッチョイ 0501-oJH7)
垢版 |
2020/07/09(木) 00:39:58.51ID:TcuT23Ts0
ラムダ式とか考えたやつは死ねばいいと思うんですけど
使ってる方たちはやっぱ難しい構文使えてるおれカッコイとか思ってるんでしょうか?
0273◆QZaw55cn4c (BR 0H43-UJ32)
垢版 |
2020/07/09(木) 00:59:38.62ID:Ij/UNV0zH
>>272
軽薄なラムダ野郎かそうでないかを識別する良い質問がある
「ラムダ式で不動点コンビネータを記述できる者のみラムダ式を使うがよい」
0275デフォルトの名無しさん (ワッチョイ ad9c-cqpZ)
垢版 |
2020/07/09(木) 01:40:29.67ID:CLykJNt50
俺もラムダ式あまり好きじゃないなあ
書くのは楽なんだよIDEの補完機能があるから
だけど後で見直したときに変数名だけで型が分からないからコード読みにくいなあって思う
変数名にマウスカーソル合わせればIDEの機能で型がポップアップ表示されるけどね
コード読みながらそんなことしててバカらしくなっちゃった
0276デフォルトの名無しさん (ワッチョイ 2361-kYYI)
垢版 |
2020/07/09(木) 08:09:25.29ID:FmMAEwI70
>>274
ただのStrategyの話で、それがラムダかどうかなんてどうでもいいことじゃん。
0277デフォルトの名無しさん (ワッチョイ 75f1-+b0N)
垢版 |
2020/07/09(木) 08:33:03.78ID:q8rS1ZvE0
オギノ式がいいよ
0280デフォルトの名無しさん (ワッチョイ a59f-n9Xx)
垢版 |
2020/07/09(木) 10:40:53.67ID:S3cMKryX0
VBおじさんやCOBOLおじさんがオブジェクト志向なんて分かりにくくなるだけだ必要ない!って怒ってるのと同じ構図?
卵から孵ったときに最初に何を見たかだけの域を出ないなら微妙な話
ストラテジーのような頻出のデザインパターンがスッキリ簡潔に書けるだけでも嬉しいじゃん
慣れてないとStreamでビックリしちゃうし読むときにペースが落ちると思うけど、それでもifとforで書いてあるよりステップ数も圧縮されてるんだから別に損してないと思うぞ
0281デフォルトの名無しさん (テテンテンテン MMcb-lc7T)
垢版 |
2020/07/09(木) 11:23:26.08ID:djKNGpt1M
実は根深い問題なんだよなあ
高階関数を活用したプログラミングというのは、企業のプログラミング研修やIPAの試験など、現在の日本のプログラミング教育システムでは基本的に全く出てこない概念なんだよ
VBおじさんやCOBOLおじさんがまともな構造化プログラミングやオブジェクト指向プログラミングができないのは「不勉強な馬鹿」で片付くのだが、
高階関数がわからないのはそもそも教育システムに無いからという大義名分があって、仕方のないことだとも言えてしまう
0283デフォルトの名無しさん (ワッチョイ a301-knaX)
垢版 |
2020/07/09(木) 14:30:09.56ID:ivivNmNg0
必要に応じて高階関数を自作できたり
関数を受け渡ししたりできるかどうかって
言語に関係なく脱初心者の重要な試金石

JavaはまあアレとしてCなら関数ポインタ、C#ならDelegate
使ったことないけどCOBOLにも関数ポインタはあるらしい
0285デフォルトの名無しさん (ワッチョイ 23f4-2648)
垢版 |
2020/07/09(木) 20:32:12.34ID:0iPEFqzS0
>>281
いやー、高階関数の概念無いと
プログラム作るの大変だと思うよ。

でも、言語によっては無理なのかなぁ?
私が知る限りでは・・・それができない言語を知らない。
私が知らないだけかもしれないけど
0287デフォルトの名無しさん (ワッチョイ a301-knaX)
垢版 |
2020/07/09(木) 22:16:54.28ID:ivivNmNg0
Java8以降は簡潔に高階関数を表現できるようになっただけで
Java7以前のJava脳でもインターフェース使って高階関数と同等のことが実現できるから
それを理解して使いこなせてる人はだいたい初心者の域は脱してる

抽象度が1つ上がるからJSみたいな言語を使ってたとしても初心者のうちは少し難しい
0288デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/09(木) 23:07:43.23ID:SphXxSit0
代入文に伴ってコードが呼び出される事なんてないよね?
代入文実行直後にコードが呼び出されてるようで、そのコードで例外が出て、
例外発生個所の周辺ではブレークポイントが無視される。
スタックトレース出るけど代入文から呼び出されてる事が書かれてないし

これはEclipseのバグか?
0290デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/09(木) 23:53:28.56ID:SphXxSit0
v1 = v2

みたいな単純な行で、実行直後に別のメソッドが呼び出されて例外が出る。
ステップ実行で確認したし間違いない。
その例外のスタックトレースもおかしいし
クラスファイルが破損してるとかそういうバグが出ているとしか思えない
0291デフォルトの名無しさん (ワッチョイ a51d-6PjY)
垢版 |
2020/07/09(木) 23:55:21.72ID:ubmexFKg0
大学で学ぶ物理を板書1枚にまとめてみた
https://www.youtube.com/watch?v=naBcXoq4aOI
物理の研究分野を板書1枚にまとめてみた
https://www.youtube.com/watch?v=4W-pWuXUaZQ
理学部と工学部の違いとは?
https://www.youtube.com/watch?v=eJH4nKU6mJA&;t=80s
大学と大学院の違い
https://www.youtube.com/watch?v=xBKAEvTegN8
高校と大学の積分は決定的に違う?微分積分学の基本定理は実はすごい!
https://www.youtube.com/watch?v=V9i_zlbssbs&;t=475s
数学にはどんな研究分野がある?数学の世界地図を一枚に描いて紹介してみた!
https://www.youtube.com/watch?v=fK_JGVti5y8
0292デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/09(木) 23:59:32.26ID:SphXxSit0
ブレークポイントの全除去したら治った
0293デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/10(金) 00:45:17.87ID:u+BaPk670
たぶんどっかのブレークポイントプロパティにコードが書かれてて
バグでそのブレークポイントの実行箇所がずれてたとかか
0295デフォルトの名無しさん (アウアウウー Sa09-Sz3q)
垢版 |
2020/07/10(金) 11:43:39.60ID:g0Z+ZvbJa
>>272
そりゃ後から拡張して使えるようにした言語だから余計にそう感じるだけでは?

ということで Kotlin もよろしく。
0296デフォルトの名無しさん (ワッチョイ 75f1-+b0N)
垢版 |
2020/07/10(金) 12:54:26.19ID:91NkPSzZ0
Kotlinとか考えたやつは死ねばいいと思うんですけど
使ってる方たちはやっぱ新しい言語使えてるおれカッコイとか思ってるんでしょうか?

せっかくAndroid開発にJavaをマスターしつつあるのに、また変な言語が主流になったらその学習コストがでかすぎる。
0297デフォルトの名無しさん (ワッチョイ 75f1-+b0N)
垢版 |
2020/07/10(金) 12:57:33.74ID:91NkPSzZ0
PHPでいいのにアホが考えたRuby
WindowsでいいのにMAC
Wordでいいのに一太郎
AndroidでいいのにiPhone
かな入力でいいのに打つ回数が無駄に多いローマ字入力

アホのせいで頭のいい人が無駄にコストを背負う。
0299デフォルトの名無しさん (アウアウエー Sa13-c9t6)
垢版 |
2020/07/10(金) 13:15:44.14ID:/uHfdbTha
初めてのアンスタからKotlinを始めて3日目くらいから、コレは楽チンて感じだったよ、
型宣言の書き方は慣れないと気持ち悪いけど
各種言語良いとこどりして記述の簡略化この流れいいんじゃないかな?
本格的に仕事で使えないだろうけど
Kotlinが主流になって欲しい今日で6日目
0301デフォルトの名無しさん (アウアウエー Sa13-c9t6)
垢版 |
2020/07/10(金) 15:57:17.85ID:/uHfdbTha
>>300
自分も初めて6日目の初心者なので
何処で読めなくって詰まるのかが知りたいです
何処でつまらなくなりますか?
0302デフォルトの名無しさん (アウアウエー Sa13-c9t6)
垢版 |
2020/07/10(金) 16:09:39.76ID:/uHfdbTha
Kotlinにおけるクラス、プロパティ、コンストラクタ、データクラス、シングルトン (1/3)
https://www.atmarkit.co.jp/ait/spv/1804/02/news009.html
このページくらいの内容なら分かるけど次の


SwiftとKotlinの構文比較 (2) 〜クラス、列挙体、構造体、プロトコル、拡張
https://qiita.com/y-some/items/286fb15fe8e0bd9aa5ef

こんなページになると何やってんのかさっぱりちんぷんかんぷんです。
0303デフォルトの名無しさん (スッップ Sd43-itP7)
垢版 |
2020/07/10(金) 17:22:34.79ID:iDoO0/qnd
結局後ほどの保守運用を考えるとScalaとかKotlinを使うぐらいならJavaかGoが良いよねってなる

ScalaとKotlinはとにかく使える人が少ないから誰も改修できない属人化うんこシステムになりがち
0305デフォルトの名無しさん (アウアウウー Sa09-Sz3q)
垢版 |
2020/07/10(金) 19:34:19.21ID:b3SP6ORDa
Androidでよく使われるのならじわじわとKotlinプログラマー人口は増え続けるということだよ。

まあでも大多数の他の人と同じのを使いたいみたいなのはいかにもヘタレで保守的な日本人って感じだよね。寄らば大樹の陰って感じか。そして思い切り牛後となると。
「俺が徹底的に使いまくって世界中に広めてやる」ぐらいの勢いのあるやつは居ないのか?居ないんだろうな。まあ日本に居なくても他の国にいるから良いんだけども。
0307デフォルトの名無しさん (ワッチョイ 75f1-+b0N)
垢版 |
2020/07/10(金) 21:44:32.50ID:91NkPSzZ0
>>305
アホ。
わたしはすでにマルチプログラミング言語sのマスターだから
これ以上中途半端な言語が増えてよけいで無駄な学習コストを消費したくないのだよ。
0309デフォルトの名無しさん (オッペケ Sra1-n9Xx)
垢版 |
2020/07/10(金) 22:57:36.23ID:bjfcLwYTr
Java経験者がKotlin覚えるのなんてコストのうちに入るのかな
言語仕様を覚えるコストは微々たるもので、大変なのは膨大なクラスライブラリ群を覚えることだと思うんだが
英語の基本文法は簡単に覚えられるけど単語の学習は果てしないような話で
0310デフォルトの名無しさん (ワッチョイ 0501-oJH7)
垢版 |
2020/07/10(金) 23:04:29.08ID:qU/GKQX50
ラムダ式は多分消滅する
数年後に迷惑な過去の遺産になるよ

システム統括する開発するメンテする運用する立場からしたらこんな迷惑なもの無い
理解しにくく可読性も良くない、一部のPGだけがマスターしてる構文なんて
そんなもの使わないでくれって思うよ
0311デフォルトの名無しさん (ワッチョイ 0501-oJH7)
垢版 |
2020/07/10(金) 23:08:50.14ID:qU/GKQX50
JSで画面まわりのみで使うならともかく
ビジネスロジックでそんなもの、冗談でしょ
0312デフォルトの名無しさん (ワッチョイ 9b01-2pUR)
垢版 |
2020/07/10(金) 23:10:48.83ID:FovnwiSG0
簡単なロジックを簡単に書けるってだけじゃん
マスターもクソもないよw
どんだけレベル低い会社なんよ
0313デフォルトの名無しさん (ワッチョイ 9b01-2pUR)
垢版 |
2020/07/10(金) 23:11:48.42ID:FovnwiSG0
中高生でも一度書いたら覚えるっしょ
0314デフォルトの名無しさん (ワッチョイ 0501-oJH7)
垢版 |
2020/07/10(金) 23:34:40.49ID:qU/GKQX50
カッコイイなあ
さぞかし優秀なエンジニアが揃ってる会社なんだな
是非日本のIT業界を背負って立って貰いたい
いい会社に在籍できて羨ましいなあ
0316デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 05:42:45.20ID:1/ChDc2A0
ラムダ式の必要性はコーディングしてたら分かる。
10台の頃の俺でもクロージャの必要性を認識してたからな。
それが分からんってどんなレベルなんだと。

一方でちゃんとエラーメッセージが出ない場合があるのでまだ周辺ツールが成熟してるとは言えない。
あとシリアライズ・デシリアライズもしないほうがいいからコーディング上の注意点は多い。

なんにせよラムダ式は必須だし、ほとんどの主流言語で採用されつつあるんで
Cでもクロージャ書くライブラリあるし
自然消滅なんてとんでもない。

Javaの流行推移をみるとJava8実装後に急激に利用者が増えてる。
ラムダ式実装でようやくまともな言語になったという評価を得て、かろうじて今も生き残ってるんだ。
ラムダ式が無かったら見捨てられてただろう。
0317デフォルトの名無しさん (ワッチョイ 23ad-Sz3q)
垢版 |
2020/07/11(土) 05:47:23.88ID:feKeXoV60
>>310
わかりました。つまりあなたはこう言いたいのですね。

「ぼくには難しくてわからない」
0319デフォルトの名無しさん (ワッチョイ 657f-A8da)
垢版 |
2020/07/11(土) 08:44:14.62ID:2Ww+ohHV0
>>310
大抵のプログラミング言語には備わってる機能なのに今更消えるわけ無いだろ。無学さを恥ろ
javaの言語仕様はモダン言語の中で最もシンプルかつ洗練されたうちの一つなのにそれすら満足に扱えないとか低能にも程がある
0320デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 09:10:35.32ID:1/ChDc2A0
でも最近Javaも無駄に複雑化してきてると思う

varも良くない。Recordもまあ要らんかな。
var v = method(); これだとvの型がぱっと見分からん
JPMSも面倒なだけで何の役にも立たないし
日付クラスは無駄にごちゃついてるし
SwingとJavaFXでGUIフレームワーク乱立感あるし
これが最もシンプルだっていうなら、簡単に超えれる
0322デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 09:42:43.51ID:1/ChDc2A0
var i = 0;

これはint iなのかInteger iなのかどっち?まあintか?
でも複雑な型推論が行われてIntegerとして使われてる部分があればIntegerなのか?
var使わんからわからん。
0323デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 09:58:31.48ID:1/ChDc2A0
やっぱvarあかんな

var i =0;//int
var i2 = getIntegerMethod();//Integer

var i =0;//int
i = getIntegerMethod();//int
0324デフォルトの名無しさん (ワッチョイ ad10-7Vnq)
垢版 |
2020/07/11(土) 10:19:49.17ID:wrcFXZLd0
なんでSEは黒本があるのにEEの試験対策本はないの?
0326デフォルトの名無しさん (ワッチョイ 0501-oJH7)
垢版 |
2020/07/11(土) 10:39:52.89ID:5w5oz0EX0
>>317
JSのラムダもJava8のラムダも何年か前に使ったがJavaのラムダの部分は忘れた
調べ直す気は無い

>>319
Java自体はレガシー言語だ。何が無学さを恥ろだ
よく恥ずかしげもなくそんなこと言えるな
0329デフォルトの名無しさん (ワッチョイ 9b01-2pUR)
垢版 |
2020/07/11(土) 13:21:26.18ID:JFnadz6+0
>>323
変数の型は変わらないってだけじゃん
0331デフォルトの名無しさん (ワッチョイ 2361-kYYI)
垢版 |
2020/07/11(土) 13:37:16.46ID:hkUZi6650
このくらいはいちいち確認しなくてもわからないとダメだろ。
0335デフォルトの名無しさん (ワッチョイ 23ad-ucCN)
垢版 |
2020/07/11(土) 16:49:21.41ID:feKeXoV60
kotlin もよろしく
0336デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 21:43:25.58ID:1/ChDc2A0
>>330
int

だからちょっとコードをいじって+1とリテラルを足したり
intを返すメソッドgetIntMethod()の返値を足したりすると
varの型が変わっちゃうわけ。

じゃあ、それを回避するためにどうするの?とか
varのせいで余計なテクニックが生じてくる。

これってボクシングによるコーディング上のメリットを潰してない?
0337デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 21:50:53.29ID:1/ChDc2A0
俺はvarが無い言語を使いたい。kotlinもvarに汚染されてる
0338デフォルトの名無しさん (ワッチョイ 2361-kYYI)
垢版 |
2020/07/11(土) 21:51:57.43ID:hkUZi6650
そういう時は明示すればいいだけじゃん。
何言ってんだか。
0340デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 21:58:52.20ID:1/ChDc2A0
いつもワンパターンでやった方がコーディングが楽だから
varが常に使える汎用的なものでないなら
「この場合は先々でこういうコードになるからvar、この場合は型明示」
というような設計判断が必要になる。そういうのがコーディングを遅くする。
最初から型明示で一本化しておけば問題に遭遇しない。
0343デフォルトの名無しさん (ワッチョイ a59f-n9Xx)
垢版 |
2020/07/11(土) 22:15:31.12ID:qPEuH3iw0
Javaはローカル変数まわりでしかvarを使えない
だからあまり混乱しない
しかし素人集団が作る業務システムだと5000行のメソッドとかザラにある
そういう害悪から徹底排除していきたい
0345デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 22:20:29.88ID:1/ChDc2A0
>>344
int iと型明示されてたらそうだろうけど
var iだとどっちになってるのか分かりにくいという事
そもそもプリミティブだけじゃなくて
var i = method();
これは常に分かりにくい。IDEが無いと読めない
でもgithubとかgitクライアントとかでIDEの支援なしでコードを読む場合がある

varの良さは「何も考えずとりあえず型をvarにする」
という意識上のコストカットにあるはずだけど
そんなに楽に使えるものじゃない(使用場面を吟味しないといけない)という印象
0350デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 22:44:57.86ID:1/ChDc2A0
Employee employee←こういう無意味な変数名は避けたい

Employee updated = EmployeeStore.get(employeeId);
//updatedの更新処理
...
EmployeeStore.update(updated);

これで概ね意味のある名前になってる。
0351デフォルトの名無しさん (ワッチョイ 2361-kYYI)
垢版 |
2020/07/11(土) 23:00:05.80ID:hkUZi6650
>「何も考えずとりあえず型をvarにする」
何言ってんだか。
0353デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 23:22:53.17ID:1/ChDc2A0
規約で決めとけばいいというけど
Java案件においてvarが使われてるか、Javaプログラマーがvarに慣れてるか
ばらばらになっていくからJavaエコシステムの悪化になる。

varを使って何かメリットがあるならまだいいけど、何もないように思う。
「冗長な記述がなくなって可読性が上がる」という主張が全く分からない。
0354デフォルトの名無しさん (ワッチョイ 9b01-2pUR)
垢版 |
2020/07/11(土) 23:25:39.92ID:JFnadz6+0
var使いまくってるけどわかりにくくて困ったことはあまりない
コードがスッキリして見通しは良くなった気がする
var便利だよ、みんなも使いまくったら良いと思う
0355デフォルトの名無しさん (ワッチョイ 9b01-2pUR)
垢版 |
2020/07/11(土) 23:27:41.07ID:JFnadz6+0
varは簡単なコードが簡単に見えるっていうのが良いよね

大したことやってないのに長々とクラス名が書かれてあたかもすごいこと
やってるように見えるのはイヤ

クラス名を省略したらわかりにくくなるしvarは便利
0357デフォルトの名無しさん (ワッチョイ ad9c-cqpZ)
垢版 |
2020/07/11(土) 23:41:47.31ID:TUFHIPon0
ソースコードにvarが残らないほうが良いよな
型推論って静的に型が決まるじゃん
ならIDEでvarって入力したらそのときに型を解決してEmployeeになれば十分だったんじゃないか?
入力の手間も省ける
結果のソースコードの可読性も損なわれない

IDEが当たり前の世界なんだから、言語としてコードを短く書けるということにこだわり過ぎないで欲しいな
0358デフォルトの名無しさん (ワッチョイ 9b01-2pUR)
垢版 |
2020/07/11(土) 23:42:21.27ID:JFnadz6+0
認知バイアスの一種に、人間が新しい事実に直面したとき、それまで持っていた考えに固執してその考えを徐々にしか変化させられない
というのがあるからねー、それを乗り越えるのは実際に体験してみることなんじゃなかろうかと
新しいことを取り入れることをやめると時代に取り残されるだけだから
新しいものは使いまくってみるのがいんじゃないかなーと思う
0359デフォルトの名無しさん (ワッチョイ 23b9-Bqa1)
垢版 |
2020/07/11(土) 23:59:22.06ID:1/ChDc2A0
>>357
それは新しい発明だな
メソッドを書きあげたらメタコンパイルで
varを使ったコードからvar無しコードに変換する
良いアイデアかもしれん
ある種のメタコンパイルを駆使する事でプログラミング言語の在り方が変わるかもしれん
0361デフォルトの名無しさん (ワッチョイ ad61-kYYI)
垢版 |
2020/07/12(日) 08:43:00.59ID:8yPf51M+0
Scalaとかkotlinの場合は、valファーストみたいな考え方が定着しているが、
varしかないJavaだと定着しにくいわな。
0362デフォルトの名無しさん (ワッチョイ 23ad-skOr)
垢版 |
2020/07/13(月) 04:28:00.53ID:9EBd4T6S0
KotlinのvalはJavaだとfinal付けた宣言と同じかな?
0363デフォルトの名無しさん (アウアウエー Sa13-c9t6)
垢版 |
2020/07/13(月) 07:54:31.81ID:V+zIL/Eba
のとおり
0364デフォルトの名無しさん (ワッチョイ b110-9pMF)
垢版 |
2020/07/18(土) 22:38:25.37ID:wxt1SBQN0
Javaエンジニアの転職用のおすすめの成果物ってなに?
0378デフォルトの名無しさん (ワッチョイ ee02-PDgx)
垢版 |
2020/07/19(日) 12:59:10.23ID:OVvPblbF0
お前らリアルでもこんな程度の低い喧嘩するの?
0380デフォルトの名無しさん (ワッチョイ 5ab9-sTnA)
垢版 |
2020/07/21(火) 05:48:51.37ID:3tWEjcVj0
句読点で個人を識別できる、特定の人物の異なるIDのコメントを特定できていると思うのは病気
0382デフォルトの名無しさん (ワッチョイ 5ab9-sTnA)
垢版 |
2020/07/21(火) 07:19:22.60ID:3tWEjcVj0
俺の書き込みいくつか挙げてみて
0383デフォルトの名無しさん (ワッチョイ 5ab9-sTnA)
垢版 |
2020/07/21(火) 07:34:54.50ID:3tWEjcVj0
>荒らしだろ
>よぉキチガイ

こういう発言は確実にコミュニティにとって害悪だから辞めて欲しい
0385デフォルトの名無しさん (ワッチョイ ee01-XySS)
垢版 |
2020/07/21(火) 16:58:54.04ID:NpytZS490
>>380
そこでAIですよ
0386デフォルトの名無しさん (ワッチョイ 1348-3Rf8)
垢版 |
2020/07/23(木) 14:26:07.44ID:EM/Nepkm0
androidでトランプのゲームを実装していて行き詰まりました
イベントループがあってupdate(delta)とdraw(Canvas,delta)を各オブジェクトが呼ぶような実装です
flashを参考にtweenerというクラスを作って
オブジェクトをtweenerに渡すとアニメーションができるようにしました
しかし、tweenerにもupdateとdrawを呼ばないといけないため
元のオブジェクトとtweenerと両方がupdateとdrawを呼ぶため
オブジェクトが二重に表示されてしまうクソ設計でした
一般にアニメーションをクラス化するのにどういう方法がありますか
並行して処理したり逐次で処理したりが選べるといいのですが
自分の頭では限界です
0388デフォルトの名無しさん (アウアウエー Sae3-Ar/h)
垢版 |
2020/07/23(木) 17:11:16.56ID:otdPxTIka
>>386
AndroidはJavaのようでJavaじゃないので別のAndroidスレへ行きましょう
そしてデバッガーを使って処理を追いかけましょう
0390デフォルトの名無しさん (アウアウエー Sae3-Ar/h)
垢版 |
2020/07/23(木) 17:38:59.17ID:otdPxTIka
ええ、ご自身で原因と対処法を書かれていますのでこちらでそれ以上わかる事はございません
>>386
【原因】クソ設計でした
【対処法】
並行して処理したり逐次で処理したりが選べるといい
0392デフォルトの名無しさん (アウアウエー Sae3-Ar/h)
垢版 |
2020/07/23(木) 19:12:38.23ID:otdPxTIka
[タイトルで検索]🔍
0396デフォルトの名無しさん (アウアウエー Sae3-Ar/h)
垢版 |
2020/07/25(土) 12:43:18.35ID:S/hmdynOa
Android Studio だと Hot Code Swappingって言うんじゃ・・
replaceは置き換えでクライアントとサーバー間
Swapは交換でエディタとバーチャルデバイス間
どっちも似たようなもんだけど
0397デフォルトの名無しさん (ワッチョイ fb01-hxF4)
垢版 |
2020/07/25(土) 12:44:14.28ID:dauW6/ij0
いやらしい
0398デフォルトの名無しさん (ワッチョイ b99f-mQqQ)
垢版 |
2020/07/25(土) 12:49:10.35ID:y1ZBGfCN0
VSC? Android? 何の話だ?
リモートデバッグもホットコード置換もJVMの古典的な機能だろ
リモートデバックでは置換はできないはず、大概別VMだしロードされた位置にあるclassやjar自身が変わらないし、置換できる方が不自然だと思う
0399デフォルトの名無しさん (ワッチョイ 2b02-et1k)
垢版 |
2020/07/25(土) 13:19:07.58ID:nH9VX+zP0
>>394
Eclipseの話です
リモードなのでプログラムは別のマシンで起動してます
サーバーはGlassFish

>>396
すいませんJava経験浅いので色々種類があるのはシリませんでした
デバッグ中にブレークポイントで止めてメソッドの中身を修正するとすぐに反映される機能のことです

>>398
逆に言うとclassがどこに有るかわかればイケるということでしょうか?
例えば「ソース変更検知→build→rsyncでサーバーにclassを送信」する自作スクリプトとか
0402デフォルトの名無しさん (ワッチョイ 2b02-et1k)
垢版 |
2020/07/25(土) 17:09:07.27ID:nH9VX+zP0
>>401
情報どうもです
gradle-eclipse-compiler-pluginとやらを試しましたがビルドエラー(´・ω・`)まだ先は長そうです
ちな>>399で思いついたsshでclassを送信するアイデアは効果なし
単純にclassを置き換えるだけでは意味がないみたいですね…
0403デフォルトの名無しさん (ワッチョイ 5110-pSrU)
垢版 |
2020/07/28(火) 19:48:48.58ID:QYiJZeTL0
index.xhtmlとbeanを連携させてからもう一つ別のxhtmlファイル作って別のbeanクラスと連携させることってできないの?
0406デフォルトの名無しさん (ワッチョイ a602-n2SH)
垢版 |
2020/07/29(水) 21:54:50.30ID:XHby/Lgy0
Java EE 8
データソースを動的に決定したいんですけどなんかいい方法ないですかね?
より具体的に言うとHost、Port、User、Passwordを環境変数で指定したいです

@DataSourceDefinition ← ソースに定数ベタ書きは論外...
web.xml ← ビルド時差し替えは出来るけど実行時に変更できないのでダメ...
0407デフォルトの名無しさん (ワッチョイ 4161-INOy)
垢版 |
2020/07/30(木) 10:29:37.00ID:pj6/aIsg0
System.getenv()
0412デフォルトの名無しさん (ワッチョイ cdf1-SFhf)
垢版 |
2020/07/31(金) 15:32:38.50ID:POkjU+r00
Eclipseはじめたばかりですが
背景色を黒系にしたいのだけど
そのための設定はどこをいじればいいでしょうか?
0415デフォルトの名無しさん (ブーイモ MMbe-SFhf)
垢版 |
2020/08/01(土) 08:50:37.12ID:hCmXm23hM
いかなる点でatomよりVSCodeが優れていると聞いて
もうじきatomは消滅すると聞いた。
0416デフォルトの名無しさん (ワッチョイ faa5-JYmi)
垢版 |
2020/08/01(土) 09:21:36.80ID:notoYvF50
M$がグループごと買収して作ったのがVSCodeじゃなかったっけ
0420デフォルトの名無しさん (ワッチョイ fa55-xE3T)
垢版 |
2020/08/02(日) 12:36:44.63ID:hOgQnHyE0
Robert Segewick and Kevin Wayne著『Algorithms 4th Edition』では、ジェネリクスを使って、スタックを実装しています。

文字列のスタックの配列を作る時には、以下のように書かなければならないと書いてあります。

Stack<String>[] a = (Stack<String>[]) new Stack[N];

一方、Itemが型パラメータであるとき、Item型の配列を作るには、以下のように書かなければならないと書いてあります。

a = (Item[]) new Object[cap];

自然に、なぜ以下のように書かないのかという疑問が思い浮かびます。

Stack<String>[] a = (Stack<String>[]) new Object[N];

こう書かない理由が以下のように書かれていますが、これが何を言っているのか分かりません。

You might have expected to use Object instead of Stack. When using generics, Java checks for type safety at compile time,
but throws away that information at run time, so it is left with Stack<Object>[] or just Stack[], for short, which we must cast
to Stack<String>[].

何を言っているのでしょうか?
0421デフォルトの名無しさん (ワッチョイ fa55-xE3T)
垢版 |
2020/08/02(日) 12:39:17.55ID:hOgQnHyE0
特に、

When using generics, Java checks for type safety at compile time,but throws away that information at run time,

の意味が分かりません。
0422デフォルトの名無しさん (ワッチョイ fa55-xE3T)
垢版 |
2020/08/02(日) 12:41:56.68ID:hOgQnHyE0
ちなみに、

type safetyとは何か知りませんし、
at compile timeとat run timeというタイミングの違いによってどういう影響があるのかも分かりません。
0423デフォルトの名無しさん (JP 0H62-3SEW)
垢版 |
2020/08/02(日) 12:48:47.81ID:H7597eyiH
学術の巨大掲示板群 - アルファ・ラボ ttp://x0000.net
数学 物理学 化学 生物学 天文学 地理地学
IT 電子 工学 言語学 国語 方言 など

simulationライブラリで純粋な関数式プログラミングをする
UIライブラリ (C#, 2D) を作ったよ
連続と離散を統一した!
4Dエンジン
matrixのライブラリ
ある強力なFor関数
SQLライブラリ

☆ VM + ASM を書いた (C#, DX) * x86 ではない!
ttp://up.x0000.net/files/TSimulang.zip
☆ malloc / free を実装してみた (C#)
ttp://up.x0000.net/files/TMallocTest.zip
0425デフォルトの名無しさん (ワッチョイ ce01-Nz8z)
垢版 |
2020/08/02(日) 13:47:16.78ID:HWQVFDgv0
>>424
ジェネリクスの配列は作れないんよ

>>420
> 自然に、なぜ以下のように書かないのかという疑問が思い浮かびます。
> Stack<String>[] a = (Stack<String>[]) new Object[N];

実行できないからでしょ
Objectの配列をStackの配列にキャストできないから
実行時にObjectになるのはジェネリクスの型であってStackではないです
0426デフォルトの名無しさん (ワッチョイ ce01-Nz8z)
垢版 |
2020/08/02(日) 13:53:28.09ID:HWQVFDgv0
> When using generics, Java checks for type safety at compile time,but throws away that information at run time,

ジェネリクスを使うとき
Javaはコンパイル時に型の安全性をチェックします
しかし、実行時にはその情報を破棄します

と、いうことなので
ジェネリクスの型が正しいかはコンパイル時にチェックされて
実行時にはジェネリクスの型の情報はありませんよという
ジェネリクスの型のイレイジャを説明してるんだと思います
0428デフォルトの名無しさん (ワッチョイ fa55-xE3T)
垢版 |
2020/08/02(日) 14:07:22.33ID:hOgQnHyE0
>>426
型の安全性とは、=の左右の型が一致しているということですか?
実行時には、型が安全であったかどうかという情報を破棄するというのは、どうしてそうするのですか?
なぜ、コンパイル時に行う処理と実行時に行う処理に分けるのですか?
0429デフォルトの名無しさん (ワッチョイ ce01-Nz8z)
垢版 |
2020/08/02(日) 14:42:16.64ID:HWQVFDgv0
>>428
> 型の安全性とは、=の左右の型が一致しているということですか?

左右の一致もそうだけどジェネリクスの型が関わるところはすべて
Javaは静的型付き言語なので型は実行前に決まるからコンパイルが通ったら
型の不整合は存在しないってこと

> 実行時には、型が安全であったかどうかという情報を破棄するというのは、どうしてそうするのですか?

イレイジャ方式を採用してるから、なぜイレイジャ方式なのかは過去のものとの互換性のためらしい
詳しくはこのあたりを参照いただければ
贖罪のイレイジャ - プログラマーの脳みそ
https://nagise.hatenablog.jp/entry/20160520/1463744926

> なぜ、コンパイル時に行う処理と実行時に行う処理に分けるのですか?

イレイジャ方式を採用してるから実行時にキャストが必要になる
0431デフォルトの名無しさん (ワッチョイ a910-Hcnj)
垢版 |
2020/08/09(日) 01:04:45.45ID:yhrtA4So0
((num%31536000)/8)/86400を実行すると213になってしまうんだけど原因わかりますか?
26になるはずなんですが
0432デフォルトの名無しさん (ワッチョイ 1b01-h+bK)
垢版 |
2020/08/09(日) 01:14:13.88ID:HZ7sqguG0
>>431
numの値はいくつなん?
0433デフォルトの名無しさん (ワッチョイ a910-Hcnj)
垢版 |
2020/08/09(日) 08:11:57.22ID:yhrtA4So0
>>432
int num = 50000000
です
0439デフォルトの名無しさん (ワッチョイ a910-Hcnj)
垢版 |
2020/08/09(日) 18:18:51.83ID:yhrtA4So0
>>438
一応解決しました
0440デフォルトの名無しさん (ワッチョイ ff01-dFmy)
垢版 |
2020/08/25(火) 23:18:31.97ID:5sKkPFkq0
ジェネリクスの型引数はどうして一文字なんでしょうか?
省略せずにわかりやすく書くのが現代のプログラミングの基本だと思うのですが
いつまでJavaはわかりにくい書き方に固執するのですか?
0441デフォルトの名無しさん (ワッチョイ ff01-dFmy)
垢版 |
2020/08/25(火) 23:20:48.35ID:5sKkPFkq0
型引数はクラスと同格なので、名前が一文字のクラスがあったらぶちギレでしょう
なぜ、型引数では一文字が常識とされているのかまったくわかりません
0443デフォルトの名無しさん (ワッチョイ ff01-dFmy)
垢版 |
2020/08/25(火) 23:28:49.55ID:5sKkPFkq0
>>442
い、意味が、わかり、ません
0445デフォルトの名無しさん (ワッチョイ ff01-dFmy)
垢版 |
2020/08/25(火) 23:33:06.46ID:5sKkPFkq0
たとえばLinkedListクラスはこうなってます
LinkedList<E>

どう考えてもこうすべきでしょう
LinkedList<Element>

EだけだとErrorなのかEmptyなのがEggなのかわかりませんよね
僕はわかりましたけどみなさんはわかりませんよね
0446デフォルトの名無しさん (ワッチョイ ff01-dFmy)
垢版 |
2020/08/25(火) 23:34:00.11ID:5sKkPFkq0
>>444
Javaにはパッケージという仕組みがあるわけですから
クラス名がかぶっても問題ないです
0447デフォルトの名無しさん (ワッチョイ 9f9f-748B)
垢版 |
2020/08/25(火) 23:58:41.15ID:foaBkBNu0
確かに一文字ってのは妙な文化だな
強いて理由を探すならこんなところ?
・ユーザー定義の型が入るワイルドカード感をどことなく醸し出したかった
・イレイジャーの存在感の希薄さをほんのり匂わせたかった
0450デフォルトの名無しさん (ワッチョイ a23c-kl6l)
垢版 |
2020/08/26(水) 12:54:18.80ID:sUxjWWoe0
>>414
わしはKate+Konsoleじゃ。
0451デフォルトの名無しさん (ワッチョイ 8255-1etN)
垢版 |
2020/08/26(水) 17:25:21.99ID:jQHqTTLQ0
順列組合せ関連の質問です。

例えば、{1, 2, 3, 4}の元の数が2の部分集合をすべてほしいとします。

Iteratorがループを回るたびに、そのような元の数が2の部分集合を返すようにしたいのですが、どのように実装すればいいか
分かりません。

単に元の数が2の部分集合をすべてプリントせよという問題ならばできます。
0452デフォルトの名無しさん (ワッチョイ 8255-1etN)
垢版 |
2020/08/26(水) 17:37:36.24ID:jQHqTTLQ0
再帰が使えないようなのが難しい原因のように思います。
0454453 (ワッチョイ 452c-VQ5f)
垢版 |
2020/08/26(水) 17:45:55.94ID:BpaQECb00
stack だろ
>>453
では、

1 push
2 push 出力
2 pop
3 push 出力
3 pop
1 pop

2 push
1 push 出力
1 pop
3 push 出力
3 pop
2 pop
0455デフォルトの名無しさん (ワッチョイ 8601-4Kjr)
垢版 |
2020/08/26(水) 21:02:49.85ID:3xqKZ5M90
>>451
再帰での書き方はわかるっしょ
まず書いてみるっしょ
https://paiza.io/projects/BB_QvDo2fNb3gOJuUSJmcw

スタックを使ってそれをループに置き換えるっしょ
スタックフレームのオブジェクトを作って値を保存すると良い
https://paiza.io/projects/g7vJtyJzqluM_Her1CxQYQ

あとはイテレータを適当にでっちあげれば完成
https://paiza.io/projects/fviG9H33Fj2X64mF5xZHdQ
0456デフォルトの名無しさん (ワッチョイ 119f-kQsB)
垢版 |
2020/08/26(水) 21:06:25.84ID:El1cFvrX0
最も初歩的なインデックスを使ったイテレーションが素朴に2つのインデックスになるだけでいいのでは
イテレーターに変数leftとrightを持たせて、初期値は1と2
rightだけインクリメントしていく
rightが末端まで到達したら先頭に戻してleftをインクリメント
rightとleftが同値ならとばす
とてもシンプル
0457デフォルトの名無しさん (ワッチョイ c612-pswI)
垢版 |
2020/08/26(水) 21:16:13.78ID:B8valtQ50
以下で "x" のところをA, B, C, Eのどれかにすると
java.util.ConcurrentModificationException
が発生するのに、Dにしたときだけ発生しないのはなぜですか?

¦ ArrayList<String> list = new ArrayList<>();
¦ list.add("A");
¦ list.add("B");
¦ list.add("C");
¦ list.add("D");
¦ list.add("E");

¦ for (String str : list) {
¦ ¦ if ("X".equals(str)) {
¦ ¦ ¦ list.remove(str);
¦ ¦ }
¦ }
0459デフォルトの名無しさん (ワッチョイ 82a5-oC+/)
垢版 |
2020/08/26(水) 21:41:16.73ID:70gZaOXI0
C++じゃ良く聞く話だけれどもJavaでは上手い説明サイトが無い
0460デフォルトの名無しさん (ワッチョイ 8601-4Kjr)
垢版 |
2020/08/26(水) 21:52:05.32ID:3xqKZ5M90
>>457
コンパイルするとこうなるっしょ

Iterator<String> it = list.iterator();

while (it.hasNext()) {
  String str = it.next();

  if ("X".equals(str)) {
    list.remove(str);
  }
}

next()の処理で変更されたかがチェックされている
hasNextはこうなっている

public boolean hasNext() {
  return cursor != size;
}

"D"のときに値を1個削除するとcursor == sizeとなってnextが呼ばれずに処理が終了する
なので、"C"のときには値を2個削除すればエラーにならないって感じ
0461デフォルトの名無しさん (ワッチョイ 8255-1etN)
垢版 |
2020/08/27(木) 06:33:50.16ID:bgNZHReb0
AとBがIterableインターフェイスを実装したクラスのインスタンスであり、
A = {1,2,3}
B = {4,5,6}
みたいになっているとします。

for (int i : A) {
for (int j : B) {
System.out.println(i + ", " + j);
}
}

を実行すると、
1, 4
1, 5
1, 6
で終わってしまいます。

Bの先頭からまた繰り返したいのですが、どうすればいいでしょうか?
0465457 (ワッチョイ c612-mEBg)
垢版 |
2020/08/27(木) 06:48:12.41ID:9xGPySdg0
>>460
ありがとうございます
すみません、理解できなかったです

ご提示いただいたように Iterator を使って以下のように書いてみたら
A〜Eどれも例外発生しなかったです

ArrayList<String> list = new ArrayList<>();
list.add("A");
list.add("B");
list.add("C");
list.add("D");
list.add("E");

Iterator<String> ite = list.iterator();
while (ite.hasNext()) {
String str = ite.next();
if ("C".equals(str)) {
ite.remove();
}
}
0466457 (ワッチョイ c612-mEBg)
垢版 |
2020/08/27(木) 06:58:27.19ID:9xGPySdg0
すみません間違えてました

誤 ite.remove();
正 list.remove(str);
ですね

これだと事象再現できて、>>460さんの説明を理解できた気がします
0468デフォルトの名無しさん (ワッチョイ 4d01-yRqa)
垢版 |
2020/08/31(月) 01:59:35.00ID:Sr2UUXBk0
新型コロナで1割が副業を開始、内容は「フリマアプリ」「投資」「クラウドソーシング」
https://news.yahoo.co.jp/articles/f603d4530fc3604c7bbfb855cfc2b03f6fef96d3
2月以降に副業を始めた人の3割が本業では「管理職」、コンサルタント、マーケターなどが専門スキルを活用
https://moneyzine.jp/article/detail/217351
3000人が回答!「副業・ダブルワーク」実態調査2人に1人が「副業・ダブルワーク」の経験ありと回答。
https://www.excite.co.jp/news/article/Atpress_223689/
20代の7割が「副業したい」、興味のある仕事は?
https://news.mynavi.jp/article/20200828-1253819/
副業の長時間労働防ぐ 新ガイドライン9月導入へ
https://www3.nhk.or.jp/news/html/20200827/k10012586471000.html
「毎日チョコ」生活4年 ブログで発信、趣味が副業に
https://style.nikkei.com/article/DGXMZO6285259020082020000000
「会社設立freee」に無料のiOSアプリ登場--スマホのみで会社設立が可能に
https://news.yahoo.co.jp/articles/013b58ddc7af139b65fbe5dc09a31a16ebcea0d6
月100万円の収入で本業超えも!サラリーマンYouTuberの“リアル”とは
https://diamond.jp/articles/-/245711
7歳児が年俸25億円!「ユーチューバー」収益の仕組みを全解剖
https://diamond.jp/articles/-/194240
「おじさん」こそユーチューバーになるべき理由、動画配信で稼ぐ極意
https://diamond.jp/articles/-/243481
おじさんユーチューバーが活躍めざましい意外な理由
https://diamond.jp/articles/-/194065
月100万円以上も! 会社員の副業収入、平均額は?
https://news.mynavi.jp/article/20200806-1201517/
0469デフォルトの名無しさん (ワッチョイ bf01-xr7l)
垢版 |
2020/09/19(土) 18:32:05.85ID:sD0hdZTu0
質問
javaでプログラムを処理中にCtrl+Cでinterruptのシグナルを送って
プログラムを強制終了するときにシグナルが送られたことをプログラム側で
検知して処理を分岐させる方法を教えて下さい
0472デフォルトの名無しさん (ワッチョイ bf01-xr7l)
垢版 |
2020/09/19(土) 21:31:20.67ID:sD0hdZTu0
>>471
マジですか・・・シグナル送られると例外も投げられないし
finallyの処理も行われずにプログラムが終了するんですよね
Java難しいです
0474デフォルトの名無しさん (ワッチョイ bf01-xr7l)
垢版 |
2020/09/19(土) 21:33:48.92ID:sD0hdZTu0
JNAググってみたんですけどこれ凄そうです、これでやってみます
ありがとうございます!
0475デフォルトの名無しさん (ワッチョイ bf01-xr7l)
垢版 |
2020/09/19(土) 21:34:08.31ID:sD0hdZTu0
>>473
ありがとうございます!試してみます!
0477デフォルトの名無しさん (ワッチョイ bf01-xr7l)
垢版 |
2020/09/19(土) 21:38:06.96ID:sD0hdZTu0
>>476
シンプルそうですね、ありがとうございます!
0482デフォルトの名無しさん (ワッチョイ 9fa5-GbXZ)
垢版 |
2020/09/21(月) 17:18:02.72ID:zhVYtERB0
C言語かC++で書かれたものの移植ではなかろうか
0489デフォルトの名無しさん (ワッチョイ ffad-EdVv)
垢版 |
2020/09/30(水) 03:50:51.93ID:vLo2/Ilx0
Kotlin もよろしく
0490デフォルトの名無しさん (ワッチョイ d32c-G8Sl)
垢版 |
2020/09/30(水) 11:27:11.40ID:/dbaz1tV0
未経験なら、Ruby 一択!

他の言語は、挫折確率が非常に高い。
だから、全ての学校は、Rubyばかり教える

そして、ベンチャー企業は、Ruby on Rails ばかり採用する
0492デフォルトの名無しさん (ワッチョイ c3f1-buUt)
垢版 |
2020/09/30(水) 12:55:51.77ID:xxSg96Gs0
>>485
オレは30代のハゲです。いっしょにJavaやろうじゃないか。
0496デフォルトの名無しさん (ワッチョイ 9f40-ZhtZ)
垢版 |
2020/10/18(日) 16:27:46.35ID:/wBkmO6c0
数学の「型付きラムダ計算」とは?
javaのラムダは型付き?
v -> v.toString()
こんな風に書いたとき、引数vもtoString()の返値も型を持ってるけど、
そのことなんだろうか?
0498デフォルトの名無しさん (ワッチョイ fb01-ntOo)
垢版 |
2020/10/18(日) 21:03:23.09ID:oU6L/1KQ0
世界最強のユーチューバー、2019年の年収は約76億円 ゲーム実況でブレイク
https://www.wwdjapan.com/articles/994609
7歳児が年俸25億円!「ユーチューバー」収益の仕組みを全解剖
https://diamond.jp/articles/-/194240
月収8億超えのYouTuberは6歳の女の子!世界各国で最も人気のYouTuberをマップにしてみた
https://news.yahoo.co.jp/articles/ec9f6e431ac8bdcfdfe02e21220888e59583f475
個人としては史上初のチャンネル登録者数1億人超えYouTuberが誕生
https://gigazine.net/news/20190827-pewdiepie-youtube-100-million-subscribers/
20歳のYouTubeスターが購入、約8億円の豪邸を拝見
https://www.businessinsider.jp/post-107308
『2ヵ月で20億円』集めろ!有名ユーチューバーたちの「地球規模」の活動に寄付殺到
https://www.excite.co.jp/news/article/Frontrow_79b68120b00f0fdcefb17b65e2a6b0d70dceee3d/
24歳ユーチューバーはどうして大学卒業後に就職せず、フルタイムのインフルエンサーになったのか
https://www.businessinsider.jp/post-203042#cxrecs_s
食事をするだけで30万? 料理を作るだけで10万? アイデアで何気ない日常を副業にするユーチューバーの世界
https://www.sanspo.com/geino/news/20200131/prl20013110020028-n1.html
世界のYoutuber年収ランキング10選!超弩級に稼ぎまくり!
https://cambridge-india.org/sekai-youtuber-nensyu/
0501デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/10/30(金) 08:40:24.61ID:5ayF+PMf0
Reflection とか Annotation とか使いだして整理しようとすると、
Generics で型情報が消去されるのがほんとうんkですね…
将来的にどうにかできんのですかね…
互換性っていうけど、どの部分の互換性が崩れるんだろ

List<String> list;

みたいな宣言から、String は取り出せるんだけど

List<T>

みたいな宣言から、実行時にはじめて決定する型情報を引き出そうとすると無理になる
引数に Class<?> 渡せば良いんだけど、もにょる
stream の toArray とかも、配列 new せんとあかんのかいってなるよね…
0502デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/10/30(金) 09:01:16.26ID:5ayF+PMf0
でも原理的に取り出すのが無理ってわけではないよね
class ファイルにも型情報ないし、その総称型のコードの実行部分でも、そのオブジェクトの指すポインタからは(List の中身がつまってなければ)型はわからないけど
コンストラクタなり、メソッドの呼び出し側は実際の型を知ってるよね多分

callGenericMethod(List<T> arg);

ってメソッドがあったとして、呼び出し側クラスのフィールドに、

List<String> list

って宣言があればスタックを戻っていけば型情報とれるけど、例えば、

void hoge() {
callGenericMethod(new ArrayList<String>());
}

みたいなメソッド内の呼び出しでも、Stack 探せば型情報ってあるよね
Reflection でローカル変数の情報引き出せないとすると、デバッガ関連のAPI で、コード領域のメモリ検索してみたいなことしないといかんのか
JVM 側にそういう機能があれば可能になるんじゃなかろうか
デバッガ全部実装ってなると処理重いだろうけど、こういう局所的な機能だとどうなんだろ
無理なんかな
0503デフォルトの名無しさん (ブーイモ MMcb-Ezn+)
垢版 |
2020/10/30(金) 09:52:16.84ID:5giIBuWJM
genericsがなかったとき、Listの要素はすべてObjectだった。その頃との互換性。
今でもListをコンパイルするとObjectのリストになる。

実行時の型情報はgetClassで取得できると思うけど
0504デフォルトの名無しさん (ワッチョイ f99f-wWLy)
垢版 |
2020/10/30(金) 09:59:28.66ID:EBRgydAT0
型消去の利点はコンパイル結果のclassファイルの互換性を保ち仕様変更を抑えられるところ
Java5で書いたコードを1.4以前の環境でも動かせたりする
classを相手にしないといけないツールやミドルウェアへのインパクトが小さい
型消去で妥協したからこそJava5でgenericsを導入できたしダメならJavaはより早く衰退していた可能性もある
0505デフォルトの名無しさん (テテンテンテン MMeb-z5gY)
垢版 |
2020/10/30(金) 11:10:49.23ID:hrZSGYbOM
それはよくある迷信というか当時のSunの詭弁
そもそもジェネリクスを使うにはJava1.5以降のランタイムが必要なんで、Javaを利用する立場ではバイトコードの互換性には実質的に何の意味もないのよ
ジェネリクスが残念仕様になったのはひとえに当時のSunに金がくてJVMに手を出せなかったからで、事実Oracleになって金に余裕ができてからはJVMは拡張されまくってる
0506デフォルトの名無しさん (ワッチョイ 53f0-8n4k)
垢版 |
2020/10/30(金) 11:19:13.86ID:6jWcOHsG0
1.4以前のgenerics使ってない過去のコード資産を
1.5以降のgenerics環境でも使えるようにするのか、それとも綺麗サッパリ捨てるのかって話であって
1.4以前でもgenerics使ってるコードを動かせるようにするって話じゃないんよ……
0508デフォルトの名無しさん (ワッチョイ fb01-fr3W)
垢版 |
2020/10/30(金) 11:28:02.04ID:9RgBA+ge0
ドトネトーは型消去じゃなくない?
0509デフォルトの名無しさん (ワッチョイ fb01-fr3W)
垢版 |
2020/10/30(金) 11:32:55.20ID:9RgBA+ge0
ドトネトは後発だからなーJavaよりも先に作られてて
Generics導入前との互換性が完全に保証されてるなら
MSはSunよりも技術力があると認めてやってもいいけどちがうじゃんか
0510デフォルトの名無しさん (ワッチョイ fb01-fr3W)
垢版 |
2020/10/30(金) 11:43:29.96ID:9RgBA+ge0
ドトネトは互換性を切り捨てて言語の進化を優先した
言語が作られたばかりで利用者が少なく既存プログラムが少なかったからできたことだよ

.NET Framework 4.5と下位バージョンの互換性がカオス
https://freesoft.tvbok.com/tips/os/net_framework_45.html
0511デフォルトの名無しさん (ブーイモ MMcb-Ezn+)
垢版 |
2020/10/30(金) 11:43:30.17ID:5giIBuWJM
c#が登場したのは2000年。リリース時点でgenericsを考慮してなかったら、むしろmicrosoftの技術力を疑うわ。
実際、microsoftがgenericsの前身の研究を始めたのは1999年だし
0513デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/10/30(金) 12:59:09.57ID:5ayF+PMf0
スーパー過疎スレだし、日記はブログに書けって言われるか、もしくは反応0かと思ったけど、
歴史的なうんぬんとかいろいろ書いてくれる人いてありがたい
ちゃんとウォッチしてる人もいるんだねここ
0514デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/10/30(金) 13:04:14.88ID:5ayF+PMf0
型消去って、JVM や class ファイルの仕様だから、
Kotlin とか Groovy とかの後発JVM言語とかでも型消去はされるんよね?

その辺のスクリプトってランタイムにいろいろいじくれる印象だけども
基本的にリフレクションのAPIをごちゃごちゃいじって出来ないことは、Kotlin Groovy でもできないってことなんかな
0518デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/10/31(土) 00:24:22.47ID:P3yvSdO+0
>>517
回答ありがとう

lombok の @Builder @Singular がカスタマイズ性低くて不満だったから、
Builder パターンのソースコードを自分で自動生成できないかなと思ったんだよね

ASD とか使ってやるのが正統派なんだろうけど、使い方覚えるのとか時間かかりそうだし、
そのままデフォで用意されてるリフレクション使ってパッと作れないかなと

とある対象クラスの1つがジェネリクス使ってて、困ったなどうしようかなって感じです
0520デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/11/02(月) 14:20:31.77ID:xsbidkkO0
EnumSet の 3値版みたいなのってデフォでは用意されてないですよね?多分
true false ともう一個くらい欲しい

あるインスタンスに関して、include するか exlude するか ignore するかみたいなフラグ
そして、その3値のフラグがいっぱい欲しいとき
EnumSet は、1bit で 1 flag だけど、2bit で 1flag みたいなの(これだと4値まで扱えるけど)
0522デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/11/02(月) 14:51:03.37ID:xsbidkkO0
ありがとう
たしかに、boolean の代わりにつかのならいいかもしれませんね OptionalBoolean
だけど、bit flag 的な動作(=EnumSet のような仕様)のクラスは多分自作しないとない感じですよね
0524デフォルトの名無しさん (ワッチョイ fb01-fr3W)
垢版 |
2020/11/02(月) 16:29:57.67ID:LqVECFSh0
enumでいいじゃん
0525デフォルトの名無しさん (ワッチョイ fb01-fr3W)
垢版 |
2020/11/02(月) 16:30:24.97ID:LqVECFSh0
イナム
0530デフォルトの名無しさん (ワッチョイ f99f-wWLy)
垢版 |
2020/11/02(月) 17:32:32.99ID:O692h/lZ0
細かいけどOptionalBooleanというクラスはありそうで存在しない
Optional<Boolean>になる

Optionalをメンバとして使うのはSerializabeあたりの理由で微妙だしIGNOREという具体的な値をemptyで代用するのもまた宜しくない
素直にタイプセーフenumを使って恩恵を得るのが可読性と汎用性と、実用面で十分な効率を満足すると思う

あとこの三値のお題でEnumSetに言及しているのは謎
Setではフラグをいっぱい持つことはできないぞ
高効率なListのような仕様を期待しているのだろうか
0532デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/11/02(月) 18:35:01.57ID:xsbidkkO0
ありがとう

一応、いまは2つ使ってやってます。
1つの EnumSet で 3値判定できれば楽かなって思ったんだけど、変なクラス作ってもわかりにくくなるし、これでいきます。

EnumSet<ItemType> excludes
EnumSet<ItemType> includes
0533デフォルトの名無しさん (ワッチョイ 53f0-8n4k)
垢版 |
2020/11/02(月) 19:08:13.39ID:MdMNZpD/0
それ includes も excludes もそれぞれ A or B or C の何れかの状態しか取らないみたいなコード?

もしそうなら君が欲しいのは EnumSet じゃなくてボツった Enhanced Enum 的なものかもよ?
0535デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/11/03(火) 09:16:21.62ID:8Mdr3goE0
問題説明するときには、断片でもいいからコード提示しないとダメなんだなつくづく思った

こっちは○○って言ってるのに、なんで見当違いな答えなの?
とか思ってしまうけど、具体例出してないのが悪いんよな

数学物理でもこういう質問と答えの行き違いみたいなの結構ある
0536デフォルトの名無しさん (ワッチョイ fb02-rsky)
垢版 |
2020/11/03(火) 18:16:01.83ID:8Mdr3goE0
eclipse のゴミ箱ボタン(GCボタン)押して思ったんだけど、Java の GC でマウスカクつくのな
普通 UI スレッドで長時間タスクって、その アプリの UI が固まるだけだけど
どういうスレッドの使い方したらこうなるんだろう

もちろん、GC の設定や環境によるものはあると思うけど
0537デフォルトの名無しさん (ワッチョイ 3602-2NH9)
垢版 |
2020/11/07(土) 07:34:51.13ID:lCK2kmHa0
ライブラリの著者が使ってほしくない機能をユーザーが使えないのってダメだよね
リフレクションじゃなくても、ちょっと設定すれば普通に private メソッドもフィールドも使えるようにしてほしいわ
中身ちょっと直したい時に、全部 pull して修正するの面倒
0538デフォルトの名無しさん (ワッチョイ 5559-93sb)
垢版 |
2020/11/07(土) 10:35:21.34ID:BzysXMDS0
痒いところに手が届かないならライブラリの熟成度が低いかライブラリの設計が悪い可能性はあると思う
仮に開発に参加している初心者が簡単にprivateのカプセル化のメリットを破壊して回れるような方式だとしたらOOP言語としての信頼自体を損ないかねない
デメリットやリスクを理解した上で使う仕組みとしてリフレクション程度の面倒くささは悪くない采配だと思う
0539デフォルトの名無しさん (ワッチョイ 3602-2NH9)
垢版 |
2020/11/08(日) 05:54:45.69ID:QaJs4UOf0
チームで作業してる時に、ポンコツが private メソッドいじっちゃうってなら、
ポンコツがいじれない箇所に設定を書けるようにすりゃいいだけだと思うけどな
コンパイラフラグとかJVMフラグとか
Groovy とかは、息をするように private メソッド呼ぶよね
0540デフォルトの名無しさん (ワッチョイ 92ad-t1Nk)
垢版 |
2020/11/08(日) 15:13:38.03ID:iVjroALJ0
Kotlin もよろしく
0541デフォルトの名無しさん (ブーイモ MMd5-T5d5)
垢版 |
2020/11/08(日) 16:23:08.51ID:CoeB3H6oM
うちの会社のハゲはポンコツで
チームで作業してる時に、ハゲが private メソッドいじっちゃうってなら、
ハゲがいじれない箇所に設定を書けるようにすりゃいいだけだと思うけどな
コンパイラフラグとかJVMフラグとか
Groovy とかは、息をするように private メソッド呼ぶよね
0542デフォルトの名無しさん (JP 0H65-mMcf)
垢版 |
2020/11/08(日) 17:42:51.72ID:E458/dQkH
うちの会社のハゲはチンポコで
チームで作業してる時に、チンポコが private メソッドいじっちゃうってなら、
チンポコがいじれない箇所に設定を書けるようにすりゃいいだけだと思うけどな
コンパイラフラグとかJVMフラグとか
Groovy とかは、息をするように private メソッド呼ぶよね
0543デフォルトの名無しさん (ワッチョイ 23ad-lcRl)
垢版 |
2020/11/11(水) 04:29:14.67ID:tSmBr0jI0
>>536
OSが変なのでは?
0545デフォルトの名無しさん (ワッチョイ 1b02-aWbd)
垢版 |
2020/11/11(水) 14:40:10.48ID:CiBMow/l0
カプセル化はわかってるけど、ライブラリ使い込んでいくにつれて、中身のそれいじらせろってなる事が多かったって話

ライブラリの設計が完璧なら必要ないのは分かるけど、そんなライブラリ現実にはほとんどない
0550デフォルトの名無しさん (オイコラミネオ MMab-OoW6)
垢版 |
2020/11/12(木) 09:01:47.04ID:2UsfwbwTM
やっぱりなんでもない。
もう人それぞれでいいや。

privateはクラスのメソッドや変数に対して外からアクセスしてほしくないことを明確化するくらいの認識があればそれでいいよ。
0551デフォルトの名無しさん (ワッチョイ cd9c-tKQa)
垢版 |
2020/11/12(木) 10:07:00.95ID:8AT56phj0
>>550
そうだよ
Javaのprivateはセキュリティではなく非公開の意思表示に過ぎない
だから開発者が公開したくないとしてもリフレクションで簡単に抜けられる
つまり開発者の使わせたくない意思よりも利用者の使いたい意思が最終的には優先されるの

それならリフレクション使わずともprivate呼べる手立てを用意しといてよというのが最初の主張なんじゃないかな?
少なくとも元発言者がJavaのprivateを理解してない初心者だとは思えない
0553デフォルトの名無しさん (ワッチョイ 1b01-5VKD)
垢版 |
2020/11/12(木) 11:20:34.03ID:VX9X1ew10
君たちにプライベートなどないのだよ
0555デフォルトの名無しさん (ワッチョイ 1b46-Y0tO)
垢版 |
2020/11/15(日) 21:24:45.76ID:wTz3BYxz0
javaとオブジェクト指向がごっちゃ?
リフレクションを多用したプログラムは基本的にバグの追跡が困難になって
システム全体の保守拡張性が失われていく
そもそもそういう事態を避けるためのオブジェクト指向なんだけどな
だからリフレクションを使う場面は
「公知され依存範囲も最小限の明示さえた範囲にとどまる場合」
に限るべきだと思う
0558デフォルトの名無しさん (ワッチョイ 1b46-Y0tO)
垢版 |
2020/11/17(火) 18:58:02.35ID:MFEhUl1R0
オブジェクト指向で綺麗にシステム作っても
システムを拡張する時に依存性を無視して
勝手にデータベースから別ルートでデータを扱ったり
そんなことされたらもうおしまい
0559デフォルトの名無しさん (ワッチョイ e2ad-b6az)
垢版 |
2020/11/23(月) 15:23:37.29ID:QcOiDeXE0
>>558
そういうことを防止するためにはそういうことができないような仕様の言語を新たに作るしかないでしょうな。
0561デフォルトの名無しさん (ワッチョイ 0e02-RToZ)
垢版 |
2020/11/24(火) 01:47:50.63ID:vl9hZWNY0
>>559
コンパイラオプションでできるできない設定できればいいだけだと思うけどな
それが不可能なレベルでの入り組んだ問題への対処なら、そもそも言語仕様としても成立しないと思う
0566デフォルトの名無しさん (ワッチョイ bf01-4pnK)
垢版 |
2020/12/09(水) 18:23:23.41ID:1rAAexgP0
偉そうにw
0568デフォルトの名無しさん (ワッチョイ bf01-4pnK)
垢版 |
2020/12/10(木) 10:11:22.54ID:/iej8cKu0
一般化して説教かますのはただのアホだと思うw
0569デフォルトの名無しさん (ワッチョイ bf01-4pnK)
垢版 |
2020/12/10(木) 10:12:29.29ID:/iej8cKu0
信号を無視したら信号無視だよと言ってるようなもの
チン次郎論法の亜種だな
0570デフォルトの名無しさん (ワッチョイ bf01-4pnK)
垢版 |
2020/12/10(木) 10:13:39.91ID:/iej8cKu0
説教厨
0571デフォルトの名無しさん (ワッチョイ bf01-4pnK)
垢版 |
2020/12/10(木) 10:15:17.13ID:/iej8cKu0
そんなに説教がしたいか
そんなに偉ぶりたいか
そんなに自分の立ち位置を確認したいのか
0572デフォルトの名無しさん (ワッチョイ bf01-4pnK)
垢版 |
2020/12/10(木) 10:19:43.99ID:/iej8cKu0
読み直してみたけどMockito使うことを実装するって言ってるだけなんじゃない?
0573デフォルトの名無しさん (ワッチョイ bf01-4pnK)
垢版 |
2020/12/10(木) 10:20:37.95ID:/iej8cKu0
> 565 :デフォルトの名無しさん (ワッチョイ 8759-u7CM) [↓] :2020/12/09(水) 17:43:20.81 ID:4HmF+HCx0 [PC]
> いやMockitoを使えば実装は要らない
> 知らないものを見ないふりしているといつまでも初心者のままだよ

一生許さないから
0574デフォルトの名無しさん (オッペケ Srb3-9wp+)
垢版 |
2020/12/22(火) 10:55:13.03ID:EExbCgorr
PCをゲーム機のようにしか扱って来なかった人間ですが、3週間でサーティファイのJava能力2級を取得することは可能でしょうか?
スレッド処理やら例外やらは大まかに分かりましたが、インターフェースがビックリするくらい理解できないです
0575デフォルトの名無しさん (ワッチョイ 0f9c-+dzo)
垢版 |
2020/12/22(火) 11:08:00.09ID:fGHiXn/20
インターフェース=共通規格の仕様
って考えるといいかもね
あるインターフェースを実装しているクラスのインスタンスは共通規格に準拠しているから共通規格のメソッドを呼べる
そのクラスのインスタンスをインターフェース型変数に代入することができる
0576デフォルトの名無しさん (ワッチョイ 0f9c-+dzo)
垢版 |
2020/12/22(火) 11:12:00.11ID:fGHiXn/20
ゲームで例えるとこうだ
USBゲームパッド仕様=インターフェース
PS4コントローラー=USBゲームパッド仕様を実装したクラス
XBoxコントローラー=USBゲームパッド仕様を実装したクラス

どちらのコントローラーも固有の機能を持っているがPCに繋げばUSBゲームパッドとして使える(振る舞える)
0578デフォルトの名無しさん (ワッチョイ eaa5-tzJm)
垢版 |
2020/12/22(火) 11:24:06.79ID:AK8G7vhK0
ちげぇなぁ
こういう奴の言ってることは大抵こう

「クラスはなんとかギリギリ理解した(ような気がするけど)、その後のインタフェイスになってもう完全に分からなくなった理解不可能助けて」
0579デフォルトの名無しさん (オッペケ Srb3-9wp+)
垢版 |
2020/12/22(火) 11:58:57.97ID:EExbCgorr
>>578
確かに理解出来てないものは多々ありますが、運や勘でもとにかく資格を取得するのが大事なので上のインターフェースについて概要を軽く説明して貰った方が飲み込みやすくて助かります
0580デフォルトの名無しさん (ワッチョイ eaa5-tzJm)
垢版 |
2020/12/22(火) 12:05:53.62ID:AK8G7vhK0
サーティファイのテキストの説明がよっぽどおかしいのか?
どうなってんだ
どういう駄文が書き連ねてあるんだ?
そもそも何見て分からんと言ってるんだ?
0581デフォルトの名無しさん (ワッチョイ bb40-uMNi)
垢版 |
2020/12/25(金) 13:39:16.56ID:cslSq7u80
eclipseとかでhashcode, equalsを自動作成できるけど
「未作成のクラスを検索する」とか
「自動生成と異なった実装になっているクラスを検索する」
みたいなことできないの?
メンバー変数を書き換えた時に作り直し忘れるとバグになるし面倒だよね
Lombokで自動生成するという手段があるらしいけどLombok使いたくないし
0583デフォルトの名無しさん (ワッチョイ 0bab-JtRj)
垢版 |
2020/12/26(土) 22:32:49.92ID:5jiSe6u40
馬鹿には無理
0584デフォルトの名無しさん (ワッチョイ b101-L4wC)
垢版 |
2020/12/28(月) 18:23:31.38ID:LMTdakKW0
Intellijでクラスの中に書いたメソッドを実行するにはそのクラスの中にmain関数を作ってメソッド呼び出す処理を書いてrunする以外にありますか?色んなクラスにmainができてしまうので、普通はどうやるのか知りたいです。
0588デフォルトの名無しさん (ワッチョイ ff01-wy8K)
垢版 |
2021/01/08(金) 15:12:47.26ID:eXVg8SYp0
自動インポートは甘え
0592デフォルトの名無しさん (ワッチョイ ff01-wy8K)
垢版 |
2021/01/08(金) 16:18:38.36ID:eXVg8SYp0
皮肉なものだなIDEならとイキったアホがimportの仕様をしらないとわw
0594デフォルトの名無しさん (ワッチョイ ff01-wy8K)
垢版 |
2021/01/08(金) 16:25:32.62ID:eXVg8SYp0
myjavaフォルダで
javac kihon/sample600/Sample601.java
としてもコンパイルできるはず

カレントフォルダはクラスパスに追加されて
kihon/sample600内にclassファイルが存在するので
0595デフォルトの名無しさん (ワッチョイ ff01-wy8K)
垢版 |
2021/01/08(金) 16:26:31.85ID:eXVg8SYp0
> 587+1 :デフォルトの名無しさん (ワッチョイ 5f9c-NUt6) [↓] :2021/01/08(金) 14:54:25.00 ID:GG1sOSQC0 [PC]
> >>586
> import文がない
> ふつうのIDEならSampleClass01のところでCtrl+Spaceで自動インポートされる
> VSCodeに自動インポートがなかったら窓から投げ捨てろ

こいつwwww
0597デフォルトの名無しさん (ワッチョイ 7f40-Cbw0)
垢版 |
2021/01/12(火) 00:52:52.68ID:SnMLaeAE0
eclipse collectionsのConcurrentHashMapと標準のはどっちが高性能なの?
JMHと言うのやってみようと思ったけどエラー出て動かなかった
JPMSのバグらしい
0598デフォルトの名無しさん (ワッチョイ 7f40-Cbw0)
垢版 |
2021/01/12(火) 02:28:37.16ID:SnMLaeAE0
JDKの方が速かった
0605デフォルトの名無しさん (ワッチョイ 8701-FvK0)
垢版 |
2021/01/22(金) 19:32:48.29ID:Ji2YQvfh0
DBと連携する簡単なwebアプリを作っています。
eclipseでは一通り動作を確認しました。

それとは別のlinuxマシンがあり、その上でtomcatの所定の位置にwarファイル、
jdbcドライバを配置して、ブラウザからアクセスすると例外が出ます。 

h2 dbを使っていますが組み込みモード、サーバーモードのどちらでも起こります。
ログを見る限り書き込み権限とかパーミッションの話のようですが、
具体的に何に誰の権限を与えるのかよくわかりません。

今のdbファイルの権限(とりあえずグループに書き込み権限を追加)
-rw-rw-r-- 1 pi pi 32768 1月 17 23:04 mydb.mv.db
-rw-rw-r-- 1 pi pi 2193 1月 16 14:34 mydb.trace.db

その後wabアプリにアクセスした際のログ
tomcat9/logs/catarina.out
[2021-01-20 23:14:12] [info] org.h2.message.DbException: ログファイル
エラー: "/mydb.trace.db"
[2021-01-20 23:14:12] [info] Log file error: "/mydb.trace.db", cause:
"java.io.FileNotFoundException: /mydb.trace.db (読み込み専用ファイルシ
ステムです)" [90034-200]
[2021-01-20 23:14:12] [info] org.h2.message.DbException: ログファイル
エラー: "/mydb.trace.db"
[2021-01-20 23:14:12] [info] Log file error: "/mydb.trace.db", cause:
"java.io.FileNotFoundException: /mydb.trace.db (読み込み専用ファイルシ
ステムです)" [90034-200]
[2021-01-20 23:14:12] [info] #011at org.h2.message.DbException.get(DbE
xception.java:194)
[2021-01-20 23:14:12] [info] #011at org.h2.message.TraceSystem.logWrit
ingError(TraceSystem.java:294)
[2021-01-20 23:14:12] [info] #011at org.h2.message.TraceSystem.openWri
ter(TraceSystem.java:315)
0609デフォルトの名無しさん (ワッチョイ 8701-FvK0)
垢版 |
2021/01/22(金) 20:57:53.49ID:Ji2YQvfh0
>>607
javaの方では一応
jdbc:h2:tcp://localhost/~/mydb
と指定してますが、ログの方はルートディレクトリに書こうとしてるみたいなことを言ってるんでしょうか。
でもホームディレクトリにファイルが出来てるんですよね…

調べてみるとこちらの質問も同じようにログファイルエラーが出ていますが、
これはurl指定が間違っていたからのようです。
https://stackoverflow.com/questions/64756454/why-does-spring-boot-with-embedded-h2-throw-a-org-h2-message-dbexception-error

試しに一回絶対パスで指定してみようかと思います。
0611605 (ワッチョイ 8701-FvK0)
垢版 |
2021/01/23(土) 18:19:02.53ID:DvIRe0+n0
>>605ですが、h2のサーバーモードをターミナルから起動したところ接続できました。
ブラウザのコンソールで接続したら起動するものだと勝手に思っていました(今もよくわかっていませんが)。
h2の英語ドキュメントを頑張って読みます。

組み込みモードでは依然として繋がりませんが、これでひとまず例外は出なくなったのでよかったです。
色々と情報をありがとうございました

>>610
dbのファイルやホームディレクトリなども一通り777にして試しましたが、
それでも組み込みモードでは上手くいきませんでした。
とりあえずサーバーモードで使っていこうと思います。ありがとうございました。
0613デフォルトの名無しさん (ワッチョイ b501-bbbf)
垢版 |
2021/02/02(火) 15:25:59.09ID:uGvN1c8B0
Collections.sort(numbers, (a, b) -> {
return a - b;
});

これが昇順にソートされるのは何でですか?
sortの2つ目の引数にcompareを実装するラムダ式を入れて、aとbの比較をして、
結果の大小で戻り値が3種類に分かれるのはわかるんですが、その結果をどう使っているのかと、
numbersが1,2,3,4,5のときと、3,1,2,4,5のときでa,bに代入される順番やループ回数が違うのがわかりません。
0614デフォルトの名無しさん (ワッチョイ 799c-Jvp0)
垢版 |
2021/02/02(火) 16:17:26.48ID:fQp+SbTP0
Collections.sortの実装はマージソートなんだけどそれ自体は気にしなくてもいい
他のソートアルゴリズムだとしてもかまわない
どのようなアルゴリズムであっても2つの要素の大小を比較しなければならない場面があるじゃない?
そのときに第2引数で指定したラムダ式が呼ばれるんだ
0615デフォルトの名無しさん (ワッチョイ 2a01-I+PI)
垢版 |
2021/02/02(火) 16:50:00.48ID:mk8gJgM80
>>613
aとbを比較して
aのほうがソート順で前になるべきなら負の整数
bのほうがソート順で前になるべきなら正の整数
同じ順序の場合は0を返す
というのが比較関数(Comparator)の定義

比較するのが数値の場合、a - bとすればaが数値として小さければ負の数となり
ソート順でもaのほうが前にあるべきという結果となるので昇順でソートされる
aとbがどういう順序で何回渡されるかや、それをどう使うかはsortの実装次第
0617デフォルトの名無しさん (ワッチョイ b501-bbbf)
垢版 |
2021/02/02(火) 17:16:02.59ID:uGvN1c8B0
ああ〜中でマージソートってのが行われてて、そこで使わせたい比較条件をラムダで渡してるだけで、何度渡されるか、どう使われるかはマージソートの実装次第なんですね。分かりました、ありがとうございます。
0620デフォルトの名無しさん (ブーイモ MM81-Jvp0)
垢版 |
2021/02/02(火) 20:18:24.67ID:KuFg8ZUKM
マージソートが論点ではないことさえ理解できないアスペは放っておいたほうがいいよ
0622デフォルトの名無しさん (ワッチョイ 9e01-5KyH)
垢版 |
2021/02/03(水) 09:52:05.10ID:xX1mwfrr0
>>621
Arrays.sortはプリミティブのときクイックソート
オブジェクトのときマージソートなんよ
0623デフォルトの名無しさん (ワッチョイ 9e01-5KyH)
垢版 |
2021/02/03(水) 09:56:16.50ID:xX1mwfrr0
Arrays.sortで使われてるTimsortも
Arrays.parallelSortで使われてるCilksortもマージソートの亜種じゃん
0626デフォルトの名無しさん (ワッチョイ 9e02-merL)
垢版 |
2021/02/04(木) 15:39:54.92ID:4mrWh63N0
なんで Java も JavaScript も String に UTF-16 使うん?

UTF-8 がメジャーだけど、
やっぱりバイト長ころころ変わるのは使いにくいのかな

String#length の現在の仕様でもサロゲートペアの扱いとか使い勝手悪いけど、
そのまま UTF-8 で実装したらさらにカオスか
文字数取得だけでも面倒なアルゴリズムになりそうね
0627デフォルトの名無しさん (ワッチョイ 9fad-JWMU)
垢版 |
2021/02/07(日) 18:10:03.45ID:wc7Pe9WT0
質問書きつつ自分で答え書いちゃうって何?
個人的な感想をみんなに公開してみたかったということ?
0631デフォルトの名無しさん (ワッチョイ f759-AYnR)
垢版 |
2021/02/08(月) 04:26:58.96ID:hPvPiWOZ0
Unicode
その設計にあたり世界中の名だたる企業から優秀な技術者が集まった
当時、彼らは16ビットで世界中のあらゆる文字が表せると信じていた
固定長、それがUTF-16の強みだった
その頃生まれたプログラミング言語も皆そこに乗っかった
だが、それは幻想だった
予想を遥かに上回る文字種がそこにはあった
設計チームは悩んだ
サロゲートペア、それは苦肉の策だった
UTF-16は優位性を失い、要らん子となった
時代は移ろい、今若者は訊ねた、なんでUTF-16使うん?と
歴史的経緯じゃね?俺もそう思った
0632デフォルトの名無しさん (ワッチョイ 9fd7-WNvl)
垢版 |
2021/02/08(月) 07:57:34.57ID:Ya4Gk1nt0
英語版作っておけば、全ヶ国語動いちゃうからでは
0633デフォルトの名無しさん (ワッチョイ 9f61-XJ0Q)
垢版 |
2021/02/08(月) 08:24:35.07ID:2cPyZIvO0
>>626
かつてそれを本気でやろうとした言語があった。
そして結果は悲惨だった。
0635デフォルトの名無しさん (アウアウウー Sa9b-WNvl)
垢版 |
2021/02/08(月) 11:14:32.71ID:ViucDqHka
ISO2022JPって知ってる?
一時スタンダードだったんだよ
0637デフォルトの名無しさん (ワッチョイ bf01-FN7n)
垢版 |
2021/02/08(月) 11:52:38.88ID:+m2shaAv0
内部でコードポイントを使うわけにはいかんのかね
0639デフォルトの名無しさん (アウアウウー Sa9b-WNvl)
垢版 |
2021/02/08(月) 12:53:11.47ID:ViucDqHka
>>636
リトルエンディアン
ビッグエンディアン
unix jis
dos sjis
入り乱れていた時期があって
その頃の文章の企画のスタンダードって意味で
使われるスタンダードではないけどな
0643デフォルトの名無しさん (ワッチョイ de01-pAn8)
垢版 |
2021/02/12(金) 16:46:19.35ID:yHZydEd80
>>642
これは当たり前だと思った
0644デフォルトの名無しさん (ワッチョイ eb59-9iXy)
垢版 |
2021/02/12(金) 17:30:52.54ID:JXvYdGCL0
この板でも1台目の掃除機として誰かに聞いてほしかったような恨みのこもった持論が出てきたり、変な人が宗教的な押し売りを始めることも多いね
大学教授は「動きません!助けてください!><」みたいな訴えにも毎年答えないといけないから大変だ
0645デフォルトの名無しさん (ワッチョイ 639c-ju/P)
垢版 |
2021/02/12(金) 19:03:11.98ID:W2ggDWfj0
掃除機なら適当に1台買えば自然と不満点が出てくるから2台目でより良いものを買うための質問ができるというのは分かる

でも学習はどうかなあ?
1台目を買う=自分自身がその分野の知識をある程度 身に付けている
だから、そもそも初心者にはそれが難しいんだよ
2台目の掃除機を買うつもりで質問しろと言われても困る
0646デフォルトの名無しさん (オッペケ Src7-9iXy)
垢版 |
2021/02/13(土) 02:21:23.87ID:okYFLiJ3r
そこは「つもり」なんだからええやん
100点満点は求められてない心掛けの話
よほどのアホでもない限り何かしらの試行錯誤や理想と現実とのズレを経てから人にヘルプを求めてる訳で、どう困ったかのギャップを具体的に表現しないと初歩的な質問すら伝わらない
字句通りに解釈して例示の意図を汲み取れず困惑するのはすまんが少々アスペっぽく感じる
0647デフォルトの名無しさん (ワッチョイ 639c-ju/P)
垢版 |
2021/02/13(土) 06:36:53.08ID:Tqg5uAgX0
そうかなあ?
質問は二台目の掃除機を買いに行くつもりでしろ=中級者くらいの質問をしろ
だと感じるけどなあ
これに納得や共感できるのは質問を受ける側であって本当の初心者には??だと思うよ
0649デフォルトの名無しさん (ワッチョイ eb59-9iXy)
垢版 |
2021/02/13(土) 08:24:40.55ID:V3XIkrP30
いやいやリンク先の本文には比喩だけでなく具体的に掘り下げた説明的な二人の会話があるだろ
引用しようか?
もう一度よく読んでも違和感が強く教授の言いたいことを汲み取れない、あるいは生徒側が誤った解釈をしているに違いないと思うならアスペ傾向あると思う
0651デフォルトの名無しさん (ワッチョイ 639c-ju/P)
垢版 |
2021/02/13(土) 09:46:41.46ID:Tqg5uAgX0
具体的に掘り下げた説明にはなってないと思うけどなあ
教授が言いたかったのは「何が分からないのかの言語化を試みて質問すること」でしょ
それはいいんだよ

なんでそれが「二台目の掃除機を買いに行くつもりで質問しろ」になるのか
この先生、比喩とか要約とか下手過ぎるでしょ
こんな意図を伝えることが下手くそな先生が質問の仕方をあーだこーだ言ってることへの違和感はんぱない
0653デフォルトの名無しさん (ワッチョイ eb59-9iXy)
垢版 |
2021/02/13(土) 17:36:56.37ID:V3XIkrP30
>>651
卑近な例で質問を受ける側の感覚を伝えたことで、現にこの学生には面白い話として伝わった上に強い印象を与えて習慣化できたわけだ
相手が融通の利かない子ならこの教授も比喩は使わず直接的な答えだけを言うかもしれないな
下手くそなどと言ってるけど、お前さんは恩師や先輩として誰かに尊敬されていたり、教え上手、喩え上手とされているの?
0655デフォルトの名無しさん (ワッチョイ eb59-9iXy)
垢版 |
2021/02/14(日) 10:54:14.14ID:ouLbdUdH0
あなたが良き質問者となれば人からより上手に情報を引き出し学ぶようになれますよというチャンスの話
上から目線の義務や押し付けとして捉えてると損すると思う
親切なスクールもタダじゃないからね

ゲームでいうなら良スキルの獲得イベント
プライドが高すぎたりするとイベントに失敗する
もちろん人に聞かず独学のみで達人になれるならそれはそれで良いスキル
ただ偏屈属性は付きやすいと思う
0656デフォルトの名無しさん (ワッチョイ 639c-ju/P)
垢版 |
2021/02/14(日) 11:01:05.68ID:KIOtR6xP0
そうだね
良い質問も大事、良いアドバイスも大事
二台目の掃除機はあまり良いアドバイスではなかったというだけの話
0660デフォルトの名無しさん (ワッチョイ 639c-ju/P)
垢版 |
2021/02/15(月) 16:12:55.53ID:ExOArVyb0
こういう質問FAQはとてもいいんだよ
雑魚先生が掃除機とか変なたとえをしちゃったのがすべての元凶
0661デフォルトの名無しさん (ワッチョイ f2bb-pCKf)
垢版 |
2021/02/16(火) 22:57:42.40ID:klj0xL3w0
正規表現で一部一致の書き方を教えていただきたいです。
ここで言う一部一致の例を挙げます。
焼肉定食という文字列があったとして
三文字以上一致した場合マッチさせるという形を取りたいのです
焼鯖定食でも一致、焼魚定食でも一致、鯖定食でも一致という形を取りたいです。
0662デフォルトの名無しさん (ワッチョイ eb59-9iXy)
垢版 |
2021/02/16(火) 23:48:27.08ID:7lvyarZ/0
そういう記法はないと思う
・Javaで普通にカウントするか
・肉定食|焼.定食|焼肉.食|焼肉定
みたいな正規表現パターンをJavaで生成するか
・(?:(焼)|.)(?:(肉)|.)(?:(定)|.)(?:(食)|.)で繰り返し検索して、グループが3件以上になる部分を探す
焼定食を許すのか、焼サバ定食を許すのかによってアレンジが要る
あと鯖定食は三文字一致してないよな
0663◆QZaw55cn4c (NZ 0H6a-R34l)
垢版 |
2021/02/16(火) 23:57:30.49ID:I98rHtI/H
>>661
正規表現の範囲ではあるパターンが「何個」とか数えられないので無理な気がします‥‥
0664デフォルトの名無しさん (ワッチョイ de01-pAn8)
垢版 |
2021/02/17(水) 00:01:29.94ID:ELK1LugG0
>>663
焼肉定食から3文字の順列を作って|でつなげればいんじゃね
0667デフォルトの名無しさん (ワッチョイ 6f02-pQAD)
垢版 |
2021/02/23(火) 20:29:28.66ID:XBzTqCMZ0
昔個人用で作ってた代物をリポジトリにあげたいんだけど、

lombok + Groovy + ( Maven もしくは Gradle )

この組み合わせのビルドが上手く行かない
eclipse 上で maven かまさずにコンパイルされたものでは動いてたんだけど

Groovy も lombok も precompile 処理入るからだろうけど
いろいろ見てみてもあんまり
0673デフォルトの名無しさん (ワッチョイ dfba-0RAh)
垢版 |
2021/03/06(土) 21:06:38.37ID:eOAQdmPf0
リングバッファについて、最後に入力されたN個を順に出力するいい方向はあるでしょうか?

ttps://pastebin.com/sy5W5wKV

例えば、上記の入力で、最後に入力された3個を順に出力する結果
6、7、8
を出したいのですが。
0674デフォルトの名無しさん (ワッチョイ 0b7f-+yq6)
垢版 |
2021/03/06(土) 21:34:12.25ID:t7qlr3aD0
E[(tail + capacity) % capacity], E[(tail - 1 + capacity) % capacity], E[(tail - 2 + capacity) % capacity]
をプリントすればできると思うけど、
headは何のためにあるの?length - 1とcapacityを比較する意味は?volatileの意図は?
0676デフォルトの名無しさん (ワッチョイ dfba-0RAh)
垢版 |
2021/03/07(日) 02:25:57.10ID:dNhuek4B0
674
確かに、headが全く機能していませんでした。

675
ありがとうございます。
var等まだ知らないことが多いですが、
勉強しながら書かれていることを理解してみようと思います。
0677デフォルトの名無しさん (ワッチョイ 0fbb-X4tf)
垢版 |
2021/03/11(木) 02:12:07.38ID:91PoZcXF0
あの、
Jqueryのinputmaskを使って桁数や数字限定等の入力制限を行ったんですが、
上司にそれだと登録時にサーバーに同様の入力チェックを設けないと入力制限を無効化して送れるからだめだと言われました
実際にどうやって無効化するのかものすごく興味がわいたので
chromeでいろいろやってみたけど結局POST時にも入力制限かかっているっぽかったから問題ないように感じたのですが
どうやれば無効化してサーバー側に送れるんでしょうか?
0679デフォルトの名無しさん (ワッチョイ 3b9c-mZtP)
垢版 |
2021/03/11(木) 08:34:54.31ID:WbnbUiBg0
>>677
本当に上司はそう言ったの?
「サーバーでチェックしなきゃいけなくなるからダメ」じゃなくて
「サーバーでもチェックしなきゃダメだよ」って言ったんじゃない?

いくらクライアント側でチェックしてもサーバー側でのチェックが不要になることはないと思うけど
0680デフォルトの名無しさん (ワッチョイ ab01-kkZq)
垢版 |
2021/03/11(木) 11:01:13.27ID:fdwFiuL80
KENTAのサロンで上司を学ばせるべき。
0682デフォルトの名無しさん (ブーイモ MM7f-WiTX)
垢版 |
2021/03/11(木) 12:16:17.54ID:+SW+GpdsM
Webの画面を通さずHTTPリクエストを送ればいいだけ

Chromeの開発ツールならネットワークタブでCopy as fetchしたのをコンソールで編集してから送信するか
Copy as cURLしてコマンドラインからcURLで送信する

Firefoxの開発ツールにはGUIでリクエストを編集して送信する機能が付いてる
ブラウザ以外ならcURLやPostmanが定番
0683デフォルトの名無しさん (ワッチョイ 6b2c-5a1m)
垢版 |
2021/03/11(木) 12:35:14.10ID:EP88fPM90
ドラクエでは、0.5% のデータがおかしいので、
ネットから来るデータを、絶対に信用してはならない!

ネットの伝送エラー率が、0.5%で、それをエラーにしないルータがある。
チェックサムを再計算して、正しいデータとして、次へ送ってしまう

そもそも、ルータの規格を決めていないから、どうしようもない

だから、クライアント側で入力チェックして、
サーバー側でも、チェックするのが正しい!
0685683 (ワッチョイ 6b2c-5a1m)
垢版 |
2021/03/11(木) 14:26:40.99ID:EP88fPM90
WEB+DB PRESS Vol.90 に、
ドラゴンクエストX オンラインの特集が載ってた

どうやって作っているか
0686デフォルトの名無しさん (ワッチョイ 3b9c-mZtP)
垢版 |
2021/03/11(木) 14:57:46.49ID:WbnbUiBg0
ずいぶん昔だよねー
読んだことある気がする!
0687デフォルトの名無しさん (ワッチョイ fb5f-R8lj)
垢版 |
2021/03/11(木) 15:04:05.86ID:UhH3pQhX0
ドラクエのRDBMSが高級商用製品なのも知られていない。
0688683 (ワッチョイ 6b2c-5a1m)
垢版 |
2021/03/11(木) 15:46:48.19ID:EP88fPM90
RDBMS は、よく覚えていないけど、こういうやつだったかな?

Cassandraは、OSS の分散DB

Kyoto Tycoon は、GPL V3 / LGPL。
Kyoto Cabinetは、GNU一般公衆利用許諾に基づいて利用許諾されたフリーソフトウェアです
0689デフォルトの名無しさん (ワッチョイ fb5f-R8lj)
垢版 |
2021/03/11(木) 17:03:54.44ID:UhH3pQhX0
守秘義務違反
0690デフォルトの名無しさん (ワッチョイ d2ba-xjD7)
垢版 |
2021/03/13(土) 18:02:37.92ID:6BKchtYI0
サイトにある画像を自動で保存するクローラみたいなものを作ろうとしてるのですが、
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
のエラーが出ていて、調べたのですが何を最初に解決しなければいけないのか教えていただければと思います。
0692デフォルトの名無しさん (ワッチョイ 0601-pgwD)
垢版 |
2021/03/13(土) 20:20:54.71ID:5su42aEd0
>>690
証明書の検証をしようとしたところ有効な証明書パスが見つかりませんでしたってことだから
証明書の検証をしないようにすればいんじゃないかな
0693デフォルトの名無しさん (ワッチョイ d2ba-xjD7)
垢版 |
2021/03/13(土) 21:56:40.77ID:6BKchtYI0
>>692
ありがとうございます。
証明書の検証について調べてみます。
0695デフォルトの名無しさん (ワッチョイ 692c-3kAG)
垢版 |
2021/03/14(日) 05:24:50.44ID:IL1Rx7pe0
wget で、サイトのリソースも含めて、丸ごとダウンロードできるのでは?
ひょっとしたら、curl でも出来るのかな?

Ruby ではRails とか、Nokogiri, Selenium Webdriver などでスクレイピングして、
a タグを抜き出すとか
0698デフォルトの名無しさん (オッペケ Sr91-4ch0)
垢版 |
2021/03/14(日) 11:19:34.50ID:BNc+xu8pr
別スレでdata-*属性に書かれている画像がwgetでダウンロードできなくて困ってる人いたな
HTML5ではありふれた状況だしwgetで正規表現による属性追加くらい標準機能で受け入れてくれてもいいのにと思ったわ
0699デフォルトの名無しさん (ワッチョイ 692c-3kAG)
垢版 |
2021/03/14(日) 12:46:13.81ID:IL1Rx7pe0
data-* 属性の使い方は、各ユーザーが決めるものだから、使い方を予測できない

例えば、5ch では各投稿に、投稿番号・ID などの、3つのdata-* 属性を使っている

<div class="post" id="692" data-date="NG" data-userid="ID:5su42aEd0" data-id="692">
0701デフォルトの名無しさん (ワッチョイ c201-Ruah)
垢版 |
2021/03/15(月) 00:10:06.44ID:W4mhVG7e0
>>698
あれは画像はダウンロードできてるけどdata属性に書かれてる絶対パスを相対パスに変換してくれないから
JSで処理してるリンクをクリックしてもオフラインだと動かないという話だったかと
正規表現使った簡単な置換コマンド1つで処理できる内容なのでwgetで指定できる必要性はないと思う

仮にdata属性に指定された画像がダウンロードできてないという話だったとしても
grepしてwgetするコマンド1つ書けばいいだけなのでは?
0702デフォルトの名無しさん (オッペケ Sr91-4ch0)
垢版 |
2021/03/15(月) 02:33:53.76ID:1qxK5Hvcr
>>701
別スレの話でモメてもしょうがないので回答だけ
ダウンロードできてるというのは全部回答者の憶測だったよ
wgetしてgrepしてwgetシーンが時々あるならツール自身がやってくれた方がいいと思ったんだよね
別にそのオプションがないから糞だとか言うつもりはない
0703デフォルトの名無しさん (オッペケ Sr91-4ch0)
垢版 |
2021/03/15(月) 02:41:03.52ID:1qxK5Hvcr
>>702
誤字
wgetしてgrepしてwgetする、だった
あとwgetの仕様を見たら既知の属性しか処理対象じゃなかったんだよね
んでオレオレ属性に対応するパッチを書いてる人もいたので、今やdata-*も広く使われてるんだし公式でとっとと取り込めばいいのにと思ったわけよ
0704デフォルトの名無しさん (ワッチョイ 53f0-zgiT)
垢版 |
2021/03/20(土) 16:56:48.35ID:Wp3MfYRr0
初見

大量のPDFを一括処理しようと思ってる。
やりたいことは、PDFをAcrobatで開いた時の「文書のプロパティ」の「レイアウトと倍率」の各項目を所望の状態にしたい。それを一括大量に。

Javaのライブラリでそんな事ができるのってある?
0707デフォルトの名無しさん (アウアウウー Sae9-iavC)
垢版 |
2021/04/05(月) 00:17:31.28ID:1w8DpgCTa
>>232
あ、これコンパイルでもなく、ランタイムでもない変なエラーね。対応してませんみたいなやつ。

eclipseのバージョン2019年頃のなら普通に Swingできました。

どうしてもあかんときは、コマンドラインで javac, javaして動かしたら行けるはずです。
0708デフォルトの名無しさん (ワッチョイ a348-ql7i)
垢版 |
2021/04/05(月) 13:47:55.56ID:MaoiVFnr0
javaに参照渡しはないと思ってたのですが以下のコードをみるとfは参照渡しに見えます
コンパイラの最適化とかでインライン展開でもされるのでしょうか
class T{
public int a;
public T(int v){
a=v;
}
}
public class HelloWorld {
public static T f(T a){
a.a = 7;
return a;
}
public static void main(String[] args) throws Exception {
// Your code here!
T a = new T(10);
T b = new T(10);
T c = f(a);
T d = a;
System.out.println(a.a);
System.out.println(b.a);
System.out.println(c.a);
System.out.println(d.a);
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);
}
}
0709708 (ワッチョイ a348-ql7i)
垢版 |
2021/04/05(月) 13:50:36.82ID:MaoiVFnr0
上のコードの実行結果

7
10
7
7
T@6d06d69c
T@7852e922
T@6d06d69c
T@6d06d69c

cは参照アドレスが異なる者と思っていました
fの引数の箇所とreturn aの箇所でそれぞれ参照の値渡し用のコピーが作られると思っていたのですが
違うのでしょうか
0713デフォルトの名無しさん (ワッチョイ 0d9c-h+YV)
垢版 |
2021/04/05(月) 19:31:09.38ID:V741/wtv0
ときどき出てくる参照渡しを勘違いしている人ってなんなんだろ?
C言語しか知らないのかな?
C言語のポインタ引数のことを参照渡しだと思ってそう
C言語のポインタ引数は値渡しだよ
ていうかC言語とJavaは値渡ししかない

C++かC#をやると参照渡しがなんなのか分かるよ
C言語とJavaをやってるだけでは参照渡しは理解できない(だって参照渡し出てこないもん)
0714デフォルトの名無しさん (ワッチョイ 0d9c-h+YV)
垢版 |
2021/04/05(月) 19:36:15.68ID:V741/wtv0
いったいどこで「参照渡し」なんて言葉覚えてくるんだろ
Javaにはそんな言語機能ないのにさ
0715デフォルトの名無しさん (ワッチョイ 552c-s+Uo)
垢版 |
2021/04/05(月) 20:51:13.92ID:2g7RifS+0
C では変数は、値を入れる箱だけど、
他の言語では、変数は名付け・ラベル

箱に入れるようなイメージをしてると、参照のコピーで苦しむ。
immutable・変更不能なのは、Primitive 型だけ

それ以外は、deep copy していく際、
再帰的に、Primitiveに突き当たるまで、実体がコピーできないので、
参照のリンクを断つのに苦労する
0716デフォルトの名無しさん (ワッチョイ 0d9c-h+YV)
垢版 |
2021/04/05(月) 20:57:44.08ID:V741/wtv0
C言語とJavaは同じだと思うけどなー
C言語のポインタ変数=Javaのオブジェクト変数(参照型)だよ
0717デフォルトの名無しさん (ワッチョイ 15f6-s+Uo)
垢版 |
2021/04/05(月) 21:42:04.48ID:H5o31n3E0
このソースの結果がなんでこうなるのかわかりません。
言語仕様を理解していれば説明できるといわれました。
なんでこうなるのでしょうか?

public class Main {
 public static void main(String[] args) throws Exception {
  Integer int050a = 050; Integer int050b = 050;
  Integer int100a = 100; Integer int100b = 100;
  Integer int150a = 150; Integer int150b = 150;

  Class<?> clazz = Integer.class;
  Field field = clazz.getDeclaredField("value");
  field.setAccessible(true);

  field.setInt(int050a, 050 + 1);
  field.setInt(int100a, 100 + 1);
  field.setInt(int150a, 150 + 1);

  System.out.printf("int050=%d,%d(%b)\n", int050a, int050b, int050a==int050b);
  System.out.printf("int100=%d,%d(%b)\n", int100a, int100b, int100a==int100b);
  System.out.printf("int150=%d,%d(%b)\n", int150a, int150b, int150a==int150b);
 }
}

結果
int050=41,41(true)
int100=101,101(true)
int150=151,150(false)
0721デフォルトの名無しさん (ワッチョイ 552c-s+Uo)
垢版 |
2021/04/05(月) 22:12:11.77ID:2g7RifS+0
Ruby では、すべてがオブジェクトだから、数値型.メソッド、と書ける

Primitive 型がある言語では、Primitive型.メソッド、とは書けない。
Primitiveには、メソッドが無いから

メソッドを呼びたい際、Box・オブジェクト化する。
オブジェクトで包む

そうすると、オブジェクト.メソッド、と書ける。
Box/Unbox 化
0722デフォルトの名無しさん (ワッチョイ 1b01-ugfq)
垢版 |
2021/04/05(月) 22:54:58.29ID:BlJGn6z90
>>717
これかな

5.1.7. Boxing Conversion
https://docs.oracle.com/javase/specs/jls/se16/html/jls-5.html#jls-5.1.7

If the value p being boxed is the result of evaluating a constant
expression (§15.29) of type boolean, byte, char, short, int, or long, and
the result is true, false, a character in the range '\u0000' to '\u007f'
inclusive, or an integer in the range -128 to 127 inclusive, then let a and
b be the results of any two boxing conversions of p. It is always the case
that a == b.

ハイパー超訳だけど
ボックス化された値が-128〜127の場合は同じオブジェクトになります、ってことのよう

ラッパークラスもコンスタントプールに格納されるんかね、これは知らなかった
0724デフォルトの名無しさん (ワッチョイ 1b01-ugfq)
垢版 |
2021/04/05(月) 23:00:05.89ID:BlJGn6z90
>>708
えっと、参照渡しの定義は
仮引数への代入によって実引数が変わることなんよ

a.a = 7;

これは仮引数への代入ではないよ
.(ドット)演算子があるのでオブジェクトの状態を変えてるだけ

変数への代入とオブジェクトの状態を変える操作は異なるもの、という認識が必要

a = new T(7);

としても実引数は変わらないっしょ、だからJavaは値渡しなんよ
0725デフォルトの名無しさん (ワッチョイ 1b01-ugfq)
垢版 |
2021/04/05(月) 23:02:02.65ID:BlJGn6z90
>>718
一応、共有渡しという呼び方はある
0726デフォルトの名無しさん (ワッチョイ 552c-s+Uo)
垢版 |
2021/04/05(月) 23:14:53.36ID:2g7RifS+0
まず、等価・等値の区別を学ぶべき。
Primitive型とオブジェクトの等価・等値とは、何を比べる事なのか?

内包する値が等しいのか、
オブジェクトIDが等しいのか?
0727デフォルトの名無しさん (オッペケ Sr01-jPF6)
垢版 |
2021/04/06(火) 08:57:10.74ID:LwA3WJBer
GoogleがJava SE APIをコピーしたことは、プログラマーが自分の才能を生かして新しいプログラムを開発するために必要なコードのみを含んでおり、法律上、その素材におけるフェアユースにあたる。
0729デフォルトの名無しさん (ワッチョイ 23a5-qoZl)
垢版 |
2021/04/06(火) 11:26:18.57ID:pJApQ9S90
HOTな話題だろ
勝訴したんだから
0730デフォルトの名無しさん (ワッチョイ 0d9c-h+YV)
垢版 |
2021/04/06(火) 11:29:21.61ID:siOuNgG90
今日、12年に渡るGoogleとOracleの裁判に判決が出たんだよ!

GoogleのAndroidでのJava使用はフェアユースだからOracleの権利を侵害していないと認められた
これはJavaコミュニティにとっても喜ばしいニュースだね

権利侵害が認められるようならGoogleはJavaを捨てるなんて話も出ていたから、そうならなくて本当によかった!
0738708 (ワッチョイ a348-ql7i)
垢版 |
2021/04/07(水) 14:59:25.85ID:ODWVZMHP0
共有渡しなどでググってみましたがまだ理解できません
比較のためC++の例を。こっちが頭にあるから混乱してたのかもしれない
#include <stdio.h>
struct T{ int a; T(int i){a=i;}};
T f(T a){ return a;}
int main(){
T a(10);
T b=f(a); //javaと違ってbのアドレスは変わる。ここの挙動がjavaの疑問点
T c = a; //これもjavaと違って新しいコピーが作られる。コピコン
T* d = &a; //ポインタ。同じアドレスをさす
T& e = a; //参照。同じアドレスをさす
printf("%d\n%d\n%d\n%d\n%d\n",&a,&b,&c,d,&e);
return 0;
}
実行結果
286472060
286472064
286472068
286472060
286472060
0739708 (ワッチョイ a348-ql7i)
垢版 |
2021/04/07(水) 15:17:30.71ID:ODWVZMHP0
追記。javaと比較しやすいように参照渡しの関数を追加しました
#include <stdio.h>

struct T{ int a; T(int i){a=i;} };
T f(T a){ return a; }
T& g(T& a){return a;} //前のコードに追加したコード
int main(){
T a(10);
T b=f(a);
T c = a;
T* d = &a;
T& e = a;
T& f = g(a); //参照渡し。同じアドレスをさす。前のコードとの違いはここ
printf("%d\n%d\n%d\n%d\n%d\n%d\n",&a,&b,&c,d,&e,&f);
return 0;
}
実行結果
1519342484
1519342488
1519342492
1519342484
1519342484
1519342484
0740708 (ワッチョイ a348-ql7i)
垢版 |
2021/04/07(水) 15:33:40.19ID:ODWVZMHP0
c++風な理解ですがjavaの共有渡しは
実引数a 値アドレス10 アドレス100
仮引数a 値アドレス10 アドレス101
と言う風に準備されて
仮引数に代入してもアドレス101に代入されるので実引数のアドレス100には影響が無い
値アドレスは一緒なのでa.a=7などと代入すると実引数の値も変化する
こういう理解だったのですがjava的には違うのでしょうか
最初のコードでT c=f(a)としたときにcとaのアドレスが変わらないということは
C++版での参照渡しのコード(関数g)に対応すると考えました
0744デフォルトの名無しさん (ワッチョイ 1b01-ugfq)
垢版 |
2021/04/08(木) 01:40:49.88ID:lOqPs7CS0
JavaのコードはC言語だとこうだよ

#include <stdio.h>
#include <stdlib.h>

struct T {
int a;
};

struct T* f(struct T* a) {
a->a = 7;
return a;
}

int main(){
struct T* a = malloc(sizeof(struct T));
a->a = 10;

struct T* b = f(a);

printf("%d, %d, %p, %p\n", a->a, b->a, a, b);
return 0;
}
0745デフォルトの名無しさん (ワッチョイ 1b01-ugfq)
垢版 |
2021/04/08(木) 02:22:43.43ID:lOqPs7CS0
>>740
> 最初のコードでT c=f(a)としたときにcとaのアドレスが変わらないということは
> C++版での参照渡しのコード(関数g)に対応すると考えました

Javaでは変数のアドレスは見れないよ
cとaで参照してるオブジェクトのハッシュ値が出力されてるだけ
cとaの参照先が同じオブジェクトってこと

参照渡しは変数を参照するって意味で
共有渡しは変数の参照先を共有するってこと
0746デフォルトの名無しさん (ワッチョイ 23ad-0pr0)
垢版 |
2021/04/08(木) 02:30:20.54ID:SAft2z2v0
Java の参照はポインタだと思えば理解は楽だな。C言語だと x->x のように書くが Java だと x.x と書くことになっているだけ。
null だと指す先がないので NullPointerException になる。
0747デフォルトの名無しさん (ワッチョイ 552c-s+Uo)
垢版 |
2021/04/08(木) 04:31:04.65ID:lDvnXqCb0
Java には、構造体そのものが無いのか。
構造体は、内包物がすべてコピーされるだろ

つまり、異なるオブジェクトがnew されてから、すべての内包物がコピーされる。
つまり、2つのオブジェクトが存在する

一方、構造体のポインタは、内包物がコピーされないし、
コピー用のオブジェクトも、newされないから、
オブジェクトは最初の1つだけしか存在しない

単なる名付け・ラベル。
1つのオブジェクトに、別の名前を付けただけ

幾つのオブジェクトが作られたか、newの回数を数えればよい
0748747 (ワッチョイ 552c-s+Uo)
垢版 |
2021/04/08(木) 04:41:11.49ID:lDvnXqCb0
変数を、値を入れる箱みたいに思うのは、ダメ。
箱に入れるイメージは、C/C++ だけ

他言語では、変数は名付け・ラベル

新たなインスタンスを作って、コピーしていない。
単に、既存のインスタンスに、別名を付けているだけ

だから代入の前後で、インスタンスは1つしか存在しないし、
new も、されていない

つまり、newの回数と、存在するインスタンスの個数を調べるのが重要

ただし、Primitive はオブジェクトと異なるので、これには当てはまらない
0749デフォルトの名無しさん (ワッチョイ 0d9c-h+YV)
垢版 |
2021/04/08(木) 07:41:57.02ID:m1EPbJgQ0
いい加減ウソを撒き散らすのやめてくれないか
0750デフォルトの名無しさん (ワッチョイ e2ad-CoCA)
垢版 |
2021/04/10(土) 18:11:02.83ID:JQLnPe3C0
誰も知らない未知の言語の話が始まったようだ。
0751デフォルトの名無しさん (アウアウウー Sabb-cmdU)
垢版 |
2021/04/10(土) 20:22:44.15ID:g7cD6dOja
JUnitでテストクラス作って実行すると、ClassNotFoundが出る時はどうしたらいいですか?
Eclipseのプロジェクトをすべて消してイチから作り直したけど、原因が分からないから再発しそうで怖い
0753デフォルトの名無しさん (ワッチョイ 7b9c-08FK)
垢版 |
2021/04/10(土) 20:46:32.06ID:h0FPlujm0
>>751
テストしなければ問題ないよ!
0758デフォルトの名無しさん (アウアウクー MM9f-9hTS)
垢版 |
2021/04/11(日) 11:13:10.02ID:5s7yLoxeM
JavaからAccessデータベース起動したいのだが
Runtime execだと起動ぐらいしか出来ない
データベース操作するにはCOMブリッジ使えば良いのかUcanAccess使う方が良いのかよく分からない
Apache PoiではAccess操作出来ないよね?
0764デフォルトの名無しさん (ワッチョイ 0e01-I5oI)
垢版 |
2021/04/11(日) 12:16:19.31ID:UFkTSZWY0
自分ならUcanAccessでDBを読み書きして
JavaからVBScriptのプロセスを起動して
VBScriptでAccessを操作する

MS OfficeのAPIはCOMでCOMのGCは参照カウントでJavaや.NETのGCは世代別GC
オブジェクトのライフサイクルが違うので動作が不安定になる
PowerShellでOutlookを操作してみてそう思った
0774◆QZaw55cn4c (ワッチョイ 17e6-zNgl)
垢版 |
2021/04/11(日) 23:09:01.00ID:cqsrtu8s0
>>771
調べました、確かにそうですね
しかし、ODBC-JDBC ブリッジ(TypeI) を削除してしまうなんて私には悪手(の典型)に見えるのですがどうしてそんなことをしたのでしょうか?
0775デフォルトの名無しさん (ワッチョイ 7b9c-08FK)
垢版 |
2021/04/11(日) 23:35:21.34ID:/uA8+5nK0
主要なRDBMSはJDBC Type4ドライバーあるからね
もはやODBC-JDBCの役目は終わったってことでしょう
ODBC-JDBCで助かるのはほぼWindowsだけだし(わずかだけどLinuxにもODBCある)
マルチプラットフォーム目指すJavaにとってはODBCは邪魔になったってことよ
0776◆QZaw55cn4c (ワッチョイ 17e6-jJzx)
垢版 |
2021/04/12(月) 00:41:13.68ID:/ryqMGRo0
>>775
でも、腫瘍じゃない RDBMS とかが新たに出現したとか、マイナーなものがまだまだあるとか、今回のように access に access したいとか、そういうレガシーのために残して置いて「あげよう」とかいうのをバッサリ切るのは、さてどうなんでしょうか?
java は文法は OO としてはかなり保守的なのに、そういうところは荒っぽいのはチグハグな印象を持ちました
0777デフォルトの名無しさん (アウアウクー MM9f-QbJ2)
垢版 |
2021/04/12(月) 08:57:41.45ID:rGKItn7hM
とにかくUcanAccessが有って良かった
これでmdb横から更新して後は起動すれば起動時の設定でクエリー動かしてレポートまで出力出来る
JDBC-ODBCブリッジは有った方が良いとは思うけどね
0778デフォルトの名無しさん (ワッチョイ 7b9c-08FK)
垢版 |
2021/04/12(月) 11:29:16.67ID:uaenDdkP0
マイクロソフトだってmdb捨てたいんだよ
10年以上前からAccessの内部データベースはSQL Serverになっただろ
mdbじゃなければJDBCで読み書きできる
0782デフォルトの名無しさん (ワッチョイ 0e01-I5oI)
垢版 |
2021/04/12(月) 18:00:35.98ID:zhDyO8uL0
JavaならJasperReportsで良いじゃん
0786デフォルトの名無しさん (ワッチョイ 1701-ppuy)
垢版 |
2021/04/18(日) 16:07:59.82ID:T5zTJK1c0
ジェネリクスのワイルドカードについての解説を見ても、どういうことができるのかは分かるんですが、どんなときに使うのかイメージできません。
追加か取り出しのどちらかしかできなかったりするのもそうです。
参考例など教えてもらえませんか?
0788デフォルトの名無しさん (ワッチョイ 9f61-pvza)
垢版 |
2021/04/18(日) 18:55:46.68ID:3NiNUoOU0
引数戻り値というより、メソッドの中でどういう使い方するか、ってこと。
List<? extends X> list であれば、このlistから取り出して何かする。
for(X x: list) { x.x_method();}
List<? super X> list であれば、このlistに突っ込む処理をする。
list.append(x) // xはXかその派生クラスでなければならない。
0791デフォルトの名無しさん (ワントンキン MM4b-Ct+I)
垢版 |
2021/04/19(月) 12:44:35.25ID:ssZtrIutM
> List<? super X> list
これ、メソッドの中だとList<Object>と実質変わらんわけで、何の意味もないんだよ
他の総称型を使ったクラスやメソッドに渡るときに初めて意味があって、それは>>787の通り
0792デフォルトの名無しさん (ワッチョイ 9f61-pvza)
垢版 |
2021/04/19(月) 13:41:10.27ID:N8t4Nfz+0
「実質」ってなんだ?
少なくともコンパイルの時点では違うだろ。
バイトコードの話なら、そもそもワイルドカード以前の問題だし。
0793デフォルトの名無しさん (ワキゲー MM4f-woIF)
垢版 |
2021/04/22(木) 12:34:30.91ID:Y9XnOAWKM
OSはLINUXの64ビットで、JAVAプログラムを32ビットで作成する場合、
JDK、JREは32ビットを使わないとだめ?
0794デフォルトの名無しさん (ワッチョイ b79c-kFzn)
垢版 |
2021/04/22(木) 13:42:18.11ID:zxsKiFfb0
Javaプログラム(jar)には32ビット/64ビットという違いはないよ
0796デフォルトの名無しさん (ワッチョイ e2ad-On6t)
垢版 |
2021/04/23(金) 00:56:44.77ID:bQxdW3Mu0
>>793
Javaのプログラムを32bitで作成するという意味がよくわからない。
32bitのOSが動いている別のマシンで開発して64bitのLinux側で動かすという意味?
0797デフォルトの名無しさん (ワッチョイ 9b5f-APZP)
垢版 |
2021/04/23(金) 23:47:49.67ID:4MPjFjnd0
>>796
いまでも32ビットのコンピュータやOSはたくさんあるだろうが。
0798デフォルトの名無しさん (ワッチョイ 9b5f-APZP)
垢版 |
2021/04/23(金) 23:49:39.71ID:4MPjFjnd0
32ビット環境で動かすつもりなのに64ビット環境で作っているのはミスを誘引する。
0800デフォルトの名無しさん (ワッチョイ 6e61-T6Cp)
垢版 |
2021/04/24(土) 07:19:54.01ID:jio/enjn0
細かい点としてlong/doubleの上下位ビットのスレッド分離問題はでてくるかもしれない。
もっとも、32bit版JVMでも分離するような実装が存在するかどうか知らんが、仕様上は何も規定されてなかったはずなので。
0801デフォルトの名無しさん (ワッチョイ 9b5f-APZP)
垢版 |
2021/04/25(日) 22:25:57.97ID:Cso9+uky0
>>799
緩い型を使っていたり、メモリのアドレスに依存しているものを使っていた場合、32ビット環境で動かすとやはり想定外のことが起きる。JavaのVM仕様の解釈によっても異なる。
0802デフォルトの名無しさん (ワッチョイ 849c-UryE)
垢版 |
2021/04/25(日) 23:01:07.05ID:eJC3H6ar0
緩い型ってなに?
JNIならともかくJavaは型のサイズ明確に決まってるよ
intは32ビット、longは64ビットといった具合にね
型サイズまで処理系依存のC/C++とは違うのだよ
0803デフォルトの名無しさん (ワッチョイ b202-2k7y)
垢版 |
2021/04/25(日) 23:03:35.92ID:1lzxcbvy0
>>801
なるほど

「緩い型」とか「メモリのアドレスに依存」というと、それはつまり何なのでしょう
JNIでCプログラムを呼び出す場合、の話なのでしょうかね

あとVM仕様の解釈の違いの差異というと、何があるのでしょう
0804デフォルトの名無しさん (ワッチョイ 9b5f-APZP)
垢版 |
2021/04/26(月) 00:43:15.26ID:NgG9HQ7I0
JavaはJNIを必ず経由するわけではありません。
0805デフォルトの名無しさん (ワッチョイ e2ad-On6t)
垢版 |
2021/04/29(木) 17:17:21.49ID:YN7Pg05+0
>>797
あるけど、それが何か?
0806デフォルトの名無しさん (ワッチョイ dfbf-BDeo)
垢版 |
2021/05/02(日) 15:43:57.36ID:0nb/oYf90
JavaGoldって紫本を読んで黒本を解いていく地道な勉強ルートしかないですか?

なかなかモチベがあがらないし過去問の正解率も思うように上がらないので
もっと手軽な動画講座とかないかなと思ってるんだけども

勉強のためなのでお金はある程度出せます
0808デフォルトの名無しさん (ワッチョイ a75f-OedE)
垢版 |
2021/05/03(月) 14:23:25.78ID:1BUpMinW0
>>806
黒本解いて、間違えた問題の解説に書いてある理屈を、自分の言葉で別にまとめる。
再度、問題を解くときは、問題を忘れる程度に間隔を開ける。
連続で間違える問題は理解ができていないか、間違って理解している。
正解と不正解が混じる問題は、理解が不完全。
連続で正解する問題は、理解できている。
正解不正解にかかわらず、解説を読んで仕様の理解が重要。

あと再受験無料キャンペーンを利用して、初回を緊張せずに受ける。
落ちても、追加費用が掛からないのは、精神的にかなり楽。
試験に合格するだけならSilver取れてれば、追加の学習時間は100時間未満でも十分可能だと思う。
モチベーションの維持は個人で異なるので、試験を申し込んで締め切りを設定して、自分を追い込む。
自分はSE8Goldは上記のように学習して合格した。
動画で見てインプットだけしても、記憶に定着しづらい。
動画見る時間でアウトプットしたほうが、トータルの学習時間は短く済むと思う。
0810デフォルトの名無しさん (ワッチョイ df55-Ew5U)
垢版 |
2021/05/05(水) 15:55:35.45ID:OPDNplcn0
IntelliJ と Eclipse はどちらがおすすめですか?
0812デフォルトの名無しさん (ワッチョイ 879c-A/rE)
垢版 |
2021/05/05(水) 18:17:49.48ID:oo/oqlpM0
有料版を買うまたはWeb開発しないならIntelliJ IDEA
無料でWeb開発したいならEclipseで我慢
0813デフォルトの名無しさん (ワッチョイ bf01-oCIO)
垢版 |
2021/05/05(水) 18:18:55.21ID:72Et34kw0
>>810
ラムダ式とかStreamとか書きまくるならIntelliJがおすすめ
Eclipseは補完ができないことがたびたびある
自分は使い慣れてるからEclipse使ってるけど
0814デフォルトの名無しさん (ワッチョイ df55-Ew5U)
垢版 |
2021/05/05(水) 18:30:30.28ID:OPDNplcn0
>>811-813

ありがとうございました。

IntelliJを使おうと思います。

Sedgewick & Wayne『Algorithms 4th Edition』の公式ページではIntelliJが推薦されていて、
今まで使ったことがあるのは、Eclipseだったので迷いました。
0815デフォルトの名無しさん (ワッチョイ df55-Ew5U)
垢版 |
2021/05/06(木) 17:41:56.48ID:LXhEt+K60
https://algs4.cs.princeton.edu/code/edu/princeton/cs/algs4/Graph.java.html

「public Graph(In in)」というコンストラクターの中に以下の例外処理のコードがあります。

catch (NoSuchElementException e) {
throw new IllegalArgumentException("invalid input format in Graph constructor", e);
}

「NoSuchElementException」という例外をキャッチしていますが、この例外はどこで投げられるのでしょうか?
0816デフォルトの名無しさん (ワッチョイ df55-Ew5U)
垢版 |
2021/05/06(木) 17:43:34.60ID:LXhEt+K60
readInt()でしょうか?
0817デフォルトの名無しさん (ワッチョイ bf01-oCIO)
垢版 |
2021/05/06(木) 17:53:09.17ID:yYgm2/Q50
>>815
In.readIntのソース見ればわかるよね、ここで聞かなくても
0818デフォルトの名無しさん (ワッチョイ dfad-sT2V)
垢版 |
2021/05/06(木) 21:33:38.71ID:ajjDZVcw0
え? IntelliJ?

Kotlin もよろしく。
0819あかさたな (ワッチョイ 2301-IY8Z)
垢版 |
2021/05/07(金) 03:43:56.84ID:nGcb4RSK0
質問させていただきます。

「A=1を何倍ずつしていくと5回目に10000を超えるか」
という問いに対するプログラムを作りたいのですが、以下の様に書いたら「5」と表示されてしまい、上手く行きませんでした。

まず考え方としては、nの5乗が10000を超える時のnの値を出力する為に、for分の方ではiが1〜5までnのべき乗を繰り返すプログラムを作成し、それにwhile文で「Aが10000以下の条件」をつけ、nの値を+1ずつ増やして判定し続け、最終的にAが10000を超えた時点でのnを出力するプログラム書いたつもりです。

どこが間違っていて何を訂正すれば良いのかヒントやアドバイスなどをご教授いただければ幸いです。
お願いいたします。

public static void main(String[] args) {
int n=1 ;
int A=1;
while(A<=10000) {
for(int i=1;i<=5; i++) {
A=A*n;
}
n++;
}
System.out.println(n);
}}
0821デフォルトの名無しさん (ワッチョイ 2601-8aL7)
垢版 |
2021/05/07(金) 10:32:04.38ID:WFduYGps0
 test
0823デフォルトの名無しさん (ワッチョイ d35f-oySJ)
垢版 |
2021/05/13(木) 21:45:18.04ID:RydS++Y10
Java勉強しようと思うんだけど、とりあえずSilverやGoldの勉強したほうがいいですかね(実際に受けるかはともかく)
何か作るというのも考えたのですが、体系的な知識を積むのには向いてないかな、と思ったり。

言語はC#やPHP、VB.netなら業務で使ったことがあります。
0824デフォルトの名無しさん (ワッチョイ ea02-jjtP)
垢版 |
2021/05/13(木) 22:00:00.42ID:T5qlXmy/0
SilverやGoldは
当たり前だけどJavaの試験なので
実際には使わない機能や書き方も試験に出てくる
つまり実務とはちょっと方向性が違う
「体系的」というのが何を意味するのかに寄るけど
比較的新しいバージョンの機能の問題もでない
0825デフォルトの名無しさん (ワッチョイ d336-Ir/C)
垢版 |
2021/05/13(木) 22:41:33.30ID:AIJP2zOw0
OracleのJava資格の勉強は、我流で趣味プログラムを書いたり
仕事で誰かのコードを加工させられているだけでは身につかないような
Javaの細かい仕様や機能を浅く広く知識として身につくって感じだな

Java8以降に登場した新しい書き方、ラムダ式や関数型インターフェースなんて
下手にレガシーな現場に放り込まれるよりは
Goldの自習でもしてた方が手っ取り早く身につくんじゃないかという気はするし
0826デフォルトの名無しさん (ワッチョイ d336-Ir/C)
垢版 |
2021/05/13(木) 23:00:50.01ID:AIJP2zOw0
資格はあくまで言語仕様と標準ライブラリの知識にとどまるから
どんなフレームワークが栄えているのぞやとか
Javaでよく使われるデザインパターンだとか
おすすめのIDEやウェブコンテナはなんぞやとか
lombokとかjunitみたいな便利ツールとか
Javaで必要ないろんな周辺知識が抜け落ちるみたいなところはある
0827デフォルトの名無しさん (アウアウカー Sac3-TNhT)
垢版 |
2021/05/27(木) 11:38:44.78ID:FO5QR3uia
ClassCastExceptionについて教えてください。
AのサブクラスBが定義されていて、
AインスタンスをBにキャストすると、実行時にこの例外が発生すると思うのですが、どういった仕組みなのでしょうか。

B b = (B) new A();
b.method();

一行目で、bに代入されるアドレス先のインスタンスの型をなぜみにいってるんでしょうか?多相性を考えたときに二行目ではなく一行目で例外が発生することに違和感を覚えます!
0828デフォルトの名無しさん (ワッチョイ 979c-XjYx)
垢版 |
2021/05/27(木) 11:44:55.97ID:/NO+foY50
多態性の向きを勘違いしてるんじゃない?

子Bは親Aとして振る舞えるけど、親Aは子Bとして振る舞えないよ
0829デフォルトの名無しさん (アウアウカー Sac3-TNhT)
垢版 |
2021/05/27(木) 12:01:09.85ID:FO5QR3uia
>>827
よく考えたら、二行目の間違いが発生してから例外処理しようとしたらぶっ壊れますね。
解決しました。
0830デフォルトの名無しさん (アウアウカー Sac3-TNhT)
垢版 |
2021/05/27(木) 12:05:29.55ID:FO5QR3uia
>>828
それは理解してます。

変数bからしたら実体が何かというのはBという型情報だけ知ってればよくて、メッセージ送信先で問題があれば例外が発生すればいいのにと思いました。

すみません、ダウンキャストって多相性とはちょっと違いますね。
0832デフォルトの名無しさん (ワッチョイ 3761-lZiV)
垢版 |
2021/05/27(木) 12:30:11.17ID:pbmUYQ560
>>830
早め早めにエラーが出ることの有用性を全く理解できないなら、Java使うのやめた方がいいよ。
0834デフォルトの名無しさん (ワッチョイ 7601-L4y7)
垢版 |
2021/05/27(木) 12:39:07.12ID:2WTxyTqA0
代入時にエラーになるとしても実行しないと型の違いによるエラーがわからないのがつらいよね
ダウンキャストは禁止するべきだと思う、Javaはもっとハードボイルドになって欲しい
0835デフォルトの名無しさん (アウアウカー Sac3-TNhT)
垢版 |
2021/05/27(木) 12:55:02.44ID:rDD7tIjXa
>>832
そもそも多相性の話とは違うという誤りがあったけど、この質問自体に有用性が理解できないって話はしてないだろ、文盲バカか?
もとになっているオブジェクト指向のモデルと、それを実現する言語設計の関係の話で、何を考えそのようにしているのか、どうバランスをとってるのかって話だろ。
みんなは有用性からそうしてるって教えてくれているけど、お前のは質が違うぞ。
日本語読めない人はプログラミングやめたほうがいいよ。
0836デフォルトの名無しさん (ワッチョイ 979c-XjYx)
垢版 |
2021/05/27(木) 13:14:04.17ID:/NO+foY50
>>830
いや理解してないでしょ

親Aは子Bとして振る舞えないんだから B にキャストしないでよ
実行時クラスまでしかダウンキャストできないです
0837デフォルトの名無しさん (アウアウカー Sac3-TNhT)
垢版 |
2021/05/27(木) 13:23:10.93ID:rDD7tIjXa
>>836
振る舞えないのでキャストできないということは、承知の上で、例外が発生する時機の疑問でした。

でも、例外はメッセージを受ける側で発生するので、無理なキャスト命令がきたら例外を発生するのは当たり前でした。
自分のアホな質問でした!という結論です。ごめんなさい。
0838デフォルトの名無しさん (アウアウカー Sac3-TNhT)
垢版 |
2021/05/27(木) 13:27:59.87ID:rDD7tIjXa
>>837
すみません、結論が違ってました!
振る舞えないのにメッセージを送ったら壊れるので、送られる前のキャスト時に例外が発生するのは当たり前って話でした!

とにかくアホな質問をしました。ごめんなさい。
0839デフォルトの名無しさん (アウアウカー Sac3-TNhT)
垢版 |
2021/05/27(木) 13:32:09.53ID:rDD7tIjXa
すみません、先に例外を出さないといけないことはわかったのですが、

参照型のキャストは実際にはなにが行われているのか仕組みを誰か教えていただけないでしょうか。
0841デフォルトの名無しさん (アウアウカー Sac3-TNhT)
垢版 |
2021/05/27(木) 13:53:31.68ID:rDD7tIjXa
>>840
やっぱり何もしてないんですね!ありがとうございます!
すっきりしました!
0842デフォルトの名無しさん (スップ Sdf3-Fqqn)
垢版 |
2021/05/31(月) 13:51:39.18ID:24tmjC+hd
struts2.3からstruts2.5にバージョンアップ(jar交換)したところ、Tomcat起動時に以下のエラーが発生しました。

何のエラーなんでしょうか?

org.apache.catalina.core.StandardContext filterStart

重大:フィルタ�[struts2]�フ起動中の例外です

java.lang.RuntimeException: Unable to load bean org.apache.struts2.views.velocity.VelocityManager(org.apache.struts2.osgi.VelocityBundleResourceLoader) - [unknown location] - Class: com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector

File:ContainerImpl.java

Method: inject
0844842 (スップ Sdf3-Fqqn)
垢版 |
2021/05/31(月) 14:42:02.51ID:24tmjC+hd
>>843

レスありがとうございます。
パッケージ名も変更しましたし、springのバージョンもアップデートしました。
velocitymanagerは移動してないですよね。
0845842 (スップ Sdf3-Fqqn)
垢版 |
2021/06/02(水) 09:55:50.74ID:iAyvCfe5d
エラー内容はVelocityManagerが場所がわからず、ロードできないという事でしょうか?


org.apache.catalina.core.StandardContext filterStart

重大:フィルタ[struts2]�フ起動中の例外です

java.lang.RuntimeException: Unable to load bean org.apache.struts2.views.velocity.VelocityManager(org.apache.struts2.osgi.VelocityBundleResourceLoader) - [unknown location] - Class: com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector

File:ContainerImpl.java

Method: inject
0846デフォルトの名無しさん (ワッチョイ db01-iznn)
垢版 |
2021/06/02(水) 10:17:54.25ID:SnBKv6wO0
それっぽいけど何が原因かわからない
スタックトレース出てない?
0847842 (スップ Sdf3-Fqqn)
垢版 |
2021/06/02(水) 10:49:09.77ID:iAyvCfe5d
>>846
文字制限で一部ですが。

14:54:13.365 [localhost-startStop-1] ERROR org.apache.struts2.dispatcher.Dispatcher - Dispatcher initialization failed

java.lang.RuntimeException:java.lang.RuntimeException: Unable to load bean org.apache.struts2.views.velocity.VelocityManager (org.apache.struts2.osgi.VelocityBundleResourceLoader) - [unknown location]

at com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:286) ~[struts2-core-2.5.26.jar:2.5.26]



at org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:73) [struts2-core-2.5.26.jar:2.5.26]

at org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:61) [struts2-core-2.5.26.jar:2.5.26]

at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285) [catalina.jar:8.5.28]

�F

at�java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_161]

at�java.lang.Thread.run(Unknown Source) [?:1.8.0_161]
0849デフォルトの名無しさん (ワッチョイ db01-iznn)
垢版 |
2021/06/02(水) 11:18:32.23ID:SnBKv6wO0
省略されたところに原因があると思うんだよねー
jarが足りないとかDTDが違うとか

こことかにスタックトレース全部貼って欲しい
https://friendpaste.com/
0850デフォルトの名無しさん (ワッチョイ db01-iznn)
垢版 |
2021/06/02(水) 11:20:14.41ID:SnBKv6wO0
RuntimeExceptionは本当の原因をCaused byでラッピングしてて
真相はCaused byを見ないとわからないことが多々あるんです
0856デフォルトの名無しさん (ワッチョイ 0f2c-W41i)
垢版 |
2021/06/26(土) 19:02:39.09ID:J1x7Bras0
スレッドセーフでない…別のスレッドで…仮に…同じクラスを…読み書きした場合…
どうなるの?…プリミティブのint、long、doubleは…以前の値、新しい値、混ざった値…
になるのは解ってるけど…クラスだったらどうなる?
0859デフォルトの名無しさん (ワッチョイ 4f9c-eHno)
垢版 |
2021/06/27(日) 03:14:10.84ID:nwZ7YrBt0
ふつうはクラスをアンロードしたりはしない
クラスをアンロードしないなら複数スレッドから触っても問題ない

クラスではなくインスタンスの参照を保持するオブジェクト変数のことであれば、volatile 付けるか synchronize 等で同時実行制御すれば安全になる
0860デフォルトの名無しさん (ワッチョイ 4f9c-eHno)
垢版 |
2021/06/27(日) 03:15:28.81ID:nwZ7YrBt0
オブジェクト変数という言い方はおかしいか
オブジェクト型フィールドかな
0861デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
垢版 |
2021/06/27(日) 09:13:25.86ID:KGPlQ6fHM
>>856
intと参照への代入は古い値か新しい値のどちらかになる
つまりアトミックではある
longとdoubleなら混ざった値になることもある
ただ、同じクラスを書き換えるって言い方が怪しいな
クラスやインスタンスのメンバの値を書き換える場合の振る舞いはそのメンバの型に依存する
0862デフォルトの名無しさん (ワッチョイ 4f61-hdpQ)
垢版 |
2021/06/27(日) 09:17:18.87ID:nIt5B8/A0
volatileはその名が示す通り、排他制御のためのものではない。
0864デフォルトの名無しさん (ワッチョイ 4f9c-eHno)
垢版 |
2021/06/27(日) 10:37:59.39ID:nwZ7YrBt0
>>862
Java 5からvolatileの仕様が変更されたんだよ
64ビット値の書き込み・読み取りがアトミックになることも保証されるようになってる
0865デフォルトの名無しさん (ワッチョイ 4f9c-eHno)
垢版 |
2021/06/27(日) 10:47:07.09ID:nwZ7YrBt0
volatile の仕様変更について詳しく知りたかったら JSR-133 で検索してね
0869デフォルトの名無しさん (ワッチョイ 3f01-0Hhk)
垢版 |
2021/06/27(日) 11:38:41.54ID:115i7XI20
>クラスではなくインスタンスの参照を保持するオブジェクト変数のことであれば、volatile 付けるか synchronize 等で同時実行制御すれば安全になる

この書き方がいろいろ微妙だからでしょ

変数への読み書きがatomicかどうかで言えば
参照はvolatileつけなくても常にatomic
primitiveはlong, doubleを除いてatomic
long, doubleはvolatileをつければatomic
0873デフォルトの名無しさん (ワッチョイ 3f01-0Hhk)
垢版 |
2021/06/27(日) 16:11:30.15ID:115i7XI20
>>872
何をもってスレッドセーフと言うかという前提の違いなのかな

volatile付ければ安全って書いてるから
ほぼ同時にスレッド1でwriteしてスレッド2でreadした時に
実際に実行された順序通りの結果が保証されてなければ
writeやreadはスレッドセーフじゃないって考え方でしょ?

オレは順序の保証がなくてもアトミックならreadやwrite自身はスレッドセーフって考え方
順序が問題になるような使い方してるならvolatile付けるだけじゃ駄目だしね
0874デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
垢版 |
2021/06/27(日) 16:48:02.42ID:FgMNC6o4M
>>873
「volatileが排他制御のためのものである、なんて言ってる人いないよね」ってのが俺の発言だよ
反論するなら暗に名に「言ってる人がいるかどうか」がポイントであって、各人が安全をどう捉えるかの違いなんてどうでもええがな
反論ではなく皆さん気を付けましょうねという話ならわかる
0876デフォルトの名無しさん (ワッチョイ 3f01-0Hhk)
垢版 |
2021/06/27(日) 17:18:56.98ID:115i7XI20
「volatileを付けると安全になる」

これが微妙なんよ
volatileをスレッドセーフティを提供する手段として考えてるのが超微妙

排他制御云々書いた人の考えはわからないけど
volatile付ければ安全て言われるとそりゃないわってなる
0877◆QZaw55cn4c (ワッチョイ 0fe6-99zR)
垢版 |
2021/06/27(日) 17:28:21.23ID:I46qTe+f0
>>876
C/C++ では volatile なんて全く当てにぜずに、例えば posix-thread を使う(し C++11 lator では p-thread が取り込まれてしまった)のですが、Java ではまだ volatile を当てにするコードが生き残っているのですか?
0878デフォルトの名無しさん (テテンテンテン MM4f-LEZG)
垢版 |
2021/06/27(日) 17:44:55.74ID:FgMNC6o4M
volatile付けるだけで安全なんて発言ないよ
その解釈には無理がある
文脈を理解できない人にまでいちいち配慮してらんないよ
スレ民の個々のスキルなんてマチマチなんだからvolatileをうまく使えるかどうかは本人次第
スレッドセーフティを語る上で可視性を軽視している方が微妙だと思う
0879デフォルトの名無しさん (ワッチョイ 0f2c-m5uv)
垢版 |
2021/06/27(日) 18:54:32.76ID:2/k3XUCT0
プリミティブの振舞いは知ってるんだけど…Stringを同時に…読み書きすると…どうなりますか?
結局…スレッドセーフにするんだけど…今まで…なんで動いてたのかって…事で…
0880デフォルトの名無しさん (ワッチョイ 0f2c-m5uv)
垢版 |
2021/06/27(日) 19:22:39.09ID:2/k3XUCT0
全ての参照割り当ては…アトミックと…言っているが…本当なんでしょうか?
https://stackoverflow.com/questions/7421558/is-string-s-foobar-atomic

Stringなので…クラスポインタ…書き換える所で…でっていう事で…
クラッシュしなかったら…間違っててもいいんだよ
とりあえず…運が良かっただけだろうね…直しとくわ…
0881デフォルトの名無しさん (ブーイモ MM53-eHno)
垢版 |
2021/06/27(日) 19:32:14.10ID:Kcllj5ZjM
>>876
排他制御をコードブロック(複数ステートメント)にのみ使うものだと思ってるのかな?そこが認識が一致しない原因かもしれない

複数ステートメントだったらsynchronized等を使って排他制御する
これはあなたの言う通り、間違ってないです
でも単一ステートメントでフィールドの読み取り・書き込みをする場合は?
これもlongやdoubleの場合は排他制御が必要になる
もちろん複数ステートメントの場合と同じくsynchronized使ってもいいんだけど、この場合はvolatileでも代用できる
上位32ビットの書き込みと下位32ビットの書き込みの間に他スレッドからの読み取りがおこなわれないことが保証されるのだからこれも立派な排他制御ですよ
0883デフォルトの名無しさん (ワッチョイ 0f2c-m5uv)
垢版 |
2021/06/27(日) 20:12:36.74ID:2/k3XUCT0
結局…動いてたのは…アトミックだったからだろう…直すか直さないか…しとくわ…
ありがとう…
0885デフォルトの名無しさん (ワッチョイ 4ffd-wfqF)
垢版 |
2021/06/30(水) 18:50:01.91ID:SrJcnOwy0
Java Silverって黒問さえ出来れば同じような問題が出るのでしょうか
受験者の方のご意見いただけたらと思います。
0886デフォルトの名無しさん (ブーイモ MM0f-1C7k)
垢版 |
2021/06/30(水) 19:30:31.78ID:QIg09vqWM
>>882
JVMの中間コードは元よりも少しだけ機械が処理しやすい形に変換されたソースコードに過ぎず、実際のマシンの動作と対応するものではない
そんなものを見たところで何の証拠にもならん
お前の好きなルビ糞のVMだって一緒だ
巣に帰れ
0887デフォルトの名無しさん (ワッチョイ ff01-V8Fg)
垢版 |
2021/06/30(水) 21:37:57.25ID:Hi9reO8F0
>>885
ほとんど同じだった、ブロンズ、シルバー、ゴールドとったけど
ブロンズが一番難しかった、オブジェクト指向の概念とかよくわからん
0890デフォルトの名無しさん (ワッチョイ 0dfd-a+1V)
垢版 |
2021/07/12(月) 13:43:04.09ID:dUo50+T10
Javaの勉強始めたところですが、メソッドのソースって何処を見れば掲載されていますか?
equalsメソッドをAPIドキュメントで見ても、
サマリーやパラメーターや条件は記載さているのですが、
以下のソースはどこ見ればわかるのでしょうか?

public boolean equals(Object obj) {
return (this == obj);
}
0892デフォルトの名無しさん (ワッチョイ 0dfd-a+1V)
垢版 |
2021/07/12(月) 14:23:03.18ID:dUo50+T10
現時点では必要はないかと思いますが
ご参考に、どのようなところを調べれば分かるのでしょうか?
ご教示いただけたら幸いです。
0894デフォルトの名無しさん (ワッチョイ ad9c-mQSs)
垢版 |
2021/07/12(月) 15:01:08.80ID:rKHfv/e/0
いまのJDK配布物にはsrc.zip同梱されてないんだっけ?
IDEにもよるけどsrc.zipアタッチしておけばメソッド名クリックで中身を潜っていけるのでおすすめ
0895デフォルトの名無しさん (ワッチョイ 9b01-s9p1)
垢版 |
2021/07/12(月) 15:05:11.24ID:dUQus4h70
EclipseならF3でOK
0897デフォルトの名無しさん (オイコラミネオ MM51-XJ14)
垢版 |
2021/07/14(水) 17:00:58.19ID:x3WS9adnM
Angularが良くわかないんだけど、例えばmd-toobarとmat-toolbarはなにが違うの?
いま触っているのが全部md-xxxだけど、ググるとmat-xxxばかり
package.jsonも、angularーmaterialになっているけど、ググって出てくるのは@angular/materialで、違いが分からない
0900デフォルトの名無しさん (スプッッ Sdc2-Uwzp)
垢版 |
2021/08/17(火) 23:53:03.30ID:6gOpyHQGd
マルチです。すみません
どうか教えてください
以下のようにarrayList要素を2つ含んだarrayListがあります。
alist = [["a","b","c"],["d","e","f"]]

["a","b","c"]を取得したい場合は以下です。
alist.get(0);

ではarrayList["d","e","f"]の"d"を取得したい場合はどのように書けばいいのでしょうか?

alist.get(0).get(0)とは書けませんでした。
0901デフォルトの名無しさん (ワッチョイ ed9c-TWS8)
垢版 |
2021/08/18(水) 06:34:54.57ID:4h49Xkkm0
ジェネリクスList<List<T>>を使ってないんじゃないの?
getしたのがObject型だとgetメソッドがないことになる
ジェネリクスかキャストしてみて
0903デフォルトの名無しさん (ワッチョイ 42ad-NTPF)
垢版 |
2021/08/18(水) 14:46:55.39ID:vS4c4jwy0
>>900
alist.get(1).get(0)

これできない?
できないとすると本当に2重の ArrayList になっているのかだな。
もし一番内側のリストが ArrayList ではなく実は配列というのであれば alist.get(1)[0] になる。
0905デフォルトの名無しさん (ワッチョイ e510-Uwzp)
垢版 |
2021/08/18(水) 21:10:08.46ID:EBcQPiZh0
ありがとうございます。無事躓いた箇所をパスできました。
結論から言ってジェネリクスのしていがされておりませんでした。
ただ字分が不勉強なこともあり、get(0)で取り出したものをnew listに入れてそこからgetすることとしました。

喫緊の課題だったとはいえ、マルチに関わらず回答寄せて下さりありがとうございます。
今後はマルチにならぬよう気をつけます。

>>903
回答下さりありがとうございます。また申し訳ないです。
0906デフォルトの名無しさん (ワッチョイ 4dda-Vg+4)
垢版 |
2021/08/19(木) 14:33:15.26ID:upZnt1cl0
初歩的な質問ですみません。
ある文字列を半角の?マークで分割したいのですが、
splitメソッドに?を渡そうとするとエラーが出ます。
バックスラッシュでエスケープを試みても同じです。

半角の?を文字列として、メソッドに渡す方法はありませんでしょうか?
0907デフォルトの名無しさん (ブーイモ MMb6-Vt5m)
垢版 |
2021/08/19(木) 14:53:50.75ID:XQ1nrb4AM
"?"としたまえ
0908デフォルトの名無しさん (ワッチョイ 4601-Tn3C)
垢版 |
2021/08/19(木) 15:10:56.83ID:ABdCgNW20
>>906
\\?
これでok
0910デフォルトの名無しさん (ワッチョイ 1f5f-zH/y)
垢版 |
2021/08/20(金) 12:47:48.85ID:QkMgvsE90
Javaでオンラインゲーム作りたいんですが
できますか?
0912デフォルトの名無しさん (ワッチョイ ff01-7woR)
垢版 |
2021/08/20(金) 13:54:53.34ID:7UgQcF6b0
主語もわからんのにそんなこと言って大丈夫なの?
0916デフォルトの名無しさん (ワッチョイ 1f5f-zH/y)
垢版 |
2021/08/21(土) 12:47:02.52ID:qzzQq94j0
ぽくの構想のオンラインゲームは
0.1秒おきに通信が成功しないとならぬのです
でもそんな無料高速サーバーどこにあるのか全然わかりません
ググっても見つかりませんでした
だれか教えてください
0917デフォルトの名無しさん (ワッチョイ 1f9c-Z3+k)
垢版 |
2021/08/21(土) 14:42:56.57ID:EfeYC8gY0
>>916
localhostっていうサーバーが超高速らしいです
1ms未満で応答返ってきます!
0918デフォルトの名無しさん (ワッチョイ 1f5f-zH/y)
垢版 |
2021/08/21(土) 14:46:08.06ID:qzzQq94j0
>>917
ありがとうございます!!
0919デフォルトの名無しさん (ワッチョイ 7fad-WNkQ)
垢版 |
2021/08/22(日) 05:14:13.60ID:A76jzPe90
うーん・・・
0924デフォルトの名無しさん (ワッチョイ 1f2f-nV9M)
垢版 |
2021/08/22(日) 15:31:06.54ID:SRwqp0HO0
>>923
なんのニオイですの?
0927デフォルトの名無しさん (ワッチョイ ffba-hCLa)
垢版 |
2021/08/23(月) 20:00:55.11ID:qzHQYW1V0
BufferedImage[] imgs
ImageIO.write(imgs[i], "jpeg", new File(i+".jpg"));にファイルを書き出したところ、プロジェクトファイルの直下にファイルが書き出されます。
ファイルの書き出し先は指定できるのでしょうか?
0929デフォルトの名無しさん (ワッチョイ ffba-hCLa)
垢版 |
2021/08/23(月) 22:32:48.53ID:qzHQYW1V0
>>928
ありがとうございます。出来ました。
0933デフォルトの名無しさん (ワッチョイ 3d5f-4thN)
垢版 |
2021/09/01(水) 12:05:25.41ID:eI7tP8IQ0
なぜ
int a[]=new int[10];
だといけないのでしょうか?
int[] a=new int[10];
にしろと命令されます
0934デフォルトの名無しさん (アウアウウー Sa85-aN2E)
垢版 |
2021/09/01(水) 13:01:14.71ID:t2r33tCJa
上はint型のa[]って名前の変数にint型配列を代入しようとしてるからだめ
下はint型配列のaって名前の変数にint型配列を代入してるから正しい

さすがに変数宣言の書き方はググってたどり着けるようにしないとこの先厳しいと思うよ
0935デフォルトの名無しさん (ワッチョイ 8601-lA7B)
垢版 |
2021/09/01(水) 13:10:44.21ID:1+gvptgP0
>>934
文法的にはどちらも正しいよ
0936デフォルトの名無しさん (ワッチョイ 8601-lA7B)
垢版 |
2021/09/01(水) 13:14:42.64ID:1+gvptgP0
int a[]=new int[10];

これは古い書き方
C言語から移行しやすいようにしたんだろうね

int[] a=new int[10];
これで統一したほうがわかりやすいからだと思う
0938デフォルトの名無しさん (テテンテンテン MM66-RNeN)
垢版 |
2021/09/01(水) 18:20:43.24ID:vuix+QPUM
「型の情報 変数名」という語順の原則を破る例外的な文法規則だからね
C言語をデザインした人が当時はどっちの書き方もアリだろと感じたけど、やっぱ新規のソースではイレギュラーは少ないほうがいいよ
0943デフォルトの名無しさん (ワッチョイ 5f02-KrGZ)
垢版 |
2021/09/04(土) 14:07:14.98ID:ptFG7Yts0
Spring Boot, h2, @Entityでテーブルを自動生成しようとしているのですが
失敗します。このバージョンの組み合わせでは動かないという情報は
どこかないでしょうか?
0945デフォルトの名無しさん (ワッチョイ 5fad-YUgI)
垢版 |
2021/09/05(日) 04:00:09.94ID:OxVmaStA0
牛後となるも鶏頭となるなかれ
0947デフォルトの名無しさん (ワッチョイ 5fad-YUgI)
垢版 |
2021/09/05(日) 15:37:15.63ID:OxVmaStA0
午前の紅茶も売れば倍儲かるのに何故売らないのか?
0949デフォルトの名無しさん (ワッチョイ 675f-lYlz)
垢版 |
2021/09/06(月) 12:43:21.63ID:Ubm/Rxbd0
他の言語でやればいいんじゃない?
0953デフォルトの名無しさん (テテンテンテン MM8f-qY5B)
垢版 |
2021/09/09(木) 08:45:33.09ID:4hw+ZbsfM
その選択にはあまり意味はない
KotlinはJavaのスーパーセットなので、Kotlinを習得するためには実質的にはJavaを習得しなければならない
モノが作れるようになるまでの時間をなるべく短縮したいならJavaから入ったほうがよい
その上でKotlinに進んでも学んだことは一切無駄にならない
0954デフォルトの名無しさん (ワッチョイ e72f-FGfd)
垢版 |
2021/09/09(木) 11:15:34.97ID:w4gLCK1Q0
サブセットじゃないか?
0957デフォルトの名無しさん (ワッチョイ bf01-sU3j)
垢版 |
2021/09/09(木) 12:48:33.38ID:ZSdmmObG0
皮肉という言葉を使うやつはバカのサブセット
0964デフォルトの名無しさん (ワッチョイ 5fad-YUgI)
垢版 |
2021/09/09(木) 23:10:50.58ID:kagvhl0N0
Kotlinもよろしく
0967デフォルトの名無しさん (ワッチョイ 799c-/nPW)
垢版 |
2021/09/10(金) 10:41:38.47ID:0CqCA27A0
9月21日? 遅いなあ
Oracle Open JDK は9月14日じゃなかったか
0970ハノン ◆QZaw55cn4c
垢版 |
2021/09/15(水) 17:21:18.08
>>968
迷走してますね‥例の訴訟はどうなったのでしょうか?API にも著作権があるのでしょうか?
0972デフォルトの名無しさん (ワッチョイ 799c-/nPW)
垢版 |
2021/09/15(水) 17:38:38.00ID:9XE/xHox0
今日のJavaがあるのはOracleに買収される前にJavaをオープンソースとして公開したSunの功績よな
0974デフォルトの名無しさん (ワッチョイ 5efc-zp+c)
垢版 |
2021/09/16(木) 03:18:44.71ID:Z8VDyrNT0
>>968
LTSのアップデート一年付きということはupstream(openjdk)の
非LTS2つ分のバグ・セキュリティフィックスpickするつもりかな。

Oracle DBのお布施が値上がりして信者が離れたからjavaの新ライセンスで
ボろうと思ったら競合が独自ビルド乱発してoracle jdkが選ばれる可能性が低く
なったから方針転換ってところか。googleへのトロールも失敗したからまあ、仕方ないね。
失ったのJWSくらいだし完全に裏目に出たね。java MEオワッタけど。
0976デフォルトの名無しさん (ワッチョイ bf01-lezs)
垢版 |
2021/09/17(金) 11:51:47.01ID:Vl2ztsNm0
Javaを開発してるのはOracleですけど
OracleになってからJavaの開発進み出しましたけど
Sunのときは新規開発は塩漬けになって死に行く運命でしたけど
0977デフォルトの名無しさん (ワッチョイ bf01-lezs)
垢版 |
2021/09/17(金) 11:52:44.81ID:Vl2ztsNm0
OracleほどJavaに金注ぎ込んでる会社はないよ
0979デフォルトの名無しさん (ワッチョイ bffc-tt/w)
垢版 |
2021/09/17(金) 15:04:29.57ID:yCUwYRrA0
技術についていけないんじゃなくて手間のかからない金のなる木がほしいんだろ。

>>976
open jdkに熱心に関わってて金持ってる大企業がoracleとredhatしか居ないじゃん。
open jdk以降アホほど増えたバグ潰しまくってたのsunだし、
7の仕様策定遅れたけど途中から買収の話も同時進行させてたし、
そもそもoracleは7をリリースさせたことをアピールして8もうまく言ってるって
ホラ吹いてたけど、7,8,9でスケジュール切り直して、8,9,10でまた切り直して順調じゃなかったし。
oracleはtop contributorの一つでしかない。
open governanceの実質トップはIBMが距離置いた今redhat。
oracleがjavaの権利持ってることがコミュニティの懸念材料だよ。
open jdkの利益になる提案は受け入れられるけどそれ以外はjavaコミュニティ全体から警戒されてる。
8で馬鹿なバグ大量に出すし鯖以外のエンジニア大量にクビにするしjava magazineで宣伝始めるし、
javafxやるやる詐欺だったし、JEP作ったくらいの功績しかない。
11の仕切り直し以降うまくいってるからとりあえず問題ないけどoracleだけの成果じゃない。
0981デフォルトの名無しさん (ワッチョイ bf01-lezs)
垢版 |
2021/09/17(金) 15:15:44.20ID:Vl2ztsNm0
>>979
OracleがSunを買収してからラムダ式やモジュールなど
新しい機能がリリースされたのは事実だよ

Sunはまったくやろうとしなかった
SunはJavaをオープンソースにして捨てたも同然の状態だったよ

IBMとRedHatはつい最近CentOSを乗っ取って有名無実化したばかりだし
一番信用できない会社

JavaのアーキテクトはBrian GoetzでBrian Goetzを雇ってるのはOracle
Javaを進化させてるのは間違いなくOracle
0982デフォルトの名無しさん (ワッチョイ bf01-lezs)
垢版 |
2021/09/17(金) 15:19:38.51ID:Vl2ztsNm0
>>980
OracleがDBで悪辣なことやってるのは知ってるけど
OracleがJavaに投資してるのも事実だし
JavaにとってはOracleがSunを買収したのは良いことだった

Oracleを信奉することがバイアスであるように
Oracleだからダメだというのもただのバイアスでしかないと思うよ
0986デフォルトの名無しさん (ワッチョイ 9fad-QxrA)
垢版 |
2021/09/18(土) 03:39:14.25ID:iNoegsL20
BIOS
0988デフォルトの名無しさん (ワッチョイ 775f-W1il)
垢版 |
2021/09/18(土) 16:53:27.01ID:JS69KVf+0
昔はプログラミングするときは10万円のソフト買わないといけなかったので断念してた
でもそんなときJavaという無料の言語に出会ってプログラミングの楽しさを味わえたんだ
ありがとうそしてさようなら
0990デフォルトの名無しさん (ワッチョイ f72f-fBlf)
垢版 |
2021/09/18(土) 17:38:52.02ID:eYCUxFmJ0
>>989
学生なら割引で万札一桁で買えたけど
そうじゃないならものすごく高額だったと思う。
0993デフォルトの名無しさん (ワッチョイ 9f55-I/Yj)
垢版 |
2021/09/18(土) 18:21:25.82ID:8f+D4Ygb0
今、プログラミング言語を勉強するなら何を勉強すればいいのでしょうか?

Sedgewick & Wayneの『Algorithms 4th Edition』ではJavaが使われているので、Javaでいいのかと思っていました。
0994デフォルトの名無しさん (ワッチョイ 9f55-I/Yj)
垢版 |
2021/09/18(土) 18:22:07.60ID:8f+D4Ygb0
Pythonなどの本格的でない?言語ではなく伝統的な本格的な言語の中でどれがいいかという話です。
0996デフォルトの名無しさん (ワッチョイ f79c-zU6I)
垢版 |
2021/09/18(土) 23:15:25.88ID:rxOYdWEq0
Javaは一世を風靡したから開発者人口が多いんだよね
コミュニティが活発というメリットもあるけど
日本の業務システム開発現場では供給過多で買い叩かれることが多い印象、、
0997ハノン ◆QZaw55cn4c (ワッチョイ 9f47-o3tO)
垢版 |
2021/09/19(日) 00:14:42.10ID:QR0Sxfu+0
>>993
Java で書いてある本が手元にあるのなら Java でいいかと
ただし様々なデータ構造を詳細に把握したいのなら、やはり C/C++ になるかと思います、セジウィックがどうやってC/C++の二重ポインタと、それにまつわる複雑なデータ構造(赤黒木とか)を解説しているのか興味がありますね
0999デフォルトの名無しさん (ワッチョイ 9fad-qDHA)
垢版 |
2021/09/19(日) 02:37:24.50ID:604+rJZo0
Kotlin もよろしく
1000デフォルトの名無しさん (ワッチョイ 9f9f-/uU/)
垢版 |
2021/09/19(日) 11:02:32.72ID:lVUxDAkY0
Javaでプログラミングの基礎を学んで開発戦士のアビリティーをゲット
熟練度がそこそこ上がったら上位職にあたるKotlin使いにクラスチェンジしてアンドロイド世界にフルダイブ
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 500日 12時間 50分 25秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。

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