[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 05/05 05:37 / Filesize : 295 KB / Number-of Response : 1047
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Java入門・初心者質問スレ Part.8



1 名前:デフォルトの名無しさん mailto:sage [2018/06/07(木) 20:17:08.87 ID:N8MsK2gr0.net]
Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.7
mevius.5ch.net/test/read.cgi/tech/1515549964/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured

395 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 12:54:17.01 ID:gxBSyOuw0.net]
子クラスで、親クラスと同じ名前のフィールドを定義したら、ダメ!
オブジェクト指向としては、明らかな間違い!

同名のメソッドは、上書き(オーバーライド)するけど、フィールドはしない

396 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 13:14:33.12 ID:gxBSyOuw0.net]
for (Character c : list) { c.attack( ); }

list に、モンスターや勇者などを混ぜて入れて、
その親クラスのCharacter として、抽象化して扱えば、
if 文で、モンスターや勇者の処理を、場合分けせずにすむ

モンスターや勇者は、それぞれ実体に基づき、自動的に攻撃する。
見かけの型は親クラスだが、攻撃は子クラスのメソッドを呼ぶ

つまり、抽象化する事によって、型による分岐がなくなる!
逆に言えば、型によって分岐していたら、オブジェクト指向ではない

if モンスター型なら
if プレイヤー型なら

397 名前:デフォルトの名無しさん [2018/08/25(土) 13:24:39.80 ID:KMExyDFm0.net]
>>379
オブジェクト指向ではポリモーフィズムが大事なんだって考えだね

398 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 13:51:30.74 ID:QXNuAaPsM.net]
時代遅れな考えだよね
最近は関数型の影響によって型による分岐が市民権を得つつある
C#もついにパターンマッチを導入して型による分岐を積極的に推奨するようになった
Javaも10年くらいしたらそうなるよ

399 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 14:36:23.71 ID:t7aLMQyua.net]
推奨はしてない
ポリモーより型スイッチの方が書きやすい場合も存在するよね
全否定しないでそういうのもサポートしていこうよってだけ
型スイッチがポリモーを置き換えるかというと全くそんなことはなくて
せいぜいデータドリブンのアプローチで書かれた僅かな部分の記述が綺麗になる程度

400 名前:デフォルトの名無しさん [2018/08/25(土) 14:53:44.82 ID:KMExyDFm0.net]
>>382
なるほど、それなら分かる

401 名前: mailto:sage [2018/08/25(土) 15:45:54.17 ID:gxBSyOuw0.net]
>>379
のやり方では、新たにモンスターを追加しても、ソースコードを修正しなくてよい

もし型によって分岐していたら、大変。
すべての分岐箇所を修正して、テストしないといけない!

項目が追加された際の、分岐箇所の修正をなくすために、オブジェクト指向が作られた

402 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 18:14:08.91 ID:b/emt3jR0.net]
>>375
ありがとうございます。いけました
この本該当ページにHeroクラスしか書いてないから
コンパイル失敗したら手詰まりで;
attack(Caractor m){  ←ここがattack(Monster m)だったから動かなかったんですかね?
Slimeと同じ親持ってないと出来ないんですね。本はMonsterとなってたので本が間違えてるんですね

403 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 18:30:25.41 ID:RUz16HRCd.net]
>>385
その理解だと危ない
Slimeクラスフィールドの定義と使い方の問題だからスコープやらOrverrideをちゃんと理解したほうがいい

教本によくある「親は子を使えない」の典型例だぞ



404 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 18:37:44.34 ID:RUz16HRCd.net]
まぁとはいえ細かい部分の理解は後で修正は効くから先に進んでも別に良い

405 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 18:47:47.60 ID:b/emt3jR0.net]
>>377-378
フィールドはオーバーライドしないんですね。408-409ページにて普通に継承先で同じフィールドを定義してたので
いいのかなって思ってました。
同じフィールドを使いたい場合は親にあるメンバを使えばいいんですね。タメになります
ありがとうございます

406 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 19:35:13.69 ID:b/emt3jR0.net]
>>386
フィールド直したら仮引数がMonsterの元々あったコードでもいけました
SlimeとHeroが同じ親だとis-aの関係がおかしいと思ってたので助かりました
ありがとうございます
…もっかい読み直してみます^^;

407 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 02:02:46.21 ID:UC7Cb0Ac0.net]
文字列比較containsで正規表現は使えますか?
とあるサイトで使えるとあったので試してみましたが使えませんでした

408 名前:デフォルトの名無しさん [2018/08/26(日) 02:12:09.19 ID:IHxJX3F+0.net]
>>390
使えないよ、そのサイトが間違ってる

409 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 03:16:41.69 ID:UC7Cb0Ac0.net]
ありがとうございました

410 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 10:30:20.29 ID:iIRyt0Moa.net]
Kotlinは使えた気がするから、そのサイトはKotlinと混同してるのかもね

411 名前:デフォルトの名無しさん mailto:sage [2018/08/26(日) 13:23:38.37 ID:HHP/3bjy0.net]
Kotlin の場合は Regex のインスタンス渡すやつがあるからそれで使える。
Regex ではなく String のインスタンス渡した場合は Java と同じ動作。

412 名前:デフォルトの名無しさん [2018/08/27(月) 11:05:42.24 ID:efjEsUrt0.net]
サイトの質問で申し訳ないんですが
paizaって入力を受け付ける関数とかは使えないんですか?
int abc=new java.util.Scanner(System.in)nextInt();って打っても実行はできるんですが
入力まち画面は出ません

413 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 11:37:43.51 ID:ba8BcfX30.net]
出力が標準出力で、入力は標準入力。
入力の所に書けば?

ファイルから読み込みたいのなら、
ファイル名の右横にある、+ を押して、入力ファイルを作る



414 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 12:01:59.11 ID:efjEsUrt0.net]
>>396
了解しました
実行の下にあるのに全然気づきませんでした(@@;)
ありがとうございます

415 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 12:32:02.03 ID:dQ3pJlXI0.net]
EntityクラスにDBのデータを入れて加工してDAOクラスに突っ込んでViewに投げるという処理を流れ作業としてやっているのですが、クエリで絞っていきなりDAOに入れたら早いかもと感じています。Entityクラスを省くのはjava開発的にどうなのでしょうか。

もう別の新しい概念があるのかもしれませんが

416 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 12:54:00.84 ID:HPy1/YKZa.net]
DAOに突っ込むってどういう意味?ViewってDBのViewなのかMVCのViewなのかどっち?
java開発的にどうとか以前に曖昧な言葉遣いに注意せよ

417 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 21:17:09.10 ID:VnEVG+oDM.net]
こちらで質問していいの

418 名前:か分かりませんが…
プログラミングは全く勉強したことがありません。
仕事でジェノグラム(家族図的なもの)をよく作成するので、家族歴(結婚、離婚、出生、死亡)の時間軸に合わせてその時期にどんな家族状況だったかを図示できるようなプログラミングを作ってみたいなと思ってます。

こういうものを作るのに最適なアプリケーションってどんなものなんでしょうか。

エクセルが好きで関数いじったりするのは苦になりません。
よろしくお願いします。
[]
[ここ壊れてます]

419 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 21:31:24.25 ID:dJeCT78qM.net]
>>400
Excel好きなんだったらExcelでいいよ
VBAちょっと齧れば十分やりたいことはできるはず
本格的なプログラミングは本業にして金稼がない限り習得コストや手間の割に合わんよ

420 名前:デフォルトの名無しさん [2018/08/27(月) 21:31:31.57 ID:l2rfNjjda.net]
>>400
やっぱそれってExcelのマクロでやっちゃった方が良いんじゃないかなあ。
いやもしかするとマクロも要らんかも知れないよね。グラフ出せたりするし。
Excelの事は良くわからないけど。

421 名前:398 mailto:sage [2018/08/27(月) 21:36:06.38 ID:Psg4p/SV0.net]
最近クラスとメソッドを覚えたような素人で言葉が足らずすみません
Entityクラスを作らずDAOクラスから直接DTOクラスを作ってしまうのは良くない事なのかご意見を聞きたかった次第です

422 名前:デフォルトの名無しさん mailto:sage [2018/08/27(月) 22:10:38.71 ID:dJeCT78qM.net]
>>403
Javaドカタワールドで一般的にいうentityってのはDBとアプリケーションコードとの間のデータの受け渡しに使われるDTOの一種にすぎない
最終的にViewに渡すものと同じなら省略するなり好きにしたらいい
エンティティは本来ドメインモデル上の登場人物であり、ビジネスロジックで主役として振る舞うべきもので、
DAOの中でデータアクセスのためだけにEntityを使うってのは本来はおかしな話

423 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 00:26:20.98 ID:TEJeUOom0.net]
プログラム(Java) ←→ entity ←→ DB

Rails が、migration で自動的に作るのを、手作業で作っているだけだろ



424 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 06:59:33.13 ID:CaCX57FK0.net]
>>404
DAOのEntityとドメイン駆動のEntityを混同してないですか?

javaドカの世界はオレオレ理解が星の数ほどありそうで怖いです

425 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 07:01:25.66 ID:CaCX57FK0.net]
>>405
Entityぶち込みの概念はRailsのが後じゃ

426 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 08:52:02.52 ID:oX5PU4jWa.net]
[DB] -- DTO(399の会社ではentity) -- [DAO(ドメインモデルではrepository)] -- DTO(ドメインモデルではentity) -- [サービス/ユースケース/トランザクション(たぶん399の会社にはない)] -- [コントローラ] -- DTO/ViewBag -- [ビュー]
こうか?

427 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 09:13:22.39 ID:oX5PU4jWa.net]
書いてて思ったけど、一番左のDTOはDTOというよりActive Recordかなあ
そこらへんはDAOを主軸にして見るならあくまでDAOの実装の詳細だからアーキテクチャ的にはどうでもよい部分
DAOの中でSQL書いて左から2番目のDTOに直接詰めるのももちろんアリ、というかORM使わないなら普通はそうする

428 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 12:36:39.57 ID:CaCX57FK0.net]
>>409
クエリ書ける軽量ORMとかならEntityクラスなんて要らねーよという雰囲気ですかね

でも、お作法としてEntityクラス作るのもありかなと
DBのリプレースに強そうなんで

429 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 12:39:50.34 ID:CaCX57FK0.net]
つかEntityとDTOを分けない所多いんですか?

未経験で世界が狭いので興味あります

430 名前:デフォルトの名無しさん mailto:sage [2018/08/28(火) 13:35:17.88 ID:psOOFlweM.net]
DBの詳細を吸収するのは一般的にはDAOの仕事
更にドメイン寄りの論理的な型とシリアライズ用の型を区別したいんなら、
(DDDでいう)エンティティを返すリポジトリクラスがあって、
リポジトリが中でDAOを使ってDBからデータ引っ張ってきて行オブジェクトをエンティティに変換するのが今風だと思う

431 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 06:50:26.78 ID:Q2YQokuo0.net]
javaを勉強中の学生です。
画像の問題が全くわからなく、空欄の答えとできればその理由を簡単にでいいので教えて頂きたいです、、
どうかよろしくお願いします。
https://i.imgur.com/TAKEWJX.jpg

432 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 09:00:37.32 ID:ZDG8YYaGa.net]
ヒント
Int型のiを他の型にキャストしてみよう

433 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 09:18:55.27 ID:nm+82+J6C.net]
>>413
String.format()を駆使する



434 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 09:22:36.45 ID:9k/VMyPqr.net]
>>413
「Java String 空白埋め」とかでググろう

435 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 10:56:03.84 ID:g0t1qxJja.net]
ヒントありがとうございます!
自分なりに考えた結果
String.format(‘‘%.’’+i+‘‘f’’,i)
で合ってますかね?
帰って打ち込めば分かる話なのですがw

436 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 11:00:53.34 ID:LhfUpRDDM.net]
それにしても問題のための問題という感じだな。
解ける人向けのなぞなぞみたいなもんで、出題者に意味や知性を感じられない。

437 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 12:05:33.04 ID:wxHokPsyM.net]
>>417
そんな感じ
空白の書式と数値の書式が必要になりそう

438 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 12:26:12.61 ID:agelIibQM.net]
Utilクラスをstaticにしない意味って何かあるのでしょうか?
今の現場の仕様がUtilのメソッドをいちいちnewしなきゃならなくて
とてもいらつくのですが…

439 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 12:30:28.52 ID:nm+82+J6C.net]
>>417
キャストしないとエラーになる

440 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 13:00:25.63 ID:wZaD4gXBa.net]
実際formatの書式なんて覚えてる必要ないんだけどな
うろ覚えであーでもないこーでもないとやってる暇があったら、そんなことに時間使わずに即ググって欲しい

441 名前:デフォルトの名無しさん [2018/08/29(水) 18:52:47.00 ID:bZ2D0xRLa.net]
>>417
引数の側のiは (double) i という具合にキャストする必要がある。
しかしそれでは完全に一致する出力にならない。0だけスペースが一つ多くなる。

もうほとんど出題ミスのような感じがしてならないのだが、更に捻ると全てが完全一致する出力を作れる。

442 名前:デフォルトの名無しさん [2018/08/29(水) 18:54:57.86 ID:bZ2D0xRLa.net]
あ、ごめん。まだ左側スペース入れるformatになってなかったか。
ま、やってる内にどういうことかわかる。

443 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 19:39:49.84 ID:b/VcLTdm0.net]
>>424
あるよ
%6.3f
という感じ



444 名前:デフォルトの名無しさん [2018/08/29(水) 21:18:05.63 ID:tTgGQU3y0.net]
>>425
それだとこうなっちゃうんよ
https://paiza.io/projects/vMm1SEA-ycs531bGbqQjHg?language=java
_____0
___1.0
__2.00
_3.000

こやればいんだけど、こんなの問題にするかねと
https://paiza.io/projects/2mz6h5nNUYd_KrDUo3klNg?language=java

445 名前:デフォルトの名無しさん [2018/08/29(水) 22:01:21.61 ID:b/VcLTdm0.net]
for (int i = 0; i < 4; i++) {
System.out.println(String.format("%" + ((i == 0) ? 5 : 6) + "." + i + "f", (float)i));
}

446 名前:デフォルトの名無しさん mailto:sage [2018/08/29(水) 22:04:24.07 ID:n9AQAOMs0.net]
こんなのソラで書けても実務ではほぼ無意味だ
この問題が本当に問題のための問題だな

447 名前:デフォルトの名無しさん [2018/08/29(水) 22:12:26.61 ID:b/VcLTdm0.net]
でも >>426 が言ってる方が自然

448 名前:ゥもね
for (int i = 0; i < 4; i++) {
System.out.println(String.format("%" + (4 - i) + "s%." + i + "f", "", (float)i));
}
[]
[ここ壊れてます]

449 名前:デフォルトの名無しさん [2018/08/30(木) 09:37:14.90 ID:Le3eFjina.net]
出題ミスか引っかけ問題かな。
またはミスと気づいたけど引っかけ問題として丁度良いからミスではなかったことにして放置か。
しかし初心者に出すにはどうかという感じもする。実際にこんなのが必要とされることもなさそうだし。
もはやパズルだよなあ。

450 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 12:31:48.30 ID:N1CziDiXM.net]
もう古いと言われてるデザインパターンを何度も身につけようとしては挫折
写経だけじゃ理解するのは難しいですか?

451 名前:デフォルトの名無しさん [2018/08/31(金) 12:52:51.06 ID:hD6bHOXYa.net]
かといって全てがわからないわけでもないんだろ?

452 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 13:11:32.74 ID:lv4qnKPxM.net]
>>431
写経して図を描いて
図を見ながら写経して
図を見ながらプログラム書いて
プログラムと図を相互に変換できるようになったら
理解したと言っていいと思う

イメージすること人間の計算能力

453 名前:デフォルトの名無しさん mailto:sage [2018/08/31(金) 18:10:41.56 ID:eNdvG/210.net]
デザインパターンはもう古いんじゃ無くて今のフレームワークに織り込まれてるんじゃないの

フレームワークに合わせるとデザインパターン強制される的な



454 名前:デフォルトの名無しさん [2018/08/31(金) 22:11:29.93 ID:VkTWbVQX0.net]
スマホのSDKとか基本的にTemplate Methodよな

455 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 08:53:27.34 ID:u4pJ8FQM0.net]
言語機能の進化でそもそも不要になるパターンもあるな
例えばkotlinだとbuilderパターンなんて必要ないし

456 名前:デフォルトの名無しさん mailto:sage [2018/09/01(土) 08:57:36.98 ID:FRKhXQkv0.net]
GoFのデザインパターンの大部分を占める、オブジェクト指向言語の機能で高階関数をエミュレートしてみた系は、Lambdaがある今では不要

457 名前:デフォルトの名無しさん mailto:sage [2018/09/06(木) 23:00:51.53 ID:i7jlwt+T0.net]
初心者です。
eclipseを導入したのですが、コンソールで接続語のみ文字化けします。
ソースコードなどは問題なく、例えばSystem.out.print(a + "と" + b + ("では") + c + "の方が大きい"))と入力して実行すると「a□b□□c□方が大きい」となります。
「eclipse 文字化け」等で調べた内容は試しましたが改善しませんでした。
どなたか助けてください。

458 名前:デフォルトの名無しさん mailto:sage [2018/09/06(木) 23:05:19.86 ID:i7jlwt+T0.net]
すいません、ソースコードの()忘れまくってました
System.out.print(a + ("と") + b + ("では") + c + ("の方が大きい")) 等と入力した時です

459 名前:デフォルトの名無しさん [2018/09/06(木) 23:18:26.50 ID:VSCSfufl0.net]
>>438
eclipseのフォルダにeclipse.iniというファイルがあるので
その中の
-vmargs
の下に↓これを追加でおk
-Dfile.encoding=utf-8

460 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 01:42:15.65 ID:cvrKvOFs0.net]
そのカッコ必要ないけどね

461 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 07:29:23.11 ID:spiHhlEL0.net]
>>440
それも試しましたが改善しませんでした。
何回か立ち上げ直すと文字化けしない時もありましたが、少しするとまた文字化けします。
>>441
()めんどくさいなと思ってました・・・
ありがとうございます。

462 名前:デフォルトの名無しさん [2018/09/07(金) 07:33:48.11 ID:9erH5wRI0.net]
>>442
コンソールのフォントを変えてみるとか

463 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 11:31:44.81 ID:939inRae0.net]
コンソールで、文字コードの設定は出来ないの?

まあ日本語は、UTF-8, shift-jis のどちらかだろうけど、
プログラミングはすべて、BOMなしUTF-8(UTF-8N)に統一すればよい

その代わり、Windows のExplorer では、文字列検索できなくなるので、
WSL・Ubuntu を入れて、Linux 側からgrep する

shift-jis とか、文字コードの自動判定などは、使わない。
自動判定は間違う場合もあるから



464 名前:A面倒 []
[ここ壊れてます]

465 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 11:49:49.48 ID:hwUqZ5b1a.net]
出た、今必要のない余計な情報を付け加えまくって初心者を混乱される大先生

466 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 11:53:32.83 ID:avaKv6NMM.net]
良いじゃん
会話は広がるから面白いんだよ

467 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 11:56:50.24 ID:avaKv6NMM.net]
樹木は枝を広げることで太陽パワーを得るんだ 

468 名前:デフォルトの名無しさん [2018/09/07(金) 12:16:54.08 ID:kXzYLjHca.net]
ここは樹木ではない。

469 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 12:20:15.43 ID:avaKv6NMM.net]
>>448
樹木だなんて言ってない

470 名前:444 mailto:sage [2018/09/07(金) 14:37:06.58 ID:939inRae0.net]
VSCode でも、文字コードを自動判定にしていると、

判定を間違えて、文字化けする

471 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 16:41:25.29 ID:756xTqfC0.net]
MSはbom付きが何故か好きだったりするな

472 名前:デフォルトの名無しさん mailto:sage [2018/09/07(金) 16:49:00.32 ID:756xTqfC0.net]
そういえばwindowsでのデフォルトエンコードはshift-jisだったな

https://qiita.com/n_slender/items/6c566bb345e844ba8127

この辺かな?

473 名前: mailto:sage [2018/09/07(金) 21:48:46.13 ID:WaHB6+zk0.net]
>>452
しかし、NTFSやFAT32は UTF-16LE だったりするし、いわゆるシステムコール(win32api)には UTF16用とShift-JIS 用の両方が準備されている



474 名前:デフォルトの名無しさん [2018/09/08(土) 00:13:12.33 ID:AXhw471Hd.net]
Javaでエロサイト作りました。
www.nuliu-movie.net

475 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:00:27.17 ID:10SOqO6NM.net]
>>438
の件、1日経ったら改善していました。
失礼しました。

476 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:20:18.78 ID:/uNaEXjk0.net]
たぶん1日経ったことではなく再起動したことが大きいと思う

477 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 10:23:10.58 ID:M9YsL2780.net]
時間は何も解決してくれない

478 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 11:57:54.81 ID:Z5oAfZnva.net]
PCそろそろ逝きかけてる?

479 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 11:59:24.40 ID:Z5oAfZnva.net]
色々試しているうちに何が効いたのかわからない状態かもな

480 名前:デフォルトの名無しさん [2018/09/08(土) 14:07:21.61 ID:kEOPIOXH0.net]
寝ている時に猫がキーボードの上を歩き更にマウスにじゃれたりして、それによって偶然実行された何かによって

いや、なんでもない。忘れてくれ。

481 名前:デフォルトの名無しさん mailto:sage [2018/09/08(土) 16:53:00.05 ID:10SOqO6NM.net]
一通り試した後、何回か再起動して直らなかったんですよね
それから勉強する分には支障ないしいいや、と思って放置してたら直ってた
システムの環境変数?だかも何回か設定し直さないと反映されなかったし、パソコンが原因かも

482 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 10:48:23.00 ID:80HTn1A0M.net]
現在java入門書を読み終える段階です。
あるまとめでjava入門書の後にRudyやPython等の入門書を読んでからjava実践編を読むのがおすすめ、というのを見たのですが
どういった意図があるのでしょうか?
また、皆さん個人の意見として上記のような学習方法はおすすめできますか?

483 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 11:24:13.86 ID:KmZuc+Toa.net]
>>462
たぶん早いうちに色々なスタイルの言語に触れて、そしてその中から自分の好きなものを選べという意図があると思う。
ただし俺は反対。javaの入門書を読んだならそのままjavaをもう少し深く理解したほうが良いと思う。
その後で他の言語を見たほうがjavaとの違いなどが理解できるようになる。



484 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 11:42:10.23 ID:TEqZYDm7a.net]
>>462
一つの言語だけだと「そういうもんか」としか思えないだろうけど、
他の言語を知ることで表面的な仕様の裏にある意図や思想が見えてくるようになる
そして、言語の各機能の意図や思想がわかればその正しい使い方がわかる
個人的には賛

485 名前:ャだけど、今更Rubyはやめとけ []
[ここ壊れてます]

486 名前:デフォルトの名無しさん [2018/09/13(木) 12:56:06.96 ID:cU5S5NHGa.net]
>>462
人にもよると思うが、混乱しそうな感じがするのであまりおすすめしない。
ある程度 Java が使えるようになってから他の言語に取り組んだ方が良いのではないか?

487 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 13:48:21.40 ID:1gM+2X37M.net]
何でもかんでもついばむだけみたいな

488 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 14:01:44.48 ID:zfK1S5+JM.net]
ソフトウェアエンジニアになりたいのかJava土方になりたいのかによるかな
後者なら変な知恵がついてる奴より余計な疑問を持たずに周りのやり方に合わせてコピペできる奴の方が使いやすい
Javaのプロの人は後者になるための教育を受けてきてる(or後者を生産・使役する)人が多いからそういう人の話は注意して聞いたほうがいい

489 名前:デフォルトの名無しさん mailto:sage [2018/09/13(木) 23:54:21.89 ID:7EcaHTzm0.net]
まずこの本で、オブジェクト指向を学ぶ
スッキリわかる Java入門 第2版、2014

その後、この2冊をこの順に読む
たのしいRuby 第5版、2016
みんなのPython 第4版、2017

みんなのは、数学系とか仕事で必要なら読めば?

Ruby は、テキスト処理・コマンド・1-liner とかできるから、Linux では重宝。
PowerShell・シェルスクリプト・awk・sed・perl の代わりになる

Rubyをやっておけば、PowerShell, JavaScript, jQuery, Kotlin なども良くわかる。
メソッドチェーン・関数型の書き方だから。

Rubyで、プログラミングの基礎体力が向上する!
早くにやって損はない。
後で、別の言語の勉強がはかどる

Pythonは、その辺と文法が違うから、手軽にはいかない

490 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 00:00:48.26 ID:T/0ITtsha.net]
自分で触ったことがあるならPythonは明らかにJavaをリスペクトしてることがわかるんだけどね
Rubyやると>>468みたいな基地外になるよ

491 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 06:26:54.82 ID:K66vPpxA0.net]
1つだけ言えるのは、>>468は完全に無視していい

492 名前:デフォルトの名無しさん mailto:sage [2018/09/14(金) 19:07:57.59 ID:mwTGxLlkM.net]
本当に0からのスタートなので、まずはJavaをしっかり学ぶことにします。

493 名前:デフォルトの名無しさん [2018/09/17(月) 20:32:52.98 ID:vW1P/H+V0.net]
>>469
自分で触ったことがあるならPythonは明らかにオブジェクト指向に関しては違うことがわかるんだけどね



494 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 07:51:07.02 ID:Wjwixwwi0.net]
Eclipseで時計を作りましたが表示がおかしいのでアドバイスお願いします

小さなウィンドウに数字で時刻が表示されるだけの簡単なものです
モニタを2枚使っているのですが、
メインの方ではウィンドウの中に表示されるはずの時刻が一切表示されません
なぜかサブの方にドラッグして持っていくと表示されます
Eclipseが起動してる状態だとメインのほうでも表示されます

repaintメソッドを使って1秒ごとに表示させているのですが
paintメソッドの中身を軽くしないとダメとかありますか?
Swing導入しています

これだけでは伝わらないと思いますがエスパーの方いらっしゃったらよろしくお願いします

495 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 10:36:59.77 ID:PLvFhIgqa.net]
完全な当てずっぽうだけど、えくりぷすを起動している時だけ設定される環境変数が影響してるとか?

496 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 15:32:25.20 ID:Wjwixwwi0.net]
>>474
eclipse閉じていてもサブモニタのほうだと表示されるのがよくわからないんですよね

同じ症状がでる範囲内でいろいろそぎ落としてみました↓

497 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 15:32:42.50 ID:Wjwixwwi0.net]
import java.awt.Graphics;
import javax.swing.JFrame;
public class myClock extends JFrame implements Runnable {
static myClock c

498 名前:l = new myClock();
static Thread thrd = new Thread(cl);
public static void main(String[] args) {
cl.setVisible(true);
thrd.start();
}
public void run() {
while(true) {
repaint();
try {
thrd.sleep(1000);
} catch(InterruptedException e) {
}
}
}
public void paint(Graphics g) {
super.paint(g);
g.drawString("test", 80, 40);
}
myClock() {
setSize(240, 70);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
[]
[ここ壊れてます]

499 名前:デフォルトの名無しさん mailto:sage [2018/09/18(火) 15:39:30.94 ID:Wjwixwwi0.net]
ちなみにこのサイトの
yay.cla.kobe-u.ac.jp/~jm/edu/2008/JE3/20080121-java-gui5.html
上のほうにある 「デジタルクロック(MyDigitalClock.java)」
のコードをコピペして試してみたところ表示されない問題は起きませんでした

500 名前:デフォルトの名無しさん [2018/09/19(水) 03:29:57.76 ID:ti9UWKMZ0.net]
www.wisdomsoft.jp/585.html

501 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 05:05:36.27 ID:/Yn8C7350.net]
try {
thrd.sleep(1000);
} catch(InterruptedException e) {
}

例外が起こっても、catch が空文だから、例外を処理していない。
これは例外の握りつぶしと言って、やってはいけない

アプリを終了させるなど、何かエラー処理を書かないといけない

何も書かないと、エラーが起こっているのに、
アプリが存在し続ける、または動き続ける

502 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 07:32:04.78 ID:9j05f62H0.net]
レスありがとうございます
>>478
使い方間違ってるかもしれませんがなんとかそれで行けました
この辺を自分で解決出来ないとだめですね
実はぐぐりまくってる時にpaintComponentは怪しいと思って試して見たんですがあと一歩及んでなかったです
>>479
修正しました

すっきり入門読み終わった段階で作った初めてのプログラムですが
まだまだ知識足りてませんね

import文抜きで修正済貼っておきます


503 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 07:32:22.29 ID:9j05f62H0.net]
public class myClock extends JFrame implements Runnable {
static myClock cl = new myClock();
static Thread thrd = new Thread(cl);
public static void main(String[] args) {
cl.setVisible(true);
thrd.start();
}
public void run() {
while(true) {
repaint();
try {
thrd.sleep(1000);
} catch(InterruptedException e) {
e.printStackTrace();
}
}
}
class GPanel extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawString("test", 80, 40);
}
}
myClock() {
setSize(240, 70);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
add(new GPanel(), BorderLayout.CENTER);
}
}



504 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 07:48:39.26 ID:9j05f62H0.net]
GPanelクラスが中にはいっちゃってました
コンストラクタの下、外に出しておきました

505 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 21:31:45.37 ID:PT8Q1qAA0.net]
しゅみましぇん初心者なんですが開発環境でエクリプスってのインストールしたらJDKやJREってのは不要なんですか?教えてエロい人

506 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 21:41:20.74 ID:b6dng2VDa.net]
必要
今月で無償のJDKはサポート終了するからオラクルに金払ってJDK11買ってね

507 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 21:48:18.24 ID:PT8Q1qAA0.net]
ふぇ!?無料と有料両方あるんじゃないんでしゅか?
つーかエクリプスダウンロードしゅごい時間かかるんでしゅね

508 名前:デフォルトの名無しさん [2018/09/19(水) 21:49:12.23 ID:zcXFtBV7a.net]
そういやこれまでeclipseで必要か否かに関わらず無条件にJDKインストールしてたからeclipseで必要かどうかなんて考えた事もなかったな。

509 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 22:00:54.62 ID:8oznxs6p0.net]
この前プログラミングスクールの中の人になんでいまだにエクリプスなんて使わせるのか聞いたんだけど、
単純に一線についていけなくなったロートルを講師として安く雇うから、教える側がエクリプスしか使えないらしい

510 名前:デフォルトの名無しさん mailto:sage [2018/09/19(水) 22:20:31.29 ID:/Yn8C7350.net]
>>481
すべての行に、print 1, print 2 ... という感じで、print 文を入れて、
どこまで

511 名前:実行されているのか、確かめる

それか、デバッガーで1行ずつ実行して確かめる

まず、ここまで実行されて、ここは実行されていないという、地点を探す
[]
[ここ壊れてます]

512 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 07:09:25.66 ID:0vHOtJkY0.net]
C#ならVisualStudio1択ですけどjavaはEclipse1択では無いんですか?

513 名前:デフォルトの名無しさん [2018/09/20(木) 09:32:23.34 ID:cMPVhU9ia.net]
>>489
JetBrain の IntelliJ IDEA ってのもあるよ。



514 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 10:57:50.23 ID:9tRwSzt9d.net]
ヒープのサイズとかって、起動用のシェルスクリプトとかでコマンドラインに並べてますが、
Javaのソース中で設定できませんか

Javaソース以外に、起動用のシェルスクリプトも管理対象資材にする必要があるのを
なんとかならないかなと思ってます

515 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 11:01:25.68 ID:T35mVtQna.net]
>>489
Eclipseはもう色々限界でどんどんシュリンクしてる。
今はIntelliJ使う人が多いんじゃないかな。
Web開発しないなら無料版で大丈夫だし、仮に有料版買ったとしても糞みたいなプラグインの依存関係管理とかが消えるだけでも十分価値あるし。

516 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 11:15:32.57 ID:5eDdLMhsM.net]
Javaドカはeclipseだよ
膨大な手順書の更新とかライセンス契約とか申請とか面倒臭すぎるからな
どうせコピペ仕事しかしないくせにPGの好みなんかどうでもいい

517 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 11:38:33.59 ID:k0r/9zN1M.net]
>>492
どこ情報よそれ

518 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 15:04:27.07 ID:qPy/9IGfd.net]
b = a++;
b = ++a;

の違いのような問題がbronzeでの出題頻度が高いということなんですけど、実際こういう書き方はよく使われるんでしょうか。
どうもややこしいので、もっと分かりやすく書けないものかと思うんですが

519 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 15:34:33.29 ID:5eDdLMhsM.net]
>>495
俺がレビュワーならPGかそんな糞コード書いてきやがったら書き直させる

520 名前:デフォルトの名無しさん [2018/09/20(木) 16:11:19.30 ID:TeQNOAP0a.net]
>>495
使わない。何故ならややこしくてバグの元になるから。

521 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 16:34:32.97 ID:qPy/9IGfd.net]
やはりそうなんですね
わざわざ条件式のなかで評価をさせたりするのも引っかけ問題的な狙いなんでしょうか…

まあ書かれてるのを読み取る訓練にはなるんでしょうかね

522 名前:デフォルトの名無しさん [2018/09/20(木) 17:40:39.49 ID:TeQNOAP0a.net]
引っ掻けというか、使わなくても読んでわかる必要はあるからなあ。

523 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 18:24:32.51 ID:QL0PNP4W0.net]
さすがにその程度でややこしいってのは問題あると思うぞ



524 名前:デフォルトの名無しさん [2018/09/20(木) 18:48:03.03 ID:TeQNOAP0a.net]
ま、初心者には難解に見えるのだろう。
やがてわかるのだが使いたくないものになる。

525 名前:デフォルトの名無しさん mailto:sage [2018/09/20(木) 20:28:03.45 ID:y8qM5dc20.net]
変数に再代入をする言語では別に普通の書き方。

526 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 00:53:31.57 ID:m8DL5ZJ40.net]
Ruby では、++, -- 演算子はない。
前置・後置で、意味が違うから、ややこしい

自己代入だけ
a += 1
a -= 1

527 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 05:57:07.43 ID:U/90uWFm0.net]
難しいとは思わんけど、>>495みたいなコードかいてたら直せって言うな、俺も

528 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 12:39:21.43 ID:rhYAEPMQd.net]
for (i=0; i<10; i+=1){}

みたいに書くんかな

529 名前:デフォルトの名無しさん [2018/09/21(金) 14:27:23.40 ID:isbUNhMla.net]
>>505
それは ++ で良いのでは?
他の変数に代入もしてないし、ポインタで括弧のありなしで違う動きになるわけでもないし。

530 名前:デフォルトの名無しさん [2018/09/21(金) 14:28:07.34 ID:isbUNhMla.net]
すまん。ここJavaスレだったね。ポインタ計算はないね。

531 名前:デフォルトの名無しさん [2018/09/21(金) 16:23:14.99 ID:9Uudce490.net]
>>495


532 名前:そういう使い方はしないけど、引数では使うこともある。
たとえば、JDBCとか。
[]
[ここ壊れてます]

533 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 17:19:21.04 .net]
98....77...120...20
ある問題がわからないのですが
上の文字列のピリオドを
削除して
残った。
98  77  120 20を
それぞれ100以下かどうか調べる方法
ヒントでもいいので下さい。
m(._.)m



534 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 17:29:20.71 ID:QS43/Izx0.net]
split だな

535 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 19:56:01.32 .net]
ありがとうございます
問題はまだ先がありますが
勢いで行けそうです。

536 名前:デフォルトの名無しさん mailto:sage [2018/09/21(金) 23:40:27.64 ID:m8DL5ZJ40.net]
98....77...120...20

まず、連続するドットを、1つのドットに変換する。
98.77.120.20

ドットで、split

537 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 03:00:12.86 ID:ezjvT9yw0.net]
Stream 使うとこんなの出来るんだよね。
https://paiza.io/projects/SColW878T96hU9szdaatFg

538 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 03:13:39.53 ID:ezjvT9yw0.net]
Kotlin でも似たような感じにできる。
https://paiza.io/projects/3EAqz6-TjpyndK7O8Ly8xg

539 名前:デフォルトの名無しさん [2018/09/22(土) 10:45:54.03 ID:Mt4kWzpZ0.net]
KotlinのString.splitは引数Stringを受け付けないのか。
Javaの方はPatternを受け付けないし。
どっちもオーバーロードで済む話だと思うのに。
無駄にメソッドの数を増やしたくないとかあるのかな。

540 名前:デフォルトの名無しさん [2018/09/22(土) 16:47:30.75 ID:iewBY6fOa.net]
jbossのEJBってのが全然わかりません。

541 名前:デフォルトの名無しさん [2018/09/22(土) 16:55:17.83 ID:iewBY6fOa.net]
Tomcatにちょっと毛が生えたのがEJBなんだろうな。

542 名前:デフォルトの名無しさん [2018/09/22(土) 17:28:31.88 ID:iewBY6fOa.net]
Spring FrameWorkとEJB使ったらどんなイメージなんだ?

543 名前:デフォルトの名無しさん [2018/09/22(土) 18:18:39.84 ID:ezjvT9yw0.net]
>>515
KotlinのString#split()は引数がStringのやつとRegexのやつがあって、ただの文字列の一致で分割したい場合はStringのやつを使い正規表現のパターンとの一致で分割したい場合はRegexの方を使う。



544 名前:デフォルトの名無しさん [2018/09/22(土) 18:32:14.34 ID:ezjvT9yw0.net]
Charのやつもあった。
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/split.html
しかしJavaのやつを拡張してあって引数が多いのだがデフォルト値がセットされているので呼び出し時の記述に全ての引数は必要ない。
今回上のソースで使用したRegexを受け付けるsplitももう一つlimitが引数として存在しているがデフォルトのままで良いので呼び出す所では省略している。

545 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 19:57:13.70 ID:UaEFgueIF.net]
元ファイルをgzip形式で圧縮したファイルを、更にzipで複数個アーカイブしたファイルを扱ってます

今はzipファイルを全て展開→展開された圧縮ファイルを一つずつgzipで伸長、として処理してるのですが
扱いづらいので改良したいです

zipファイルの全ファイルの内容をbyte[][]に入れるメソッドとか、gzip+zipなアーカイブを
展開してリストにいれてくれるメソッドとか、ありませんか?

546 名前:デフォルトの名無しさん [2018/09/22(土) 20:02:32.77 ID:ns5EK8b00.net]
誰も答えいる奴いないな、下らんスレだ。

547 名前:デフォルトの名無しさん [2018/09/22(土) 20:04:45.28 ID:PGp2AKzL0.net]
そんなもんシェルで書いたら一瞬で終わるからな
いちいち手間かけてjavaで書く必要性がまずない

548 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 20:28:28.82 ID:ffP877J7M.net]
LocalDateTimeクラス使ってAPIリファレンスの読み方学んでるんだけど、5ヶ月後をint型で出すには
LocalDateTime.now()

549 名前:;で現在月時刻を取得
.getMonth();でMonth型に変換
.plus(5).getValue();でInt型に変換
LocalDateTime.of();で代入
って手順しかないですよね?

getMonthValue() + 5では12月から1月に以降してくれなくて驚き桃の木でした。
[]
[ここ壊れてます]

550 名前:デフォルトの名無しさん [2018/09/22(土) 20:42:31.51 ID:J+cgHaTV0.net]
>>524
LocalDateTime.now().plusMonths(5).getMonth().getValue()

551 名前:デフォルトの名無しさん [2018/09/22(土) 20:44:59.08 ID:PGp2AKzL0.net]
https://ideone.com/T6k33r

コレで普通に5か月後になる
LocalDateTime local_date_time_5 = LocalDateTime.now(ZoneId.of("Asia/Tokyo")).plusMonths(5);

552 名前:デフォルトの名無しさん mailto:sage [2018/09/22(土) 21:10:45.88 ID:PIBZ6Tp/0.net]
>>526
そんな簡単にできたのね…
というか上の方法だと年が変わってくれないか。
ありがとうございます

553 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 22:25:30.46 ID:mjd+cxSud.net]
参照型のキャスト変換とかのあたりめんどくさい……
頭がこんがらがる



554 名前:デフォルトの名無しさん mailto:sage [2018/09/24(月) 23:00:37.68 .net]
パイザのcランク問題で挫折しそう。

555 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 17:00:11.67 ID:RXd3mBE5d.net]
ZipInputStreamでzipファイルを展開した場合等、複数のファイルを扱う際のclose()の仕方についてどうするとよいか教えてください。

以下の様なソースを作ってます。zipファイルの内容物を展開していくものです。
ZipInputStream zis = null;
FileOutputStream fos = null;
try {
 zis = new ZipInputStream(new FileInputStream(zipFileName)); // <-
 for (ZipEntry entry = zis.getNextEntry(); entry != null; entry = zis.getNextEntry()){
  extFileName = entry.getName();
  fos = new FileOutputStream(extFileName); // <-
  while ((len = zis.read(zbuff)) != -1){
   fos.write(zbuff, 0, len);
  }
 }
} catch (IOException e) {
 e.printStackTrace();
} finally {
 try {
  zis.close();
  fos.close();
 } catch (IOException e) {
  e.printStackTrace();
 }
}
このようにソース中で複数のファイルへアクセスする場合、そのclose()はfinally句中でまとめてcloseする書き方でよいのでしょうか。
それとも、上記例でのfosをnewする時点でfos用のtry句を設け、fosのExceptionはそちらで処理すべきでしょうか。

fosのストリーム作成時にIOExceptionが発生したとき、finally句内のfos.close()で更に例外が発生しそうですが
それは仕方ないとすべきか、それともファイルごとにIOExceptionを処理するべきかを知りたいです。

556 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 17:16:21.33 ID:Mw8jC0Zda.net]
一般論だけど俺だったらファイルごとのループ内でtryブロック書くかな。
その方がエラーが起きた時の後始末(例えばエラーが起きたファイルのリストを表示するとか)がやりやすいし、
finallyの中にさらにtryを書くとコードの見通しが悪いから。
まあ要件次第ではある。

557 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 18:59:14.57 ID:tj3tpCzGd.net]
531と同意見
あと try-with-resourcesでググると幸せになれるぞ
open/close理解したいならゴメンだが

558 名前:デフォルトの名無しさん mailto:sage [2018/09/25(火) 20:01:10.13 ID:RXd3mBE5d.net]
>>531
>>532
意見ありがとうございます

個別にtryする方向で見直そうと思います

try-with-resourceは良さそうですが、tryするタイミングが違うので、どう使えるかな?と思いつつですが、こちらも調べて考えます

559 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 18:42:57.71 .net]
すいません、初歩的な質問なんですが
自分の期待では下のコードで
ああああ
あああ
ああ

となるつもりなんですが
どうして
ああああ
ああああ
ああああ
ああああ
ってなってちゃうんでしょうか?
教えて下さい。

for( int mb = 0 ; mb < 5 ; mb++){

for ( int mc = 1 ; mc < 5 ; mc++){

System.out.print("

560 名前:");

}

System.out.println("")
};

}
[]
[ここ壊れてます]

561 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 18:45:49.63 .net]
訂正です。

for( int mb = 0 ; mb < 5 ; mb++){

for ( int mc = 1 ; mc < 5 ; mc++){

System.out.print("あ");

}

System.out.println("")
}

562 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 18:51:32.43 ID:749GKFIC0.net]
>>535
毎回mcが1〜4まで繰り返すから
ヒントは
mc = 1なら「ああああ」が4回になる
mc = 2なら「あああ」が4回になる

563 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 19:03:07.25 .net]
そうか。mc++があるから
mcが1足されてると思ってましたが
毎回、mc=0になってるんですね。
ありがとうございます。



564 名前:デフォルトの名無しさん [2018/09/26(水) 19:08:14.30 ID:MrbR9bENa.net]
>>534
内側のループは毎回ループする回数が変わる必要があるよな。
最初は4回、2回目はは3回、という具合にループ回数が減っていく必要がある。

ところが今のそのプログラムだと毎回必ず4回ループになる。
これをなんとかして最初は4回、次は3回と言う具合に変化させるようにする。

もうなんとなくわかると思うが、例えば内側のループのforの条件部分を mc < 5 ではなく mc < (5 - mb) にするとできる。
他の方法でもできるが、とにかくループ回数が同じように減りさえすれば良い。

565 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 19:10:21.86 .net]
ありがとうございます!
なんとなく見えてきました
がんばってみます!

566 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 19:16:18.14 .net]
うまくいきました
ありがとうございました!
センスがあったらアドバイスなくても
自分で気がつくんだろうな・・・・

567 名前:デフォルトの名無しさん [2018/09/26(水) 19:35:25.46 ID:HSqf+3eD0.net]
7以降なら、zip扱う時はnio.FileSystem使えばラク。
6以前なら、apacheからソースとってきてそれパクれば良いw

568 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 19:42:17.68 ID:MMLyhqjfd.net]
ファイルの内容を読み、byte[]のListで返すメソッドcreateFListを作ったのですが、
戻ってきたリストの中身を順次見ていくと、最後にリストに入れたファイルBの内容しか表示されません。
FileInputStreamで得た結果ではなく、ただのbyte[]の配列をaddすると、期待通り順次内容を参照できてます。
ファイルの内容をListに入れる方法を教えてください。

public static void main(String[] args) {
 List<byte[]> fList = new ArrayList<byte[]>();
 fList = createFList();
 for (Iterator<byte[]> iterator = fList.iterator(); iterator.hasNext();){
  byte[] bw = iterator.next();
  System.out.printf("%c%c%c\n", bw[0], bw[1], bw[2]); // /ファイルBの先頭3文字が2回表示される
 }
}
private static List<byte[]> createFList(){
 List<byte[]> fList = new ArrayList<byte[]>();
 FileInputStream fis = null;
 byte[] fbyte = new byte[1024];
 try {
  fis = new FileInputStream("ファイルA");
  fis.read(fbyte);
  fList.add(fbyte); // ファイルAの内容をリストに追加
  fis.close();
  fis = new FileInputStream("ファイルB");
  fis.read(fbyte);
  fList.add(fbyte); // ファイルBの内容をリストに追加
  fis.close();
 } catch (Exception e){
  e.printStackTrace();
 }
 return fList;
}

569 名前:デフォルトの名無しさん mailto:sage [2018/09/26(水) 19:46:59.75 ID:zkJaWWrba.net]
全部間違ってる
悪いけどモノ作るレベルじゃないからまずはもうちょっと我慢して入門書を読み進めなさい

570 名前:デフォルトの名無しさん [2018/09/26(水) 20:52:07.36 ID:MrbR9bENa.net]
>>542
fbyte は同じやつ使い回してるからだよ。ファイルごとにnewして作らないと同じ所に上書きされてしまうのでダメ。

それとmain()の最初の new ArrayList<byte[]>() は無駄だ。なぜならその直後に fList = createFList() をしていて元の fList への参照は捨てられてしまうからだ。

571 名前:デフォルトの名無しさん mailto:sage [2018/09/28(金) 14:58:57.32 ID:61hLEuChM.net]
List Map覚えたての雑魚です
"あ"〜"お"、"か"〜"こ"...を追加した別々のArrayList
"あ行"〜"ん行"を追加したArrayList
を作る
HashMapで関連付ける
あ行キーを指定したら"あ"〜"お"が取得される、というプログラム組もうとしたんだけど、
List<String> aiueo = new ArrayList<>();
List<String> kaiueo = new ArrayList<>();
List<String> lineA_N = new ArrayList<>();
Map<List, List> map = new HashMap<>();
aiueo.add("あ"); ... aiueo.add("お");
kaiueo.add("か"); ... kaiueo.add("こ");
lineA_N.add("あ行"); ... lineA_N.add ("ん行");
map.put(lineA_N.subList(0, 1), aiueo);
map.put(lineA_N.subList(1, 2), kaiueo);
のようにsubList(i, i)を使って関連付ける以外の方法が浮かばなかったのですが、もっと綺麗な方法があったりしますか?

572 名前:デフォルトの名無しさん [2018/09/28(金) 16:19:23.91 ID:z3tO4nEA0.net]
>>545
MapのキーはStringでいんじゃない?
こんな感じで
https://paiza.io/projects/AcMfYc6_bvOdXfOdBiBSrQ

573 名前:デフォルトの名無しさん [2018/09/28(金) 16:50:58.08 ID:z3tO4nEA0.net]
>>542
配列は参照型だから同じ配列を参照しちゃってる、コピっちゃえばいいよ
https://paiza.io/projects/mppnngK-fgMr3ACUzzLRtA



574 名前:デフォルトの名無しさん [2018/09/28(金) 17:16:37.68 ID:z3tO4nEA0.net]
>>542
こういう書き方もできるよ
https://paiza.io/projects/IZkDli6_BuBHswAMbIqbqg?language=java

575 名前:デフォルトの名無しさん [2018/09/28(金) 17:24:29.50 ID:JZTmLHqA0.net]
コピるより、別変数にするか再初期化する方がええやろ。

576 名前:デフォルトの名無しさん [2018/09/28(金) 17:36:33.22 ID:JZTmLHqA0.net]
ごめん。勘違いしてた。

577 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 05:43:52.29 ID:q2F+AH0R0.net]
>>545
こんなのはどうだ?
https://paiza.io/projects/xdk9_ijSbZsQlqZYdZbVDg

578 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 08:09:09.74 ID:uDDRPkb/M.net]
>>546
>>551
String型でまとめる手もあるのですね
ただ、後で追加していきたい、という場合はListにした方が扱いやすいですよね?

579 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 11:08:11.08 ID:UEYQCClq0.net]
おしえて下さい
String line ="1 2 3 4 g10 6 7";

String[] list = line.split(" |g10");

スペースとg10でlineを分割して配列に入れて
1 2 3 4 6 7
にしたいのですが
1 2 3 4 6 7
みたいに
4と6の間に空白の要素が入ってしまいます。
どうすれば
1 2 3 4 6 7
に出来るか教えて下さい。

580 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 11:10:01.56 .net]
すいません訂正です

String line ="1 2 3 4 g10 6 7";

String[] list = line.split(" |g10");

スペースとg10でlineを分割して配列に入れて
1 2 3 4 6 7
にしたいのですが
1 2 3 4 空白要素 6 7
みたいに
4と6の間に空白の要素が入ってしまいます。
どうすれば
1 2 3 4 6 7
に出来るか教えて下さい。

581 名前:デフォルトの名無しさん [2018/09/29(土) 11:24:17.71 ID:JVLIweBX0.net]
>>552
マップのキーは不変にするのがセオリーだよ

マップに存在するキーを変えちゃうとハッシュ値とかイコールの結果が
変わっちゃうからマップの動作は保証されないっす

キーをコレクションにする必要があるケースってどんなケース?

582 名前:デフォルトの名無しさん [2018/09/29(土) 11:32:34.91 ID:JVLIweBX0.net]
>>554
できた!
String[] list = line.split(" g10 | ");

583 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 11:36:49.65 .net]
>>556
ありがとうございます!
答えを聞けば
あーそういう事か・・・
て感じですね、



584 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 16:05:20.80 ID:uDDRPkb/M.net]
>>555
ほーそうなんですね、勉強になりました
例えばパッケージとクラス、クラスとコンストラクタ、クラスとメソッドでMap作るとしたら、それぞれをListでまとめた方が管理しやすそうだなぁと。

585 名前:デフォルトの名無しさん [2018/09/29(土) 17:00:45.25 ID:JVLIweBX0.net]
>>558
パッケージとクラスは
1つのパッケージに複数のクラスが存在するっって
関係だからキーをリストにしたい理由がよくわからない

こういうキーのリストが欲しいわけじゃなく?
https://paiza.io/projects/XAUg69Mv_3KueQ9s626nQA?language=java

586 名前:デフォルトの名無しさん mailto:sage [2018/09/29(土) 23:05:55.82 ID:uDDRPkb/M.net]
>>559
パッケージをListにする必要はないと思いますが、
パッケージjava.utilとクラス一覧
クラスjava.util.Dateとメソッド一覧

…書いてたら確かにキーはListにする必要なかった。
ありがとうございます。

587 名前:デフォルトの名無しさん [2018/09/30(日) 00:37:07.97 ID:KPqVv5wd0.net]
>>554
こんなのでもできる。これの場合は空白は1文字以上なら何文字でも良い。

String[] list = line.split("\\s+(g10\\s+)?");

ま、正規表現のパターンをどうするかの問題だな。

588 名前:デフォルトの名無しさん mailto:sage [2018/09/30(日) 21:24:58.06 ID:OqFePz/nd.net]
わかんねー。
難しい

589 名前:デフォルトの名無しさん mailto:sage [2018/10/01(月) 11:44:20.66 ID:HXCGmwtoM.net]
すっきりシリーズ実践編7章の練習問題なのですが、突然showMemory();というのが出てきて入力してもエラーになります。
ググっても出てこないのですが、これはいったいなんですか?

590 名前:デフォルトの名無しさん [2018/10/01(月) 13:41:26.81 ID:uzbdAfRPM.net]
>>563
ググってだめなら
なぜハゲらないんだ?

591 名前:デフォルトの名無しさん mailto:sage [2018/10/01(月) 17:20:14.70 ID:0G+l/MVn0.net]
>>563
著者か出版社にメールしろ

592 名前:デフォルトの名無しさん mailto:sage [2018/10/02(火) 18:03:42.82 ID:hoDCY76ca.net]
>>563
なんですかと言われてもその本のどこかに書いてあると思う

593 名前:デフォルトの名無しさん [2018/10/03(水) 11:00:45.93 ID:gJy1D1hJ0.net]
>>521
Linux でのやり方

zip形式の、archive ファイルを解凍する

unzip archive.zip

gunzipコマンドは、gzip形式とcompress形式の、圧縮ファイルを解凍する。
-r で、そのディレクトリ内の、すべての圧縮ファイルを解凍する

gunzip -r ディレクトリ名



594 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 11:57:09.38 ID:gJy1D1hJ0.net]
>>563
意味のわからない練習問題なんか、無視すれば?

時間の無駄

595 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 14:57:43.46 ID:9+VVYKLPd.net]
難しい

596 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 15:53:09.08 ID:daSHmcx9M.net]
クラス分割せず変数に代入してってやつしかできない

複数クラスに分けて引数渡してってやつのやり方がわからないよママン
引数がない場合は◯◯を表示するプログラムを作りなさいとかいう練習問題を出されてるんですが
意味がよくわかりません
引数なかったらコンパイルできないじゃないですか

597 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 16:00:58.28 ID:daSHmcx9M.net]
よくわかんないけどsetうんたらとかgetうんたらを使えばいいの?

598 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 16:05:11.87 ID:K7uCuHqGM.net]
>>570
何言ってるのかわかんないから問題全文転載して

599 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 16:16:07.98 ID:daSHmcx9M.net]
◯◯日後の日付と曜日を表示しましょう

引数に◯◯日後の◯◯を設定その日付y/M/dと曜日を表示
100日後なら100を受け渡し?
引数がない場合はシステム日付を出してくださいっての

俺もよくわかってない
int型の変数Xに100を代入して
100日後は2019/01/11/金です
と表示するだけなら
みたいなやり方でクラスが1個しかないようなプログラムなら本を参照してやっとこさ
できたんだけど
引数のことが全然わからないので困ってます

600 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 16:21:17.36 ID:9+VVYKLPd.net]
>>573
問題ってどこで
もらってるの?

601 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 16:32:27.87 ID:daSHmcx9M.net]
引数ってルールがややこしくてよくわからないのでmainメソッドで用意した変数でやっちゃってます

602 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 16:49:04.16 ID:daSHmcx9M.net]
mainから 引数(50) を渡して50日後の日付を出すのは出来たんですけど

引数がない場合っていう問題の意味がよくわかんなくて
渡す引数のカッコの中になにもなかったらエラーになって動かないじゃないすか

603 名前:デフォルトの名無しさん mailto:sage [2018/10/03(水) 17:16:08.08 ID:SKbAf1Wk0.net]
これで解決
https://www.javadrive.jp/start/member/index6.html



604 名前:デフォルトの名無しさん [2018/10/03(水) 20:47:47.84 ID:3B507mk50.net]
>>573
引数取らないメソッド作るだけっしょ

605 名前:デフォルトの名無しさん [2018/10/04(木) 03:42:19.04 ID:9/syaOEb0.net]
>>573
その引数って実行時のコマンドラインで渡す引数のこと?
もしそうなら main() に渡される String の配列だよ。

606 名前:デフォルトの名無しさん mailto:sage [2018/10/04(木) 04:32:34.81 ID:FXwcGLCc0.net]
「java コマンドライン引数」で検索!

607 名前:デフォルトの名無しさん mailto:sage [2018/10/09(火) 17:05:00.58 ID:pvyGknIYM.net]
SwingのJTreeで表示される内容をソートしたいのですが、一般的な方法はあるのでしょうか?

ユーザーがデータを登録してJTreeに表示されるようにするのですが、今の知識で出来るのが
登録されるデータをリストにして、登録を行う際にリスト自体をソート→JTree再生成
なんですが、
JTree自体を簡単にソートする機能などはありますか?

608 名前:デフォルトの名無しさん mailto:sage [2018/10/13(土) 21:42:43.90 ID:iFv8AOW0d.net]
switch文のcase部分で正規表現は使えない感じですかね

609 名前:デフォルトの名無しさん mailto:sage [2018/10/13(土) 23:10:37.09 ID:L ]
[ここ壊れてます]

610 名前:RaeBfZM.net mailto: >>582
Javaにそんな気の利いた機能はない
[]
[ここ壊れてます]

611 名前:デフォルトの名無しさん [2018/10/14(日) 00:49:24.63 ID:rKkXAekW0.net]
たとえあっても結局は if で一つづつ調べていくのと同じコードに展開されるだけだろうから見た目が分かりやすくなるという以上の意味はないと思う。

612 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 09:56:40.69 ID:ROu9whYDd.net]
なるほど、わかりました

613 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 10:13:31.10 ID:r97sA0Aya.net]
>>584
正規表現リテラルが言語に組み込まれているなら、コンパイラが頑張れば
1パスで全てのcaseの正規表現をテストするステートマシンを生成することは普通に可能でしょ



614 名前:デフォルトの名無しさん mailto:sage [2018/10/14(日) 11:35:15.37 ID:3YFeE/uw0.net]
数値型とか文字列型だと排他性が保証されてる、
例えばその数値が0であれば、その数値は0以外のあらゆる数字ではない事は自明なわけだけど、
正規表現だと、ある正規表現にマッチする文字列が
他の正規表現にマッチしない事は必ずしも自明ではないから switch とは馴染まないんじゃないかね?

615 名前:デフォルトの名無しさん [2018/10/15(月) 11:06:57.69 ID:eGRIdNe6a.net]
そう。上から順番にマッチするかを調べて行ってマッチした所から実行するというコードにしかできないので if で書いたのとほぼ同じにしかできない。
違いはbreakがなければ下に抜けるところぐらいかな。

616 名前:デフォルトの名無しさん mailto:sage [2018/10/15(月) 20:02:25.84 .net]
ギンギラギンにさりげなくー♪

617 名前:デフォルトの名無しさん mailto:sage [2018/10/16(火) 09:16:47.63 ID:LIpnDMBF0.net]
javaってクロスプラットフォームだからどのosでも実行できる!!
って言うけど他の言語も実行できるよね?
どこが違うの?

618 名前:デフォルトの名無しさん mailto:sage [2018/10/16(火) 10:32:57.81 ID:hibLU9vcd.net]
コンパイルでできるファイルが各OS専用か、そうじゃないかみたいな感じじゃなかったっけ

619 名前:デフォルトの名無しさん mailto:sage [2018/10/16(火) 10:38:15.43 .net]
javaをネガキャンするなー!

620 名前:デフォルトの名無しさん mailto:sage [2018/10/16(火) 12:28:26.08 ID:2ObsWyDna.net]
それ20年前の売り文句だからな
当時としては多分プラットフォーム間の互換性で抜きん出てたんじゃないの、知らんけど

621 名前:デフォルトの名無しさん [2018/10/16(火) 12:59:45.83 ID:iEAeFl+H0.net]
>>590
他のは各OS用に再ビルドが要る
最近はC#もいける場合が多いが
バイナリ互換でGUIまでできるのは未だにJavaだけ

622 名前:デフォルトの名無しさん [2018/10/16(火) 13:11:22.61 ID:0QUQFWONa.net]
仮想マシン上で動くからコンパイルしてバイナリを作ればそのバイナリを他のマシンの仮想マシン上で同じように動かせるということ。

ただし現実はOS毎の仮想マシンに違うバグがあったりして中々うまくいかなかったりする。

それとプログラム作る側も気を付けてないとうまく行かない事がある。例えばファイルのディレクトリの区切り文字がUNIX系OSとWindowsでは違うとかね。
そういう違いを考慮して作れるようにはなっているが考慮しないプログラムも作れるようになっている。

623 名前:デフォルトの名無しさん mailto:sage [2018/10/17(水) 11:21:17.67 ID:5AnSWZbJa.net]
そもそもpythonだのRubyだのは各OSごとにコンパイルという概念がないから、
そこらへんが当たり前になった今ではいまいちピンとこないのも無理はない



624 名前:デフォルトの名無しさん mailto:sage [2018/10/17(水) 12:08:39.22 ID:TU0+elbq0.net]
同じjavaでもバイトコードコンパイルしたバージョンが違うと呼び出し失敗するとかな

625 名前:デフォルトの名無しさん mailto:sage [2018/10/17(水) 12:30:38.33 ID:tHw/Qu/EM.net]
>>594
それは間違い
JavaはJREが正式に廃止されたから、今月からはクライアントアプリについては
各プラットフォームに向けて個別にランタイムを同梱したパッケージをビルドする必要がある

626 名前:デフォルトの名無しさん [2018/10/17(水) 12:46:57.34 ID:8efdFbKLa.net]
>>596


627 名前:部的には似たようなもんだよな。Perlも実行時に素早く中間コードにコンパイルしてから実行してるし。 []
[ここ壊れてます]

628 名前:デフォルトの名無しさん [2018/10/17(水) 16:58:25.10 ID:8mlz8GGc0.net]
$ ./Hage.java
Hello, ハゲ!

629 名前:デフォルトの名無しさん mailto:sage [2018/10/18(木) 20:24:57.59 .net]
パイザのBランクになれました。

630 名前:デフォルトの名無しさん mailto:sage [2018/10/18(木) 21:36:17.32 ID:CSkK3ONp0.net]
あー。あの問題解くやつか。そういやこの頃やってなくてすっかり忘れてたが今見たら俺もBだった。
トロフィー3つだって。

631 名前:デフォルトの名無しさん mailto:sage [2018/10/18(木) 23:09:40.13 ID:8EKXnxGLa.net]
ほんの数日前にJavaの勉強を始めたものです
自宅PCでも環境を整えようとJDK11とかいうものを入れてからEclipseをインストールしたのですが動きません
上のレスを少し読んだところJREが廃止されたと聞きました(たしかに本の解説と違ってJDKインストール時にJRE云々がありませんでした)
学校もEclipseなので使えないと本当に困るのですが私はどうすればよいのでしょうか?

632 名前:デフォルトの名無しさん [2018/10/18(木) 23:26:55.18 ID:r8wg0Ock0.net]
>>603
本に書いてあるのか学校と同じバージョンでやればいい

633 名前:デフォルトの名無しさん mailto:sage [2018/10/18(木) 23:54:35.05 ID:8EKXnxGLa.net]
>>604
ありがとうございます
学校は8だったのでとりあえず11アンインストールしてそのようにしたらなんとかなりました(アンインストールもレジストリのあれこれですぐには出来なくて苦労しましたが)

ググったら結構深刻な問題なんですね
とりあえず今はどうにかなりましたが今後が心配です



634 名前:デフォルトの名無しさん mailto:sage [2018/10/19(金) 00:28:28.89 ID:UgWipG/ea.net]
Java8入れたなら今後重大な脆弱性が見つかってもパッチが提供されない可能性があるから、
今や存在そのものがセキュリティホールであるJavaアプレットは必ず無効にしておくこと
あと今月からは開発以外の用途で使ったら(Java製の5chブラウザとか)ライセンス違反だから注意ね

635 名前:デフォルトの名無しさん mailto:sage [2018/10/19(金) 00:53:41.40 ID:9Ye0KfSK0.net]
paizaよりAtCoderの方がいいぞ

636 名前:デフォルトの名無しさん mailto:sage [2018/10/19(金) 23:40:19.01 ID:QtXhI67L0.net]
あー。サウジの件は経済的にも影響があるからWBSでも報道することになったか。

637 名前:デフォルトの名無しさん mailto:sage [2018/10/19(金) 23:40:43.25 ID:QtXhI67L0.net]
ごめん。誤爆。実況に書いてるつもりでここに書いちゃった。w

638 名前:デフォルトの名無しさん mailto:sage [2018/10/20(土) 00:54:54.45 .net]
俺はお前を許す

639 名前:デフォルトの名無しさん [2018/10/20(土) 20:52:13.49 ID:7w/MX7TC0.net]
ブリッジパターンについてのこのヤフーブロはこのページからおもろいし、ためになるわ。
https://blogs.yahoo.co.jp/kamyu_2010/35442561.html

640 名前:デフォルトの名無しさん mailto:sage [2018/10/20(土) 22:48:08.58 ID:wp9EeO+Ya.net]
Javaのデザインパターンの解説なんか腐るほどあるのによりによってなぜこんなバカっぽいのをチョイスしたのか
本人乙?

641 名前:デフォルトの名無しさん mailto:sage [2018/10/21(日) 10:29:55.80 ID:iKutjjfua.net]
何このゴミ記事は
晒し上げのつもりなん?

642 名前:デフォルトの名無しさん mailto:sage [2018/10/21(日) 12:40:49.44 .net]
不細工なコードしか書けない。
(涙)

643 名前:デフォルトの名無しさん mailto:sage [2018/10/21(日) 14:07:53.47 ID:2oCbSQP00.net]
デザパタどころか継承も使ってないうちのシステム
共通化もなく同じコードを数百のソースにベタ書きしてるんだけど
目眩がするわ…



644 名前:デフォルトの名無しさん [2018/10/21(日) 17:19:25.72 ID:6w48E+U+M.net]
よくわかってないけど
転職の面接で継承じゃなく委譲だ!

645 名前:デフォルトの名無しさん [2018/10/21(日) 17:20:57.22 ID:6w48E+U+M.net]
と力説しまくれば受かりますか?
みんなあまりできる人いなそうなら面接官にもつっこまれないかな。

646 名前:デフォルトの名無しさん [2018/10/21(日) 17:22:05.37 ID:6w48E+U+M.net]
理解してない面接官のプライドもあるから
よし、君は合

647 名前:格!となることを期待して []
[ここ壊れてます]

648 名前:デフォルトの名無しさん mailto:sage [2018/10/21(日) 17:28:03.33 ID:SPKWiuHwd.net]
Java固有じゃないかもですが質問させて下さい
(x==1|x==3|x==100)
みたいに左辺が同じ論理式って簡略化して表記する方法ありますか?

649 名前:デフォルトの名無しさん [2018/10/21(日) 17:28:07.59 ID:TsGKjBTxa.net]
使えない奴が入る率が高過ぎたら、そいつの責任になるから、流石にそれなりに勉強してると思うぞ。。。
少なくとも中小は人事なんて無いから、開発責任者とかが面接官する。
大企業も1人くらい分かる奴を面接官に入れるだろ。

ろくな面接官がいないのは派遣会社くらいじゃ無いか?

百歩譲って入れたとして、使い物にならなかったら陰湿なイジメが待ってるぞ。(経験者談)

650 名前:デフォルトの名無しさん mailto:sage [2018/10/21(日) 17:30:21.04 ID:PQvzxFzPM.net]
>>615
レベルの低い現場で継承使ってると最悪だぞ(俺はレベルに関わらず全ての実装継承はクソだと思ってるが)
全部ベタ書きの方が遥かにマシ

651 名前:デフォルトの名無しさん [2018/10/21(日) 18:16:07.43 ID:3Lw0xmRE0.net]
>>619
こういう書き方なら時々やる
List.of(1, 3, 10).contains(x)
Stream.of(1, 3, 100).anyMatch(i -> i == x)

652 名前:デフォルトの名無しさん mailto:sage [2018/10/21(日) 18:20:52.15 ID:SPKWiuHwd.net]
>>622
なるほど、配列を自分で定義したりするよりはスマートな感じですね
有り難うございます

653 名前: mailto:sage [2018/10/21(日) 18:45:27.07 ID:gNVlu9Yw0.net]
>>616
>継承じゃなく委譲
最近、この問題はコンストラクタの記述能力に依存することがわかってきました
継承を使う場合、Java のコンストラクタで書ける内容が C++ のコンストラクタでは書けない、ならばおしなべて委譲にするしかない、と



654 名前:デフォルトの名無しさん [2018/10/21(日) 19:45:35.27 ID:0dWokXAIa.net]
>>619
swith使えばいいのでは?

swithはbreakさせなければ下に抜けるからな。

switch (x) {
case 1:
case 3:
case 10:
 System.out.println(x);
}

なんていう風に書いとくとxが 1, 3, 10 の時だけ出力するよ。

655 名前:デフォルトの名無しさん mailto:sage [2018/10/21(日) 23:36:03.78 ID:2oCbSQP00.net]
>>620
大手ユー子に転職したけど面接のときに技術わかるやつ一人もいなかったぞ
現場離れた部長と人事だけ
Javaほとんど出来ないけどあっさり採用されてしまったわ
独立中小の方が職人多かったよ

656 名前:デフォルトの名無しさん mailto:sage [2018/10/21(日) 23:48:18.28 ID:SPKWiuHwd.net]
>>625
冗長になりそうでswitchは敬遠してましたが意外と視読性良さそうですね
有り難うございます

657 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 04:20:27.70 ID:UcRlErit0.net]
bronze取ったら現場探したほうがええんか?
未熟さで迷惑かけて対人ストレスとか抱えるくらいならsilverくらい取ってからにしようかと思うんだけど
いやまぁ資格と現場で使えるかが別物ってのはとりあえず置いといてよ

658 名前:名無しさん@そうだ選挙に行こう! Go to vote! [2018/10/22(月) 08:37:05.02 ID:gS6quPUmM.net]
bronzeは「わたしはjavaができません」と申告してるようなもんだから
書かないほうがよいのでは?w

659 名前:名無しさん@そうだ選挙に行こう! Go to vote! [2018/10/22(月) 10:01:40.15 ID:3rTgJh0aa.net]
>>626
現場離れた部長が技術分かる奴なんじゃないの?
別に特定の言語を知らなくても何か一つ言語使えてれば、他の言語の文法覚えるだけで即戦力(扱い)だし。

本当に未経験でも結果的に使える奴になれば良いけどね。

660 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 12:21:35.68 .net]
abcdeの末尾がeならokと出力したいのですが
↓では期待通りにならないのですが
どうしたら上手くいくか教えて下さい。

String word= "abcde";

if(word.matches("e$"))System.out.println("ok");

661 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 12:24:08.82 ID:mTnahwQV0.net]
/.*?e$/
とかかな

662 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 12:43:07.54 ID:DMneX9TO0.net]
これだと動くから、なんかはしょりすぎてるんでは?

String word = "abcde";
if (Pattern.compile("e$").matcher(word).find())
System.out.println("ok");

663 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 12:55:50.18 .net]
ありがとうございます
修正して
if(word.matches(".+e$"))System.out.println("ok");

で期待通りになったんですが、
これでもいいのかな。



664 名前:デフォルトの名無しさん [2018/10/22(月) 18:59:00.82 ID:u6NjsIb00.net]
Ruby でやったけど、文字列が、"e" だけの場合に「.+ .*」で違いがある

"e".match /.+e$/
#=> nil

"e".match /.*e$/
#=> "e"

665 名前:デフォルトの名無しさん [2018/10/22(月) 19:08:12.53 ID:8WYgXfgna.net]
>>635
*は直前の文字が0文字以上で+は直前の文字が1文字以上なのでそうなって当然だと思う。

666 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 19:53:44.41 ID:HK8Vf3a+0.net]
あ*
あ+
覚えられたら楽しそう。

667 名前:デフォルトの名無しさん [2018/10/22(月) 20:46:03.82 ID:Ohiki0Rb0.net]
式の評価順について教えてください
下記のプログラムで
カッコが先に処理されて
DECBAと出力されると予想したのですが
実際はABCDEと出力されました
これの仕様が書かれたドキュメントを教えてください

public static void main(String[] args) {
 int[] a = new int[1];
 a[getValue("A")] = getValue("B") + (getValue("C") + (getValue("D") + getValue("E")));
}

static int getValue(String s) {
 System.out.println(s);
 return 0;
}

668 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 21:48:42.82 ID:zi5Z/69B0.net]
普通に言語仕様読むのが一番早い。

英語読めるなら本家
https://docs.oracle.com/javase/specs/
古いのなら日本語版もある
www.y-adagio.com/public/standards/tr_javalang/

669 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 22:06:15.12 ID:u6NjsIb00.net]
>a[getValue("A")] = getValue("B") + (getValue("C") + (getValue("D") + getValue("E")));

(getValue("C") + (getValue("D") + getValue("E")));
これは、"C" + "D" + "E" → "CDE"

getValue("B") + "CDE" → "BCDE"

+ 演算子は単に、文字列の連結だろ

670 名前:デフォルトの名無しさん [2018/10/22(月) 22:09:05.28 ID:Ohiki0Rb0.net]
>>639
それのどこに書いてあるのか教えて欲しいのです

671 名前:デフォルトの名無しさん [2018/10/22(月) 22:09:45.42 ID:Ohiki0Rb0.net]
>>640
文字列は表示してるだけで戻り値はintですよ

672 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 22:24:12.06 ID:zi5Z/69B0.net]
>>641
英語の方ならExpressions、Evaluation Order、
日本語の方なら式、評価順序のあたりを読めばいいよ。

673 名前:デフォルトの名無しさん [2018/10/22(月) 22:29:43.80 ID:Ohiki0Rb0.net]
>>643
ありがとうございます!ありました!



674 名前:デフォルトの名無しさん mailto:sage [2018/10/22(月) 22:57:47.71 ID:u6NjsIb00.net]
ああ、文の評価順序を確かめたかったのか

たぶん左から評価して、その値を、( )の優先順位で足していくのだろう

a[0] = 0 + (0 + (0 + 0))
a[0] = 0 + (0 + 0)
a[0] = 0 + 0
a[0] = 0

これは、知っていないとマズイ。
漏れも、知らなかったけど

675 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 01:01:39.75 ID:IQhrGGp+d.net]
インクリメントの前置後置とかな

676 名前:デフォルトの名無しさん [2018/10/23(火) 01:37:49.72 ID:SDpmiZwh0.net]
>>645
元の質問は括弧の中から計算していきそうなのにそうではなかったので仕様が知りたかったということだよ。

677 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 02:55:50.13 ID:SDpmiZwh0.net]
>>631
それ実際に実行されるのはこれだ。
java.util.regex.Pattern.compile("e$").matcher(word).matches()
最後の matches() は java.util.regex.Matcher クラスのメソッドだ。
ドキュメントには「領域全体をこのパターンとマッチします。」と書いてある。
全体とだ。つまりパターンには前後に隠された ^$ が最初から入っているような状態になる。
なので例えば word が "e" ならマッチするが e の前後に一文字でも何かあればマッチしない。
だから ".*e$" だとマッチする。(というか最後の $ は不要)

grep コマンドへ与えるパターンみたいにやりたい場合は Matcher クラスのインスタンスで find() したりするしかない。

678 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 07:18:01.29 ID:e9JCNKc90.net]
これでもOKかな。

if (word.endsWith("e"))

679 名前:デフォルトの名無しさん [2018/10/23(火) 11:26:07.55 ID:QwHjyvjPa.net]
>>649
正規表現不要ならそっちの方が分かりやすいな。

680 名前:デフォルトの名無しさん mailto:sage [2018/10/23(火) 12:28:50.46 .net]
ありがとうございます
勉強になります。

681 名前:デフォルトの名無しさん [2018/10/24(水) 02:19:49.67 ID:2LYWqLo00.net]
>>638
Ruby で以下を実行したら、ABCDE の順番になった

ary = [ ]

def getValue ( str )
puts str; 0
end

ary[ getValue("A") ] = getValue("B") + ( getValue("C") + ( getValue("D") + getValue("E") ) );

682 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 08:47:38.46 ID:XKgg3tJUa.net]
()は決して先に計算するという意味ではなく、結合の優先順位を変えるんだよ
a = (b + c) + f(x) は、=, +についてもそれぞれを引数2つの関数とみると
=(a, +(+(b, c), f(x))
というツリー構造になる
これをどういう順序で評価するかはいくつかやり方があるが、
Javaや糞Ruby糞を含む多くの言語では正格評価と呼ばれる方式が採用されており、これは外側の関数から内側の順に式を評価する
引数リスト中での評価順序は言語によって様々だが、Javaの場合は原則的に左から右の順に評価する

683 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 10:14:03.79 ID:hDrHSdWT0.net]
public class test {
static int n = 2;
public static void main(String[] args) {
System.out.println(getValue("A") * (getValue("B") + getValue("C")));
}
private static int getValue(String s) {
System.out.println(s);
n++;
System.out.println(n);
return n;
}
}

A
3
B
4
C
5
27

かっこの中が先に実行されていたら、5 * (3 + 4) = 35



684 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 11:58:03.23 ID:yjyY64DY0.net]
助けて下さい、パイザ恐怖症です。

685 名前:デフォルトの名無しさん mailto:age [2018/10/24(水) 12:14:05.89 ID:wgd96425M.net]
おっぱいざ

686 名前:デフォルトの名無しさん [2018/10/24(水) 12:15:04.76 ID:k2aW8IHEa.net]
>>654
メソッドを呼んで値を取り出す順序とその後の計算順序が違うってことかな?

687 名前:デフォルトの名無しさん [2018/10/24(水) 12:19:07.90 ID:k2aW8IHEa.net]
>>655
他を使えば?

688 名前:デフォルトの名無しさん mailto:sage [2018/10/24(水) 17:24:32.96 ID:SCI/Jnq1a.net]
自分を信じている。

689 名前:デフォルトの名無しさん [2018/10/24(水) 23:47:39.01 ID:2LYWqLo00.net]
paiza, codepad は、ログイン無しで書ける

評価順序・結合規則は、異なる概念

「式1 演算子 式2」がある時に、式内に何かの状態を変える副作用があるとか、
変数を共有していたりすると超危険!

バグる・勘違いする

690 名前:デフォルトの名無しさん mailto:sage [2018/10/25(木) 00:00:58.67 ID:Y/5d8Fwoa.net]
頑張らなきゃ。

691 名前:デフォルトの名無しさん mailto:sage [2018/10/25(木) 20:52:09.26 ID:/sJHXbfH0.net]
javaが有料になるのは本当ですか?
一体何が始まるんです?

692 名前:デフォルトの名無しさん mailto:sage [2018/10/25(木) 22:48:53.55 ID:NF5xn3mp0.net]
終わりが始まるのじゃ

693 名前:デフォルトの名無しさん mailto:sage [2018/10/25(木) 23:05:07.68 ID:Vh4vLvlsM.net]
四季に例えるなら今月からJavaワールドは秋に入った
オラクルにとっては実りの秋、つまり、いよいよ満を持して収穫の時期だ
成長は止まり、次第に終わりに近づいていく



694 名前:デフォルトの名無しさん mailto:sage [2018/10/25(木) 23:05:48.73 ID:8t/VvI+za.net]
諸行無常

695 名前:デフォルトの名無しさん mailto:sage [2018/10/25(木) 23:16:38.63 ID:8t/VvI+za.net]
まじ話、どうしたらいいのですか?
8月からJavaに絞ってプログラミング始めたけど
Javaという選択肢は間違ってたのかな。

696 名前: mailto:sage [2018/10/26(金) 03:38:08.86 ID:OsBjME340.net]
>>666
間違っていませんよ

697 名前:デフォルトの名無しさん mailto:sage [2018/10/26(金) 06:42:50.41 ID:RF3v5pwza.net]
信じます。

698 名前:デフォルトの名無しさん mailto:sage [2018/10/26(金) 18:24:58.78 ID:8x+zlsFp0.net]
自分を鍛える。

699 名前:デフォルトの名無しさん mailto:sage [2018/10/26(金) 21:56:08.51 ID:c5tX/A9Y0.net]
Javaは犠牲になったのだ…
ORACLEの買収から続く因縁…
その犠牲にな

700 名前:デフォルトの名無しさん mailto:sage [2018/10/27(土) 00:26:26.42 ID:f5VWw0O9d.net]
ずいぶん勉強したな
まるでOracle博士だ

701 名前:デフォルトの名無しさん mailto:sage [2018/10/27(土) 20:45:41.22 ID:GFYQON7a0.net]
難しい。
でも、頑張る

702 名前:デフォルトの名無しさん mailto:sage [2018/10/29(月) 22:23:02.20 ID:gfMerkhba.net]
標準入力
0
1

sc.nextとかsc.nextIntとかで
0を読み込んで
また、読み込んだら
1になるけど
読み込んでも次の文字に移動しないで
0のまま読み込みできるような
方法ってありませんか?

703 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 09:54:01.25 ID:xNl+FZA5a.net]
プログラミングは面倒なものだ。
でも頑張る。



704 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 11:22:14.61 ID:TktsfVtm0.net]
プログラミング学習において一番やっちゃいけないこと
それはただやみくもに学習を続ける事

705 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 11:24:12.48 ID:qIK5QusDd.net]
ここにいる人が最初に何作ったか気になる

706 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 11:53:41.32 ID:yLOLSFfea.net]
高校生の頃に簡単なシューティングゲーム作った

707 名前:デフォルトの名無しさん [2018/10/30(火) 12:30:56.41 ID:8/9eZ6sC0.net]
歴史年表をデータ化して
ランダム4択クイズみたいの作ってたなあ
当時はDBなんて知らないから
ソースにベタ書きだが

708 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 14:16:50.97 ID:u5gp0FkU0.net]
自動釣銭機のファームウェアだったわ

709 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:16:14.83 ID:u4NMPEb2d.net]
>>677
スッキリJavaの入門終わったくらいなんだけど、そこからだとどういう知識付けていったら作れるかな
フレームワークとかまだよくわかってなくて

710 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 19:53:26.35 ID:yLOLSFfea.net]
>>680
Javaではゲーム作ったことないからよく分からんけど、
Java ゲーム とかでググるとそれっぽい本がいくつか出てくるからそこらへんを適当に一冊選んで丸写ししてみればいいんじゃないかな

711 名前:デフォルトの名無しさん [2018/10/30(火) 20:45:03.24 ID:xkGCjv5u0.net]
>>673
標準ライブラリには用意されてないんで自作する感じで
https://paiza.io/projects/qS8nTKNW3exoY87rvTwdsg?language=java

712 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 21:34:59.67 ID:29XJYIaEa.net]
>>682
ご丁寧にありがとうございます
m(_ _)m
私はまだまだ勉強しなきゃいけない事が多いようですw

713 名前:デフォルトの名無しさん mailto:sage [2018/10/30(火) 22:19:01.39 ID:tLch1bmf0.net]
YouTube にある、T Umezawa の動画が有名

【Java】ゲームプログラミング超入門
https://youtu.be/FsRHdL_r0pE?list=PLJ86MSrhnFKVQPf-E8y0FZKv7uzR4L4Dt

Windows8.1とJava8の組み合わせによる最新版:youtu.be/Wp34YbKfWag
C#版: https://youtu.be/zSiER0sxexw

次:youtu.be/_MY7yPD58JE



714 名前:デフォルトの名無しさん [2018/10/31(水) 12:51:34.27 ID:umCB7isma.net]
最初に?というとこんなやつかな。

10 PRINT "*";
20 GOTO 10

715 名前:デフォルトの名無しさん [2018/10/31(水) 15:52:18.08 ID:P9zyHHGGM.net]
*
*
*
*
*
*
*
*
*
*
BREAK AT 10


716 名前:デフォルトの名無しさん [2018/10/31(水) 17:19:04.35 ID:umCB7isma.net]
マイコンの素晴らしさに感動。
これがあればなんでもできる。

と、本気で思った。

717 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 17:35:46.14 ID:WYczTFcia.net]
Javaがあれば何でも叶う!

718 名前:デフォルトの名無しさん mailto:sage [2018/10/31(水) 17:38:20.63 ID:WYczTFcia.net]
Javaで夢が広がる!

719 名前:デフォルトの名無しさん mailto:sage [2018/11/03(土) 16:41:01.50 ID:5ctS1VyRa.net]
才能ないけど頑張ってます。

720 名前:デフォルトの名無しさん [2018/11/04(日) 11:32:46.08 ID:hQdPSgHl0.net]
ブリッジパターンの応用手順のブログみたい。パッケージを開発する時を前提にしているね。
https://blogs.yahoo.co.jp/kamyu_2010/35480077.html

721 名前:デフォルトの名無しさん mailto:sage [2018/11/04(日) 11:56:02.10 ID:BezIGIRZa.net]
定期的にクソ見辛いブログをステマしていくやつなんなの

722 名前:デフォルトの名無しさん mailto:sage [2018/11/04(日) 13:56:16.32 ID:66vK87J40.net]
全くの未経験で転職先でjavaを使用するという事で学習していこうと思ってるんだけど
先にHTML、CSSからやっていかないとダメな感じ?

723 名前:デフォルトの名無しさん [2018/11/04(日) 15:02:34.71 ID:eEexL0w40.net]
              \   ∩─ー、
                \/ ● 、_ `ヽ
                / \( ●  ● |つ
                |   X_入__ノ   ミ 俺は釣られないクマ ・・・
                 、 (_/   ノ
                 \___ノ゙
                 / 丶' ⌒ヽ:::
                / ヽ    / /:::
               / /へ ヘ/ /:::
               / \ ヾミ  /|:::
              (__/| \___ノ/:::



724 名前:デフォルトの名無しさん mailto:sage [2018/11/04(日) 17:42:51.19 ID:hcv1KEF/a.net]
頑張ります!

725 名前:デフォルトの名無しさん mailto:sage [2018/11/04(日) 23:00:14.19 ID:l3etVQHq0.net]
javascriptがjavaの仲間だと思っていた時期が俺にもありました…

726 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 09:00:32.02 ID:SxXiYgd60.net]
今でもそう思ってます

727 名前:デフォルトの名無しさん [2018/11/05(月) 09:20:20.54 ID:fSW0Oxfca.net]
悔い改めよ

728 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 10:40:33.26 ID:9O10s3S2d.net]
むしろ今となってはjavascriptのほうが使いやすい

729 名前:デフォルトの名無しさん [2018/11/05(月) 11:13:59.19 ID:fSW0Oxfca.net]
慣れの問題と何を作るかの問題だな。

730 名前:デフォルトの名無しさん mailto:sage [2018/11/05(月) 11:22:08.13 ID:/yhagSUO0.net]
ブラウザと周辺ライブラリの進歩がデカイ

731 名前:デフォルトの名無しさん mailto:sage [2018/11/06(火) 00:13:10.82 ID:lOm/SiQT0.net]
わからん。。。
嫌になる
でも、頑張る

732 名前:デフォルトの名無しさん [2018/11/11(日) 21:19:15.74 ID:ajreNdVSa.net]
ttps://pastebin.com/5QkYYhdg
Stringのインデックスエラーが出るのですが、何かいけないのでしょうか?

733 名前:デフォルトの名無しさん [2018/11/11(日) 21:22:14.23 ID:B3f/927da.net]
Java有料化で仕事無くなるかもなのに頑張るのか。。。



734 名前:デフォルトの名無しさん mailto:sage [2018/11/11(日) 21:28:16.21 ID:/etMYVvT0.net]
無くなるの?

735 名前:デフォルトの名無しさん [2018/11/11(日) 21:56:52.92 ID:B3f/927da.net]
Java有償化まとめ
https://mevius.5ch.net/test/read.cgi/tech/1532325790/

736 名前:デフォルトの名無しさん [2018/11/11(日) 23:54:14.92 ID:/c5AFHPv0.net]
>>703
charIndexがリセットされないのがいけない

"123456"を表示するときにcharIndexは0から5に増えて
"7"を表示するときにcharIndexは5だからNG

737 名前:デフォルトの名無しさん [2018/11/12(月) 19:49:08.82 ID:x1RQowFZa.net]
>>707
ありがとうございます。

breakの前にcharIndex=0を設定することでエラーは解消されました!

738 名前:デフォルトの名無しさん mailto:sage [2018/11/15(木) 07:04:39.94 ID:F2s/LBqta.net]
同じ文字を含まないっていう正規表現があるなら教えて欲しいです。


マッチする
abc
acb
bac
bca
cab
cba

マッチしない
aab
cbc

739 名前:デフォルトの名無しさん [2018/11/15(木) 07:19:32.06 ID:xSjlziKZ0.net]
>>709
ないです、素朴に数えましょう

740 名前:デフォルトの名無しさん mailto:sage [2018/11/15(木) 07:27:10.15 ID:AxNEuJ7Oa.net]
そうですか残念です。

741 名前:デフォルトの名無しさん mailto:sage [2018/11/15(木) 08:34:12.11 ID:g74yzjtM0.net]
Ruby なら、uniq で、配列内の重複した要素を削除できるから、それで文字数を数えて比較すれば?
split で1文字ずつ、配列の要素にする

str = "abca"

str.length #=> 4
str.split( "" ).uniq.length #=> 3

742 名前:デフォルトの名無しさん [2018/11/15(木) 09:43:30.75 ID:RDhHOc3na.net]
>>709
同じ文字を含むなら (.).*\1 でできると思うので、プログラムの側でこれにマッチしないものを処理すれば良いのではないかな。

743 名前:デフォルトの名無しさん [2018/11/15(木) 13:03:21.57 ID:lNkjj0jra.net]
>>709

重複要素の無いコレクション
https://docs.oracle.com/javase/jp/8/docs/api/java/util/Set.html


>>712
Rubyならじゃねえ。
Javaに同じ機能無いかくらい調べやがれ。
こちとら10年くらいJava触ってねーぞ。



744 名前:デフォルトの名無しさん mailto:sage [2018/11/15(木) 15:12:37.43 ID:pPH/bz/I0.net]
>>713
ありがとうございます。
参考にさせてもらって、その正規表現の効果をぐぐって見て
自分でもいけそうな気がしたのですが。
NGになってしまいます。
何が間違えてますか・・・

String a ="aac";

if(a.matches("(.).*\1")){

System.out.println("OK");

}else{

System.out.println("NG");

}

>>712
>>714
ありがとう、ございます。
それらとは別のやり方ですがヒントになりました。
特定の文字をAllreplaceで""にして原本とのlength()の差で
選別する感じでひとまずいけました。

745 名前:114 [2018/11/15(木) 15:16:26.15 ID:lNkjj0jra.net]
>>715
解決したようで何より。

746 名前:デフォルトの名無しさん [2018/11/15(木) 15:17:43.39 ID:RDhHOc3na.net]
>>715
\ 記号はエスケープ文字なので \\ にする。

747 名前:デフォルトの名無しさん mailto:sage [2018/11/15(木) 15:32:48.07 .net]
ありがとうございます。
\\でもNG出て
if(a.matches(".*(.).*\\1.*")){
にさせてもらったら
期待通りの結果がでるようになりました。
ありがとうございました。

748 名前:デフォルトの名無しさん [2018/11/15(木) 16:12:34.80 ID:RDhHOc3na.net]
あー。そうか。matches() は前後に暗黙の ^$ が入るんだったな。

749 名前:デフォルトの名無しさん mailto:sage [2018/11/15(木) 19:45:12.42 ID:y/xxNwdx0.net]
配列変数の宣言と配列を作成する文において、配列の型を2回記述しないと
いけない理由は何ですか?
例) int[] array = new int[5];
インスタンス変数の宣言文と似ていますが、もしかして配列においても
多態性が使えるんですか?

750 名前:デフォルトの名無しさん [2018/11/15(木) 20:07:38.69 ID:RDhHOc3na.net]
元々Javaは型推論しない言語だからなあ。

751 名前:デフォルトの名無しさん mailto:sage [2018/11/15(木) 20:56:36.68 ID:zE6igjOyd.net]
bronzeの問題見てるけどインクリメントの後置やらfor文のブロック省略やら、引っ掻けたいだけの問題多すぎない?

752 名前:デフォルトの名無しさん mailto:sage [2018/11/15(木) 21:05:38.09 ID:cJq6eeYEa.net]
>>720
理由と言われても、そう言う言語仕様だから。もう20年以上前に設計された言語だから、今の基準で見たら冗長な表現が多々ある。

あと配列においても多態性が〜、の部分は何が言いたいのか分からない。

753 名前:720 mailto:sage [2018/11/16(金) 00:48:09.83 ID:weOG1xUa0.net]
>>723
ありがとうございます。

その部分は勝手な憶測なので気にしないで下さい。
例えば、int型はdouble型に型変換されることもあり得るので、
例) double[] array2 = new int[5];
のような記述が出来るのかな?と思っただけです。



754 名前:デフォルトの名無しさん mailto:sage [2018/11/16(金) 06:24:36.92 ID:cFUtGW68a.net]
>>724
それは多態性というか暗黙的なキャストだな。
Javaではそれは出来ない。暗黙的キャストは便利なこともある反面、意図しないキャストでバグを生み出す可能性があるからJavaの設計思想とは相容れない。

755 名前:デフォルトの名無しさん [2018/11/16(金) 07:10:27.50 ID:tlDZCd2g0.net]
>>724
子の型の代入を認めるのを共変というのだけれども
配列の型は共変だから型が継承関係にあるならば代入できるよ

Number[] a;
a = new Integer[5];
a = new Double[5];

756 名前:デフォルトの名無しさん mailto:sage [2018/11/16(金) 08:33:57.46 ID:mPcqV91P0.net]
>>722
まぁ自分が何気なく書いて意図した結果にならなくて混乱するようなことになるなよってことだと思う

757 名前:デフォルトの名無しさん [2018/11/16(金) 16:52:39.39 ID:OkLwTKGUM.net]
>>722
プログラミング言語の資格はそういうもの。

そもそもC言語の影響を受けた言語では細かい部分を知っていないと、他人が書いたコードが読めない。

758 名前:720 mailto:sage [2018/11/16(金) 18:52:17.01 ID:weOG1xUa0.net]
>>725
ありがとうございます。

>>726
ありがとうございます。プリミティブ型は継承関係に無いから駄目ですね。

759 名前:デフォルトの名無しさん mailto:sage [2018/11/17(土) 17:43:14.07 ID:/eM8wfkM0.net]
https://qiita.com/syu_chan_1005/items/46f94412f7493d6e60eb
このサイトに従ってBuild ArtifactsまでしてコマンドプロンプトでIdeaProjects\test\out\artifacts\test_jarから
「java test」
と実行したのですが
「エラー: メイン・クラスtestが見つからなかったかロードできませんでした」
と言われ実行できません。どのようにすればよろしいでしょうか。

760 名前:デフォルトの名無しさん mailto:sage [2018/11/17(土) 17:58:07.43 ID:/eM8wfkM0.net]
>>730
自己解決しました。
.jarをjavaで走らそうとしたのが問題だったみたいで、
java -jar test.jarと入力したら無事出力されました。

761 名前:デフォルトの名無しさん mailto:sage [2018/11/18(日) 13:21:56.54 ID:KOW7JXzwa.net]
やだ〜へこむ〜

762 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 17:22:08.06 ID:ZS5AqKuz0.net]
スッキリわかるJava入門の第8章の練習問題を解き、以下のような
Clericクラスを作ったのですが、
https://pastebin.com/EZdvVESb
英語にすると訳が分からなくなる言葉もあったので、それらはローマ字に
した結果、英単語とローマ字が混在するコードになってしまったのですが、
問題でしょうか?

763 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 18:13:02.26 ID:vHw2N8A80.net]
>>733
自分1人しか弄らないなら好きにすればいいよ。
どうせならローマ字じゃなくて漢字や平仮名を使って日本語でそのまま命名することもできるから試してみるといい。

ただし一般論、というか仕事でやる開発なら英語で統一するのが普通なのでそれは忘れちゃいけない。



764 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 18:31:24.19 ID:Je8g3va9d.net]
入門に出てくるようなクラス名は普通に出てくる単語ばっかだろうからさっさと覚えたほうがいいでしょ

765 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 18:39:15.60 ID:97DIZmBta.net]
>>733
ソース見たけど、確かにkaifukuryoとか死ぬほど読みにくいから、これならいっそ「回復量」の日本語でもいいと思うw

766 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 18:40:59.11 ID:97DIZmBta.net]
うちの社内システムは何年も前から部分的に日本語変数名も使ってるけど、特に問題が起きたことはないよ

ただこの話題で議論が紛糾して荒れるのをネットで見かけるから、何がなんでも絶対に許さない人達がいるのは間違いないw

767 名前:デフォルトの名無しさん [2018/11/19(月) 20:51:25.27 ID:C68x9bSia.net]
うちの会社でうっかりそんなことしたら中国語で溢れるよ。あとドイツ語と英語。

あ、英語はいいのかw

768 名前:デフォルトの名無しさん mailto:sage [2018/11/19(月) 23:59:34.33 ID:qLcuYLw7a.net]
総称型配列を生成したい…リフレクション使えばいける?

769 名前:733 mailto:sage [2018/11/20(火) 00:24:59.86 ID:n8v7mGgD0.net]
答えてくれた方、ありがとうございました。
なるべく英語で行くようにしたいと思います。

770 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 00:28:00.33 ID:MPotoW9R0.net]
ローマ字は特に気にしないけどおかしな英語だとモヤる
登録でregistってなんやねん

771 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 01:25:13.23 ID:+ftLPXCpa.net]
>>739
Array.newInstanceの結果をダウンキャスト
警告が出るが気にしない
外から引数でClass<T>を受け取るようにすれば多少はタイプセーフ風な雰囲気を醸し出せるかもしれない
Javaのジェネリックがハリボテの糞と呼ばれる所以だ

772 名前:デフォルトの名無しさん [2018/11/20(火) 01:33:24.00 ID:8KtihEK80.net]
>>741
すまん。昔量産してしまった
区分フラグとかも

773 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 01:42:27.99 ID:MPotoW9R0.net]
"); //]]>-->
774 名前:ly_link">>>743
まあモヤるレベルだから別にいいんだけどさ
終わりの見えない関数とか、読み解くと結局意味のない処理とか、Objectに全てを詰め込み中身を変えまくる黒魔術に比べたら可愛いもんさ、ハハハ……
[]
[ここ壊れてます]

775 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 01:55:25.40 ID:X8QFm2fdM.net]
Javaのジェネリクスが単なるObjectのシンタックスシュガーであることを考えると、
総称型の配列などというものは存在自体が常に虚偽であり明らかに矛盾していることがわかるだろう
Javaで総称型の配列が欲しいときは、ArrayList<>(これは実はObject[]をラップしている)を使うか、
単にObject[]を使っておいて辻褄合わせが必要なときに要素を適宜ダウンキャストしてやるかのどちらかだ
Javaのジェネリクスでは型の整合性を維持するのはジェネリックなメンバやクラスを作るプログラマの責任なんだよ
通常のアプリケーションコードで積極的に作るものではない

776 名前:デフォルトの名無しさん mailto:sage [2018/11/20(火) 22:41:13.06 ID:QYuuoNJVd.net]
silverの問題集の解説見ながら勉強してるけどコンスタントプールってのがあるんだなぁ(こなみかん)

777 名前:デフォルトの名無しさん [2018/11/23(金) 21:42:39.82 ID:UR66aWLO0.net]
cyclopsを使ってダサいTRY-CATCHを改善してみたがカッコイイ

public static javafx.scene.image.Image loadImageFromFile(@NotNull Path path, double w, double h) {
return Try.withResources(() -> new FileInputStream(path.toFile()),
stream -> new javafx.scene.image.Image(stream, w, h, true, true),
IOException.class)
.onFail((e) -> GUICommon.debugMessage("loadImageFromFile >> File not found : " + path.toString()))
.get()
.orElse(null);
}

public static javafx.scene.image.Image loadImageFromURL(@NotNull URL url, double w, double h) {
return Try.withCatch(url::openConnection)
.peek(conn -> conn.setRequestProperty("User-Agent", "Wget/1.13.4 (linux-gnu)"))
.peek(conn -> conn.setRequestProperty("Referer", customReferrer(url, null)))
.flatMap(conn -> Try.withResources(conn::getInputStream,
stream -> new javafx.scene.image.Image(stream, w, h, true, true),
IOException.class))
.onFail((e) -> GUICommon.debugMessage("loadImageFromURL >> Cannot get image from : " + url.toString()))
.get()
.orElse(null);
}

778 名前:デフォルトの名無しさん mailto:sage [2018/12/01(土) 03:52:43.89 ID:dszPmHpM0.net]
clone()メソッドについて質問です。
https://pastebin.com/iabGmAun
上記のBookクラスにおいて、フィールドに、Date型のpublishDateがあるのですが、
これをclone()でコピーするにあたっては深いコピーにする必要があるみたいなのですが、
String型は浅いコピーでよくてDate型は深いコピーにしないといけない理由は
何故でしょうか?

779 名前:デフォルトの名無しさん [2018/12/01(土) 11:04:34.18 ID:5cBxQ4wD0.net]
>>748
Date型は状態を変えられるから

たとえば単純にコピーするだけだと
こうなる

Book ┬ Date ─ 2018/12/01
Book ┘

Date.setTimeで状態を変えることができて
コピー先のBookの日付を変えると
コピー元のBookの日付も変わる

Bookごとに日付が異なるなら
BookをコピーするときにDateをコピーしないといけない

Stringは状態を変えられないから
同じものを参照しても問題ない

780 名前:748 mailto:sage [2018/12/01(土) 12:12:49.53 ID:dszPmHpM0.net]
>>749
丁寧にありがとうございました。

781 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 19:47:16.98 ID:6vF3BQAf0.net]
何でもいいから例外をなげたいんですけど
例外で調べても catch のサンプルばかりで投げ方がわかりません

782 名前:デフォルトの名無しさん [2018/12/02(日) 19:48:34.29 ID:4+IlSjWZ0.net]
>>751
throw new Exception("テスト");
これでおk

783 名前:デフォルトの名無しさん mailto:sage [2018/12/02(日) 20:02:05.39 ID:6vF3BQAf0.net]
>>752
new でふつうにclassみたいに作れるんですね
ありがとうございました



784 名前:デフォルトの名無しさん [2018/12/02(日) 21:44:32.63 ID:324yNEli0.net]
基礎からのサーブレット Servlet/jsp 2009
この本で勉強するのは古すぎか?

785 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 07:20:06.09 ID:ygSmLhmHa.net]
>>753
みたいにっていうか、クラスだから。
Exceptionを継承して独自の例外クラスも作れる。

786 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 07:21:19.23 ID:ygSmLhmHa.net]
>>754
古すぎる。古文書レベル。
役に立たないどころか現代ではやってはいけないとされてるやり方が載ってる可能性もあるから、それを覚えてしまってむしろマイナスになるまであり得る。

787 名前:デフォルトの名無しさん mailto:age [2018/12/03(月) 08:28:43.59 ID:sGONNGUuM.net]
エスアイアーではまだ十分役に立つよ

788 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 18:42:47.05 ID:C4qy2S1/0.net]
列挙型のフィールドを持つクラスを作ったのですが……
同じ列挙型を2つ持たせる場合があるものの、1つのみ持つ場合もあることで問題が発生しています
コンストラクタ引数で列挙型指定する際に、必ず1つ指定するが、2つ目は(言うなら)nullでも構わない
列挙型の中にnull相当のものを追加してもよいと思ったのですが、それが1つ目に指定されてしまうと困るので追加したくない……という状態です

具体的には、いくつかの属性を列挙型で指定し、サブ属性は(同じ内容+(サブ属性なし))というかたちにしたいのです
サブ属性用に(同じ内容+なし)の列挙型を追加するしかないでしょうか……

789 名前:デフォルトの名無しさん [2018/12/03(月) 19:43:01.66 ID:SSwMcRlR0.net]
>>758
引数チェックして例外投げればいんじゃない?
https://paiza.io/projects/smPMtDarEAoBp1uNWPYm8w?language=java

790 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 20:03:14.72 ID:YDqptBck0.net]
>>754
つか、古すぎてその本に書いてあるバージョンの開発環境を用意する時点で挫折すると思う。

791 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 20:22:15.78 ID:C4qy2S1/0.net]
>>759
そうか、1つ目にnull入れられないようにチェック入れりゃよかったんですね
エラーを使う発想がなかった

792 名前:デフォルトの名無しさん [2018/12/03(月) 20:50:22.63 ID:6IhUZ/y0a.net]
>>758
どういう状況なのかよくわからない。
同じメソッド名で一つの引数のやつと二つの引数のやつ作れば良いだけってことない?
つまりメソッドのオーバーロード。

793 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 21:24:42.76 ID:C4qy2S1/0.net]
>>762
それだと後々面倒だという理由があったような気がするんだけどむしろ後々表示するときに処理考えたほうが簡単に済みそうな気もしてきました……
こういう設計?ってどういう順番でやってくもんなんでしょうか



794 名前:デフォルトの名無しさん mailto:sage [2018/12/03(月) 21:29:04.09 ID:C4qy2S1/0.net]
データを呼び出して表示する目的だったので、とりあえずtoStringのオーバーライドができてからデータ登録用のコンストラクタを調整していくことにしました

795 名前:デフォルトの名無しさん mailto:sage [2018/12/05(水) 07:39:08.42 ID:aQtlFGVia.net]
拡張for文って配列でもコレクションでも動作しますよね?
ということは、双方に共通するクラスなりインターフェースなりがあるのでしょうか?
配列またはコレクションを引数に取る関数を作りたくて、内部処理は同じなので、オーバーロードではなく一つの関数で済ませたいのですが

796 名前:デフォルトの名無しさん mailto:age [2018/12/05(水) 08:50:55.63 ID:uTDw63xLM.net]
>>765
共通のインターフェースは存在しないです
コンパイラがIterableか配列か判断して処理します

オーバーロードを使いましょう

797 名前:デフォルトの名無しさん mailto:sage [2018/12/05(水) 12:36:33.07 ID:1UnNMx3Qa.net]
>>766
ありがとうございます

それともう一つ質問させてください
リストを引数に取ってリストを返す関数で、よく
public <T> List<T> hoge(List<T> list){
// 何らかの処理
}
のように書きますが、この引数のリストがArrayListならArrayListを、LinkedListならLinkedListを、といったように、引数と同じ型のインスタンスを返したいです
ポリモーフィズムというよりは型クラスのイメージです

境界化して
public <A extends List<T>, T> A<T> piyo(A<T> list){}
のように書いてみましたが、「型Aは総称ではありません」とエラーになりました。

ワイルドカードなどを使えばいいのでしょうか?
というかあまりJava的な書き方ではないですかね?

798 名前:デフォルトの名無しさん mailto:age [2018/12/05(水) 13:09:26.62 ID:uTDw63xLM.net]
>>767
引数の型と戻り値の型をAにすればいんじゃないでしょうか

私はそういうの必要になったことがないです
List返すぜヒャッハーなコードしか書いたことないです

Javaでそういうの書きまくってる世紀末ジェネリック伝説
みたいな人もいると思いますけど

799 名前:デフォルトの名無しさん mailto:sage [2018/12/05(水) 15:53:00.93 ID:1UnNMx3Qa.net]
>>768
何度もありがとうございます
混乱させるのも嫌なので普通の書き方に準拠します
Javaは慣れてないので勉強します

800 名前:デフォルトの名無しさん [2018/12/05(水) 16:52:13.39 ID:ifntcr/4a.net]
>>767
LinkedListってArrayListやListと用途が違う気が。。。
素直に?オーバーロードで良いんじゃ無いか?
多態性はジェネリックだけにあらずよ?
(と言うか、Java初期にはジェネリック無かったし)

801 名前:デフォルトの名無しさん mailto:sage [2018/12/05(水) 18:38:20.62 ID:1UnNMx3Qa.net]
>>770
Listの汎用関数とか、Mapの汎用関数を作ってたら思った次第です
Mapなら、HashMapはHashMap、EnumMapはEnumMapで返したいなとかです
素直にオーバーロードしますね
ありがとうございました

802 名前:デフォルトの名無しさん [2018/12/05(水) 20:40:25.38 ID:tLhebNm/a.net]
それって呼び出す側にnewさせて引数で受け取れば良いだけでは?
自分でnewしてリターン値にしないなら関係なくなるよね。

803 名前:デフォルトの名無しさん [2018/12/06(木) 10:12:58.64 ID:Wmyc4Uu/0.net]
素朴な疑問なのですが
Javaプログラマーってみんなオブジェクト指向やデザインパターンやイベントリスナーのしくみなんかを完璧に理解して使いこなせているんですか?
別に自慢じゃないけどオレは理系で高学歴ですが
こんな難解複雑なものをみんなたやすく理解できるものじゃないと思うのですが。
高校の数学物理化学をレベルの高い大学に受かるくらいの頭がないと無理と感じます。



804 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 11:07:38.61 ID:nonVVsji0.net]
デザインパターンは、オブジェクト同士の疎結合の歴史。
DI, Flux, Pub-Sub(発行・購読)とか

WEB+DB 106号に載ってる。
スマホアプリの設計。DI, MVVM, Flux

805 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 12:20:30.95 ID:UmHyXr4oa.net]
>>772
出来るだけ副作用のない関数にしたかったので、その手は見送りました

806 名前:デフォルトの名無しさん [2018/12/06(木) 12:31:53.41 ID:nzH90qpKa.net]
>>773
容易くかどうかはわからんが、ずっとやってりゃ小学生でもわかるようになると思うけどな。
このスレにもいないか?小学生の頃からプログラミングたできたやつ。

807 名前:デフォルトの名無しさん [2018/12/06(木) 17:43:06.98 ID:Wmyc4Uu/0.net]
>>774
>>776
なるほど。
まあワタシは頭がいいのですぐ理解して使いこなせそうですが。
ハッハッハ!

ところでスキルを身に着けたときやっぱり報酬は期待したいのですが
年収1000万以上、できるだけ高く、を目指すためには、どのようなことをすればいいですか?
これはヒューマンスキルも大きくかかってくると思いますが、具体的にどんなことをすれば高収入になりますか?
野球でも年俸はFAがからむと高収入になるし、それがないと成績がいいの

808 名前:ノ低収入の選手もいるし、
なにかコツを知ってるだけで同じスキルなのに収入は天と地ほどの大差になるというのが現状のような気がして。
[]
[ここ壊れてます]

809 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 17:50:43.36 ID:siOfDNuRd.net]
そういう事を聞かなくても行動できるのが、高収入な人だと思うけど。

810 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 17:55:06.03 ID:jTeUvFfL0.net]
グーの音もでねえw

811 名前:デフォルトの名無しさん [2018/12/06(木) 18:08:44.44 ID:nzH90qpKa.net]
グー

812 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 19:12:26.31 ID:Cn1g7mwL0.net]
>>773
ちゃんと理解出来ている人は極少数だと思う
でも理解出来てなくてもある程度実装は出来てしまうしプログラマにも成れてしまうからどヤバいコードが生成されてしまったりするわけで

813 名前:デフォルトの名無しさん [2018/12/06(木) 19:33:36.24 ID:Wmyc4Uu/0.net]
>>781
なるほどそうなのですね。納得。
オレはわりと進学校出身だけど、まわりはみんな数学物理化学で苦労しててオレだけできたから
プログラマの仕事でもそう簡単にオブジェクト指向/デザインパターン/イベントリスナーを理解できる人はいない気はしていました。

でもこれに甘えずオレはどんどん勉強してスキルアップしていきたいと思います。
オレは経験がないだけど伸びしろは無限にあると思っているので。

オレみたいな人がやっぱりプログラミングに向いてるよね?w
高校レベルの数学物理化学で苦労するようじゃプログラミングも高度なことは絶対できなそうだし。



814 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 19:37:14.79 ID:vPx9vAPGa.net]
>>782
傲慢であることはいわゆるプログラマーの三大美徳の1つなので安心して励んでください

815 名前:デフォルトの名無しさん [2018/12/06(木) 19:44:56.31 ID:nzH90qpKa.net]
いや、使われる能力がちょっと違うと思うぞ。
数学や物理が絡まなくはないし絡められるわけだが、かといってそんなもんほとんど知らないままプログラミングできるようになるやつは居るだろうしな。

816 名前:デフォルトの名無しさん mailto:sage [2018/12/06(木) 20:46:52.33 ID:Cn1g7mwL0.net]
>>782
数物化が出来る→プログラミングが出来る
は一般に成り立たないかな
情報系でそれなりに良い成績を獲ってるけど実技系の科目の成績は低いみたいな人は結構いたりするし情報系であってもちゃんと理解出来てる人はそんなに多くない
まぁ相関が全く無いとは思わないけどね

817 名前:デフォルトの名無しさん mailto:sage [2018/12/07(金) 07:06:25.60 ID:OaIqSJqTa.net]
>>785
そこらへんは知識そのものというより、求められる思考方法が近しいってのはある。
だから数学が出来ればプログラミングが出来るっていうより、数学の得意なタイプのやつはプログラミングも得意であることが多い、とかそういう感じだと思う

818 名前:デフォルトの名無しさん mailto:sage [2018/12/11(火) 03:28:29.21 ID:BPBNTIF+0.net]
Windows10のJava1.8以上のバージョンのSwingでの日本語入力する時、
編集中の行が画面の一番下の方の時に変換すると、日本語変換候補Windowが編集中の行と重なって、編集中の文字列を隠してしまうバグのようなものが
自分の環境ではおきるのですが、他の人はどうですか?

Swingのテキストコンポーネントでおきます。

819 名前:デフォルトの名無しさん [2018/12/11(火) 06:12:00.67 ID:ms9OZaRY0.net]
V2Cでもそうなる

820 名前:デフォルトの名無しさん mailto:sage [2018/12/11(火) 13:05:28.74 ID:BPBNTIF+0.net]
>>788
ありがとう。
これだけ普通の条件で簡単に起きるのに、ずっとバグが直らないのはSwingで日本語入力なんてほとんど使われてないからなんだろうな。
Intellijとか使われてるけど、プログラム用のエディタだから日本語はほとんど入力されないのかな。


バグレポートかなんかしたいと思ったけど、ます英語を勉強しなきゃいけないし。

821 名前:デフォルトの名無しさん mailto:sage [2018/12/11(火) 13:10:54.23 ID:BPBNTIF+0.net]
編集中の行の下に候補ウィンドウを表示する時はうまくいくんだけど、
編集中の上に候補ウィンドウを表示する時(つまり編集中の行が画面の下の方の時)、重なってしまう。
IMEのAPIのバグらしく、Swing使ってる限り独自のテキストコンポーネントを作っても直らない。

822 名前:デフォルトの名無しさん mailto:sage [2018/12/14(金) 00:47:28.4 ]
[ここ壊れてます]

823 名前:9 ID:+doa0nVt0.net mailto: 3つ組の値を返したいときってそれ用のクラス作った方がいいの?
それとも汎用的なタプル的なの作ってそっちに詰め込んだ方がいい?
クラスにしたとして、他の箇所で使うかは微妙なところ
もしかしたらもう一回くらい使うかもってくらい
[]
[ここ壊れてます]



824 名前:デフォルトの名無しさん [2018/12/14(金) 09:55:52.99 ID:cCP3RgWTa.net]
>>791
配列やリスト等に突っ込んで返す方法もあるが、本当にそれで問題ないかはよく考えた方が良いと思う。

825 名前:デフォルトの名無しさん mailto:sage [2018/12/14(金) 17:58:19.96 ID:mN1ioE7i0.net]
>>791
Hashmapに突っ込むとかもある。
俺なら絶対にクラスを作るけど。

826 名前:デフォルトの名無しさん mailto:sage [2018/12/14(金) 18:57:38.32 ID:yKLaTwQg0.net]
Ruby なら、メソッドの委譲機能を定義する、forwardable, delegate

継承(is-a)じゃなくて、汎用的なコンテナ(配列・リスト・辞書)に処理を委譲するような形(has-a)

クラス内に、汎用的なコンテナを作って、
push, pop など、同じメソッド名で、処理を内部コンテナに丸投げする

827 名前:デフォルトの名無しさん [2018/12/20(木) 10:29:23.88 ID:uzBoRH9c0.net]
VBAは経験豊富だけどJavaは初めてです。
もちろんいっぱい勉強しました。
転職アピールで取ったほうがいい資格はなにがありますでしょうか?
Java経験ないので面接の質疑応答と資格アピールでがんばろうと思うのですが。

資格受験はすぐに取り掛かる予定です。今月にでも!

828 名前:デフォルトの名無しさん mailto:sage [2018/12/20(木) 11:33:53.15 ID:hE8cxs9Xa.net]
earとかwarがいまいちわからないです
開発時にファイルAでファイルB(別パッケージ)をimportして使っていて、eclipse上ではコンパイルも通っていました
でもデプロイ段階になってから、先輩にこの2つのパッケージは別々のwar?になるからimportできないよと言われました

自分の感覚だとそもそもそれでコンパイルが通るようになってるのがおかしい気がするのですが、Javaの世界だとそれが普通なんですか?

829 名前:デフォルトの名無しさん [2018/12/20(木) 12:23:41.18 ID:uzBoRH9c0.net]
earは耳、warは戦争です。
発音の注意としては、warは「ウォー」であって「ウァー」ではありません。
ここを押さえておけば大丈夫。

830 名前:デフォルトの名無しさん [2018/12/20(木) 22:34:23.24 ID:6pIAvd2J0.net]
うぁー

831 名前:デフォルトの名無しさん [2018/12/20(木) 22:40:41.67 ID:9plr5EIz0.net]
>>796
それはear、war云々の話ではなく
開発段階とデプロイ段階で違うことをやってるのがおかしいという話では?

832 名前:デフォルトの名無しさん mailto:sage [2018/12/20(木) 22:44:39.27 ID:JiVjjaVo0.net]
>>799
あ、それです
ただJava界隈だとそれが普通なのかなと思いまして

833 名前:デフォルトの名無しさん mailto:sage [2018/12/20(木) 23:04:28.20 ID:IcrQnoua0.net]
ear, war, tar など、ar とついているものは、zip などの圧縮 archive だろ。
サーバーにデプロイするために、1つにまとめる

だから、a.ear の中から、b.war の中の、オブジェクト・関数などは使えないのだろう

2つもデプロイしないから。
デプロイするのは、1つだけ

「java ear war」で検索!



834 名前:デフォルトの名無しさん mailto:sage [2018/12/20(木) 23:44:55.08 ID:uRkd43kpd.net]
>>801
tarは非圧縮では?

835 名前:デフォルトの名無しさん mailto:sage [2018/12/22(土) 02:51:17.48 ID:Mf8aObFB0.net]
本来アーカイブと圧縮は別だからな

836 名前:デフォルトの名無しさん [2018/12/23(日) 17:21:45.07 ID:yY9Kiav4a.net]
tarは頭からファイル名、内容の順で入ってるだけだからいまいち使い辛いな。
ファイル名

837 名前:出したいだけでも途中に大きいファイルがあると待たされる。
テープ装置用のコマンドを無理矢理使い回してるのがいかんよな。
せめてファイル名だけ並べたヘッダだけでも別に用意すればいいのに。
[]
[ここ壊れてます]

838 名前:デフォルトの名無しさん mailto:sage [2018/12/23(日) 19:04:58.22 ID:TNYL2NhX0.net]
>>804
テープ用のコマンドを無理矢理使いまわしてるんじゃなくて、今でもテープに書いたりもするぞ。-Mでマルチボリュームにして、-Lでサイズ指定したらテープ交換メッセージ出る。
そうしとかないとボリュームまたぎのファイル探しづらいし、そういうもんじゃねえかなぁ。
ディスクに落とすとしても、ボリューム切り替わるたびに最初のディスク入れさせるとか狂気の沙汰な気がする。

839 名前:デフォルトの名無しさん [2018/12/25(火) 17:56:14.99 ID:Waofyifpa.net]
まあ今でもテープ装置があれば使うのはわかる。
しかしテープではなく普通のファイルに書くならもう一ひねり欲しいところ。

840 名前:デフォルトの名無しさん mailto:sage [2019/01/01(火) 16:14:58.54 ID:rBFfBn4R0.net]
silver黒本で勉強してて、例外終わらせたと思ったら最終章でラムダ式とかいう完全に新しいやつでてきてわろた
仕様が覚えられん

841 名前:デフォルトの名無しさん mailto:sage [2019/01/01(火) 16:40:11.15 ID:uncIR6SLM.net]
ラムダなんか平均的なJava土方現場ならもれなく使用禁止だから安心していい
その証拠にこのスレでも滅多に出てこないだろ?

842 名前:デフォルトの名無しさん mailto:sage [2019/01/01(火) 16:44:18.00 ID:qkJ7OcChd.net]
そうなのか、まあ試験用で一通り覚えないといけないけど
考え方とか他の言語やるときに役立つかな

843 名前: mailto:sage [2019/01/01(火) 17:32:31.57 ID:+TypiBw50.net]
Javaのラムダはコンビネータを記述できますか?出来ないのなら不要(ラムダの意味がない)と思います



844 名前:デフォルトの名無しさん mailto:sage [2019/01/01(火) 18:42:27.39 ID:d0qESFYs0.net]
ラムダっていうか関数型の概念をJavaを通じて学ぶのは無謀だから試験用に割り切るしかない

845 名前:デフォルトの名無しさん [2019/01/01(火) 22:01:03.29 ID:dc6+vvYb0.net]
>>810
は?

import java.util.function.Supplier;

public class Test {
 public static void main(String[] args) {
  バニーガール a = new バニーガール(() -> "巨乳");
  a.ぱふぱふ();
 }
}

class バニーガール {
 Supplier<String> create;

 バニーガール(Supplier<String> create) {
  this.create = create;
 }

 void ぱふぱふ() {
  String おっぱい = create.get();
  System.out.printf("%sでぱふぱふ", おっぱい);
 }
}

846 名前:デフォルトの名無しさん [2019/01/01(火) 22:01:24.13 ID:dc6+vvYb0.net]
これがFactoryパターン

847 名前: mailto:sage [2019/01/01(火) 22:22:19.85 ID:+TypiBw50.net]
>>812-813
は?
それのどこがコンビネータですか?

848 名前:デフォルトの名無しさん [2019/01/01(火) 22:32:19.26 ID:dc6+vvYb0.net]
>>814
コンビネータとは関係なくラムダ式は便利だよ
コンビネータ仕事で使うことないやろ
それを言うとんねん

849 名前:デフォルトの名無しさん [2019/01/01(火) 22:32:48.32 ID:dc6+vvYb0.net]
アホがなあにがコンビネータだバカが

850 名前: mailto:sage [2019/01/02(水) 03:25:42.83 ID:U9fPlruq0.net]
>>815
コンビネータを記述できるからλ式に存在意義があるのであって、コンビネータを記述できないλ式なんて「λ式」と名乗る資格がない文法的屑仕様にしか見えないのですけれども

851 名前:デフォルトの名無しさん [2019/01/02(水) 13:27:44.18 ID:iJhnqyOR0.net]
>>817
コンビネータ記述できなかったの?

それはそれとしてJavaのラムダ式はコンビネータとは関係なく
匿名クラスを書かなくてすむから便利だと思うよ
Streamとかで使ったら便利だよ

852 名前:デフォルトの名無しさん [2019/01/02(水) 13:29:49.59 ID:iJhnqyOR0.net]
導入した意図も知ろうとしないで
屑仕様と言う人にJavaを語る資格があるとは思えない
普段Java使ってるの?

853 名前:デフォルトの名無しさん [2019/01/02(水) 14:33:45.83 ID:MMKJrJD00.net]
Kotlinもよろしく



854 名前: mailto:sage [2019/01/02(水) 16:35:18. ]
[ここ壊れてます]

855 名前:40 ID:U9fPlruq0.net mailto: >>818-819
無名クラスとラムダ式の差異なんて知れており、やれといわれたらチャッチャッと「無名クラス->ラムダ式」「ラムダ式->無名クラス」の両方やれますね…
普段は C++ 使いですが、C++方面での認識は「ラムダ式は糖衣構文」

私の認識は「Java や C++ の「自称」ラムダ式は、所詮自称でしかなくコンビネータを記述できない」
「コンビネータを記述できないものをラムダ式と呼ぶことはできない」
[]
[ここ壊れてます]

856 名前:デフォルトの名無しさん mailto:sage [2019/01/02(水) 16:47:38.66 ID:ckX+EqcM0.net]
いまどきHaskellerでも言わないような理論振りかざす原理主義者なんかNGしとけよ

857 名前:デフォルトの名無しさん [2019/01/02(水) 17:02:15.83 ID:iJhnqyOR0.net]
>>821
やれるやれないじゃなくて
ラムダ式を使ったら簡単に書けるでしょう
だから便利でしょうという論理ですよ

Javaの公式ドキュメントでラムダ式と呼ばれてるので
ラムダ式と呼ぶべきかと

ところでJavaのラムダ式でコンビネータ記述できなかったの?
ググったらyコンビネータとかzコンビネータとかパーサコンビネータとかあったけど
それは自分の定義ではコンビネータと呼ぶことはできないとか?

858 名前:デフォルトの名無しさん [2019/01/02(水) 17:05:38.37 ID:iJhnqyOR0.net]
>>822
コンビネータが必要になったことがないから
大事なんだと言われてもよくわからんのよね
コンビネータの概念を知らなくてもJavaのラムダ式は便利だと思うんよ

859 名前: mailto:sage [2019/01/02(水) 18:05:41.80 ID:U9fPlruq0.net]
>>823
>ググったらyコンビネータとかzコンビネータとかパーサコンビネータとかあったけど
それは javascprit じゃない?js なら書けると思いますよ、ちょっと url を教えてください。

>Javaの公式ドキュメントでラムダ式と呼ばれてるのでラムダ式と呼ぶべきかと

そういう権威・権力のスカートにしがみつく理由で採用するのですか?頭が悪いと思われますよ
プログラマってそういうものからはもっとも遠くに立っている人種ではなかったかと

>>824
>コンビネータが必要になったことがないから大事なんだと言われてもよくわからんのよね

それは当然です、コンビネータは「記述できる範囲を定める」ものであり実用プログラムで使用することはありません
「コンビネータを記述できること」をもって lambda 式と呼ぶべき、という意見です、コンビネータが記述できないのなら別の名前にするべきでしょう。
私は@便利に書けるからといって糖衣構文をなんでもかんでも言語仕様に含めることには反対であり、ましてや、Aなんでもかんでもぶちこんだ糖衣構文にテキトーな名前をつけることにも反対しているのです

Java は発表当初から言葉遣いがおかしいところがあり、たとえば「参照(reference)」などは他言語とは完全に意味が違いますね

860 名前:デフォルトの名無しさん [2019/01/02(水) 18:27:16.02 ID:iJhnqyOR0.net]
>>825
https://www.google.com/search?q=java+%E3%82%B3%E3%83%B3%E3%83%93%E3%83%8D%E3%83%BC%E3%82%BF

Javaのラムダ式と君のラムダ式があって
Javaのラムダ式は僕のラムダ式じゃないんだと
君は言うけれども君は自分が頭が良いと思われてると
思ってるのかな

俺はJavaのラムダ式は簡単な処理を簡単にかけるから大賛成
Streamを使いやすいしリッチなコレクションに処理を丸投げする
関数型のようなプログラミングがやりやすくなって大感謝

君の価値観とは正反対だけどJavaのラムダ式は便利だよ

コンビネータが実用プログラムで使用されることがないなら
ラムダ式をコンビネータを記述できるかどうかで語ることに意味あるのかな
Javaのラムダ式は実用上有用だから導入されたものだよ

referenceの話は具体的にどの言語の概念と完全に違うと言ってるのかしら
文脈が変われば概念が変わるのは当然と思うよ

スペリングが同じだからといって概念が同じとは限らない
言語が変わるならなおさら

861 名前: mailto:sage [2019/01/02(水) 19:48:36.75 ID:U9fPlruq0.net]
>>826
まず「パーサコンビネータ」の「コンビネータ」は不動点コンビネータとはなんの関係もありません
大雑把にググッた結果だけみせて、その中身を精査していないのは、新しい概念に対するキャパシティー、あるいは概念把握力に問題があるのではないですか?

Java では yコンビネータは無理でも、zコンビネータという不動点コンビネータは記述できるようですね…

862 名前:これは追体験しているところです、情報を提供いただきありがとうございます。

>君の価値観とは正反対だけどJavaのラムダ式は便利だよ
私の価値観は「Javaラムダ式は不便である」ではなく「Javaラムダ式はラムダ式と呼べるのか?」でしたが、Java ラムダ式にて不動点コンビネータの一部が記述できるようですから、この認識はあらためることになりました

>ラムダ式をコンビネータを記述できるかどうかで語ることに意味あるのかな
>Javaのラムダ式は実用上有用だから導入されたものだよ
有用、というよりも単なる糖衣構文にしかみえないですね、まあ、このあたりは人それぞれ

>referenceの話は具体的にどの言語の概念と完全に違うと言ってるのかしら
>文脈が変われば概念が変わるのは当然と思うよ
>スペリングが同じだからといって概念が同じとは限らない
>言語が変わるならなおさら

いろいろな言語をやってみよう、というときには、あなたのこの助言は有用だと思います
しかし、それと同程度に次の意見も有効ではないですか?

「異なる言語であっても、同じ概念に対しては同じ言葉を使い、違う概念に対しては違う言葉を使うべき」

C++ の reference と Java の reference は、それぞれの概念が近接することもあり、非常に紛らわしいです
これは Java が出たときにすぐに問題になっていた記憶があります。
[]
[ここ壊れてます]

863 名前:デフォルトの名無しさん mailto:sage [2019/01/02(水) 20:00:23.62 ID:wUoDMH3da.net]
なんでみんな荒らしコテハンにいちいち構ってんの
三が日の暇つぶしか



864 名前: mailto:sage [2019/01/02(水) 20:02:31.83 ID:U9fPlruq0.net]
>>828
私のどこが荒らしと感じたのですか?具体的に記述できるのですか?

865 名前:デフォルトの名無しさん [2019/01/02(水) 20:14:19.54 ID:iJhnqyOR0.net]
>>827
パーサコンビネータと君のコンビネータについては
どっちでも良いと思って

誤解されたくなければ君は詳細に説明してるだろうし
俺が違ったものだしても君は文句言える立場じゃないよ

yコンビネータのことなんだと君が最初から言ってたなら別だけどね
yコンビネータと最初に言ったのは俺だよ

俺のエスパー能力に君は感謝こそすれ文句言うのは大間違いだよ
いま俺が君から聞きたいのは謝罪の言葉だよ
きちんと説明せずに文句まで言ってしまってどうもすみませんでしたという
言葉を聞きたいよ

C++ の reference と Java の referenceは近接してるんだと言ってるわけですね
完全に違うと言ってたと思うんだけどそれもC++ の referenceのこと?

Javaが出たときにはJavaは普及してないだろうから新しい概念も周知されてないでしょう
それはしょうがないと思うけどC++のreferenceとJavaのreferenceはどう違うの?

言語間にまたがって用語を統一しようとしたら言語の外に辞書を作らないといけないね
プログラミング言語の用語一覧を作って概念が少しでも異なる場合は新しい用語を
追加することというルールを作らないといけないね

俺は嫌だなあそういうの官僚的でめんどくさいだけ賛同できないわ

866 名前:デフォルトの名無しさん mailto:sage [2019/01/02(水) 20:26:05.19 ID:wUoDMH3da.net]
>>829
「Javaのラムダ式でコンビネータ書けますか?書けなかったら不要ですよね?」

「コンビネータ関係なくラムダ式便利だよ」
ここまでは(入門・初心者向けかはともかく)質問スレの範疇

「コンビネータが書けなきゃラムダ式と呼んではいけない!それに従うのは権威主義で〜」
ここら辺から質問関係なくなってる
単語の選出基準の話ならJavaの開発チームにでも聞かないとここで解決できるはずもない
同一スペリングで意味が異なる単語の話まで抽象化するともっともっとJava関係ない
そしておそらく本人もそんなことわかってるのに言い続けてるあたりが荒らし

867 名前: mailto:sage [2019/01/02(水) 20:36:27.11 ID:U9fPlruq0.net]
>>830
一連のやりとりは Java のスレで、Java とは異なる世界からやってきた「ラムダ式」「不動点コンビネータ」をぶつけてみて(化学)反応を楽しむ、という私の悪癖が出てしまいました、あまり気にしないでください
ごめんなさい

そして z コンビネータの存在を知らしていただいたことに感謝します

868 名前: mailto:sage [2019/01/02(水) 20:38:21.42 ID:U9fPlruq0.net]
>>831
>おそらく本人もそんなことわかってるのに言い続けてるあたりが荒らし

…お見通しですね
そのとおり、そういう意味なら私は荒らし、です…

869 名前:デフォルトの名無しさん [2019/01/02(水) 20:44:00.26 ID:iJhnqyOR0.net]
>>832
良いってことよ
それよりも

870 名前:C++のreferenceとJavaのreferenceはどう違うの? []
[ここ壊れてます]

871 名前:デフォルトの名無しさん [2019/01/02(水) 21:12:34.14 ID:iJhnqyOR0.net]
Javaのドキュメントには
・reference type
・reference value
が書かれてる

reference typeは
・class type
・interface type
・type variable
・array type
のこと

オブジェクトはクラスインスタンス、または、配列のこと
reference value(たんにreference)はオブジェクトへのポインタのこと

ゆえにJavaのreferenceは、クラスインスタンスへのポインタ、または、配列へのポインタのこと

872 名前: mailto:sage [2019/01/02(水) 21:58:39.12 ID:U9fPlruq0.net]
>>835
お許しが出たようなので続けます。

ざっと ezoeryou.github.io/cpp-book/C++11-Syntax-and-Feature.xhtml 8.3.2
や C++11 draft N3242 8.3.2
あたりを眺めていますが、reference が満たさなければならない用件は記述されていて(N3242 8.3.2.5)も、reference が何者なのかをずばり記述している部分はみあたらないですね。

Java の reference は「クラスインスタンスのポインタ」「配列へのポインタ」ですか、つまりポインタの一種なんですね、これは理解できます
一方 C++ reference はポインタに限定されることなくすべての型に対応して存在できます、int に対して「int の reference」、クラスC に対して「クラスC のreference」というふうに

ここで私の定義を示します。

ある型T のポインタを型「T *」とするとき、型「T *」 の変数 T *p が現に存在して
式の上の表現の文字列「 *p 」を文字列として v に機械的に置き換えたときに v が新たな変数として機能する余地があるのなら、文字列 v は型「T &」のreference として宣言できる。

という感じですか…

873 名前:デフォルトの名無しさん [2019/01/02(水) 22:37:44.34 ID:iJhnqyOR0.net]
>>836
よくわかんなかったからググったけど

C++のreferenceはreference variableの省略形で
変数のエイリアスみたいだよ

https://paiza.io/projects/2PkDkRGyIOxNPRxdvBctkg

こういう使い方するんでしょ



874 名前:デフォルトの名無しさん [2019/01/13(日) 14:57:02.91 ID:jed35pcVa.net]
ttps://pastebin.com/6EefhNbW
クリックしたさいに3行目のメッセージが出ません。
count()のmsgIndex++とmouseClickedのmsgIndex++が原因と思われるのですが、
解決方法が思いつきません。
構造自体を変更したほうがいいのでしょうか?

875 名前:デフォルトの名無しさん [2019/01/13(日) 15:26:22.32 ID:GXHGuQEW0.net]
>>838
public void mouseClicked(MouseEvent e) {
 // msgIndex + 1 => msgIndex
 if (msg.size() == msgDispSize && msgIndex < messages.size()) {
  msg.poll();

  // 下に移動
  // msgIndex++;

  messages.get(msgIndex).setVisible(true);
  msg.add(messages.get(msgIndex));

  // メッセージに追加したあとにインクリメント
  msgIndex++;
 }
}

876 名前:デフォルトの名無しさん [2019/01/13(日) 19:40:10.92 ID:AcEsFCPQa.net]
>>839

ありがとうございます。
インクリメント変更での解決納得いたしました。

877 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 10:07:33.04 ID:fM0+TDNA0.net]
ubuntu18.04をインストールしてJava 1.8にしてintellijインストールしたんだけど
intellijを含めたSwingの日本語入力のIMEの変換候補Windowが、編集中の行の近くじゃなくて
画面左下の方に表示されるんだけど、他の人もそうなりますか?
Ubuntuの設定がたりないとかあるのでしょうか?

878 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 15:15:17.32 ID:B9Pk/I2L0.net]
たぶんSwing(が使ってるAWT)が位置情報渡せてないから設定とか弄ってもムダかと。

FreeBSDのJava移植の時に位置情報渡すと変換候補ウィンドウがあっちっこっち飛ぶ(?)ので
諦めて位置情報渡さないようにした(結果デフォルト位置であるウィンドウ左下に
変換候補ウィンドウが表示されるようになった)とかって話を読んだ記憶がある。
Linux版もその辺の処理をきちんと書ける人いなかったんじゃねーかと。

879 名前:デフォルトの名無しさん [2019/01/19(土) 17:39:35.80 ID:pTjWjaAA0.net]
下記で、本日の日付を表示できますが、
本日の一週間後を表示させるには、どこを+7したら宜しいでしょうか
よろしくお願い致します。


<SCRIPT type="text/javascript">
<!--
function _HpbDays()
{
this[0] = "日"; this[1] = "月"; this[2] = "火"; this[3] = "水";
this[4] = "木"; this[5] = "金"; this[6] = "土";
}

var now = new Date();
var yr = now.getYear();
var mn = now.getMonth() + 1;
var dt = now.getDate();
var dy = now.getDay();

var fyr = (yr < 1900) ? 1900 + yr : yr;

var dys = new _HpbDays();
var dyj = dys[dy];

document.write(fyr + "年" + mn + "月" + dt + "日");
//-->
</SCRIPT>

880 名前:デフォルトの名無しさん [2019/01/19(土) 18:15:50.72 ID:cYz5ck7p0.net]
>>843
var d = new Date();
d.setDate(d.getDate() + 7);
alert(`${d.getFullYear()}年${d.getMonth() + 1}月${d.getDate()}日`);

881 名前:デフォルトの名無しさん [2019/01/19(土) 19:50:59.40 ID:pTjWjaAA0.net]
843です、ありがとうございます!

882 名前:デフォルトの名無しさん [2019/01/19(土) 19:57:45.69 ID:pTjWjaAA0.net]
843です、度々すみません、上記をどこに挿入したらよろしいのでしょうか汗

883 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 21:13:15.35 ID:1SvRh6zM0.net]
>>846
ここはJavaスレであってJavaScriptスレじゃないぞ

もう関係ないけど反応を見た限り致命的なレベルで何も分かってないみたいだからちゃんと0からステップを踏んでくれ



884 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 21:17:23.40 ID:wiNfQeeu0.net]
ここは、Java のスレです!

君のは、JavaScript です!
web 制作管理板の、JavaScript のスレへ書き込んで!

885 名前:デフォルトの名無しさん mailto:sage [2019/01/19(土) 23:30:03.52 ID:fM0+TDNA0.net]
>>842
詳しく、ありがとうございます。

Windowsで編集業が画面下の時不都合が起きるから
Linuxに移行を考えてたけど、より駄目なのか。
まあ、Java Swingでデスクトップアプリなんて作るもんじゃないのかな。

886 名前:デフォルトの名無しさん [2019/01/20(日) 18:36:43.33 ID:VD9ut2bQ0.net]
>>843-846
スレチだ。ここはJavaScriptのスレではなくJavaのスレだ。

887 名前:デフォルトの名無しさん [2019/01/20(日) 18:37:41.27 ID:VD9ut2bQ0.net]
あ、リロード忘れてた。すでに同じこと書かれてるではないかorz

888 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 05:40:03.31 ID:jDpmEG8Wa.net]
orz ←これ100年ぶりに見たw

889 名前:デフォルトの名無しさん mailto:age [2019/01/21(月) 08:23:09.39 ID:CkGvEyfYM.net]
長老かよ

890 名前:デフォルトの名無しさん [2019/01/21(月) 09:52:33.61 ID:YCjnB4PDM.net]
>>853
ワラ

891 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 11:55:04.19 ID:ubpSrO6va.net]
タイムリーにギネス最高齢の男性用がなくなっとるな…

892 名前:デフォルトの名無しさん mailto:sage [2019/01/21(月) 11:55:26.30 ID:ubpSrO6va.net]
男性用→男性

893 名前:デフォルトの名無しさん [2019/01/22(火) 21:48:34.77 ID:8mJXdjenM.net]
>>856
(核爆)



894 名前:デフォルトの名無しさん mailto:sage [2019/01/23(水) 17:44:01.21 ID:yPNynzM60.net]
java初心者なんですが、javaのスピードってゲームに耐えられる程あるんですか

マインクラフトとか本当にjavaだけなら凄いなと

895 名前:デフォルトの名無しさん [2019/01/23(水) 18:56:46.12 ID:gQZD+vR+a.net]
>>858
どうだろう。VMやハードウェアしだいではあるが、Androidのスマホアプリは結構速いよね。

896 名前:デフォルトの名無しさん mailto:sage [2019/01/23(水) 19:15:17.85 ID:VcXIroIfM.net]
openGLありなら

897 名前:デフォルトの名無しさん [2019/01/23(水) 19:39:02.88 ID:GhD8NJBs0.net]
JavaやJavascriptは結構早いですよ。
問題はリソースをアホほど使うことですね。

898 名前:デフォルトの名無しさん [2019/01/23(水) 19:40:27.88 ID:GhD8NJBs0.net]
Javaは元々ハードウェアを売るための言語ですから、リソースを大量に使うのは善

899 名前:なんですよ。
それだけ高いマシンを売れるんですから。
[]
[ここ壊れてます]

900 名前:デフォルトの名無しさん mailto:sage [2019/01/23(水) 19:46:29.62 ID:DtngHTsf0.net]
>>858
MinecraftはLWJGLっていうライブラリを使っててLWJGLは中でOpenGL/AL/CLとかを叩いてるからJavaだけっていうと微妙な気がしなくもない

ちなみにJavaは起動が遅いのであって実行速度は別に遅くない

901 名前:デフォルトの名無しさん mailto:sage [2019/01/23(水) 20:02:57.29 ID:Hfh86APr0.net]
ぶっちゃけ泥のゲームてほとんどUnity製なのでは…

902 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 01:02:43.09 ID:QNhC8yZPa.net]
ブ、ブートストラップは早いんだからね!遅いのは依存ライブラリが大きすぎるせいなんだから!

903 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 06:27:42.32 ID:SamtYSKx0.net]
>>858
速いよ。スマホゲーならサーバーサイドはJavaだったりする



904 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 08:41:37.60 ID:AuVzjGCMa.net]
Eclipseの設定でエラー情報を試しに全部オンにしたところ、文字列に対してNON-NLSというコメントをつけるよう言われました
あまり意味がわかってないのですが、これは文字列を記述する度につけた方がいいものですか?

905 名前:デフォルトの名無しさん [2019/01/24(木) 09:37:30.92 ID:7Yhstfrna.net]
>>866
そのスマホもAndroidなら普通はJavaだ。

906 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 11:23:07.06 ID:XarvyAfJ0.net]
Java初心者というかプログラミング初心者の大学生です。
java awtを使ってランダムなルーレットを作りたいのですが可能ですか?
イメージはルーレットがぐるぐる回っているアニメーションを実装したいです。

907 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 12:11:49.55 ID:Zu9VTso2D.net]
>>869
逆に作れない理由を知りたい

908 名前:デフォルトの名無しさん mailto:age [2019/01/24(木) 12:19:31.58 ID:PLeglmGSM.net]
>>867
文字列を外部から読み込む設定にしたのでしょ
NON-NLSはその警告を出さないようにするためのコメント

文字列を外部から読み込むのなら修正するべきだし
その文字列を例外的に認めるのならコメントを入れて警告出さないようにするのもあり

文字列を外部から読み込まないのなら設定を外すべき

909 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 12:34:58.27 ID:mQopJVvfa.net]
>>871
ありがとうございます
普通にString hoge = "hoge";のように書いてるのですが、何か設定ミスったんですかね
外部読み込みというのがどういう設定かはまだわかりませんが、一度調べてみます

910 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 20:28:29.07 ID:6FJ6Yx0F0.net]
質問の前にググれば一発なのになぁって思う。

911 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 20:32:06.65 ID:iWJQcTkX0.net]
>>873
ググってもよくわからなかったので質問させていただいたのですが、不快にさせてしまったならすみませんでした

912 名前:デフォルトの名無しさん [2019/01/24(木) 23:34:06.77 ID:MzTIY1gg0.net]
>>867
>あまり意味がわかってないのですが、
>>872
>まだわかりませんが
>>874
>ググってもよくわからなかったので

結局のところ全然わからないんだろ?

913 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 23:36:41.12 ID:shrNjFzUr.net]
>>869
可能か不可能かで言えば考えるまでも無く可能

なんだけどその質問をしたということは何処かで躓いたと見えるから何処で躓いてるのかを書いて欲しい



914 名前:デフォルトの名無しさん mailto:sage [2019/01/24(木) 23:54:19.89 ID:uopHkcdua.net]
>>875
そうなります
「String外部化」とか「多言語対応」とか、単語だけ入ってきて結局どういうものか、警告を無視していいのかなどが全然判断つかなかったので質問させていただいたのですが、甘えでした
上記の質問は取り下げます
すみませんでした

915 名前:デフォルトの名無しさん mailto:sage [2019/01/25(金) 00:13:26.15 ID:561g9VC2r.net]
>>874
自分でググって分かる範囲は知識量とかで決まるからそういう事もある

結論から言うと分からないレベルなら「無視」に設定すれば問題ない

外部化ってのは…871の回答が全てかなぁ…
今後色々とコードを書いているうちに外部化の嬉しさは分かるはず

916 名前:デフォルトの名無しさん mailto:sage [2019/01/25(金) 00:54:39.85 ID:mb4m/ktH0.net]
>>876
まさしくそうです。
イメージでは図形(円)を何等分かにしたもの(それぞれに項目を入力するようにしたい)を回転させてボタンをクリックすると徐々に停止するという感じにしたいのですが、
図形を回転させる方法が分からなくて準備した画像を回転させるという方式を妥協案としてだすところまではいきました。

917 名前:デフォルトの名無しさん mailto:sage [2019/01/25(金) 07:24:34.20 ID:Z4/AkBY20.net]
次の現場のfwがSpringらしいんだがSpringって何が特徴なの

918 名前:デフォルトの名無しさん mailto:sage [2019/01/25(金) 08:16:19.71 ID:5vdjXK7W0.net]
>>880
DI

919 名前:デフォルトの名無しさん [2019/01/25(金) 16:21:15.59 ID:DXGS5FUqx.net]
Jsoup使ってwebスクレイピングしたいんだけど、やり方がよくわからないです。。
ダウンロードは済みだけど動かし方がさっぱりわからずで…

ちなjavaは、びじゅあるすたじおこーどでコードを打ち込んで、パワーシエルで動かしてます。

920 名前:デフォルトの名無しさん mailto:sage [2019/01/25(金) 16:32:36.23 ID:dvigx+iy0.net]
Ruby で、Nokogiri, Selenium WebDriver, ERB などで、スクレイピングする方が簡単

>>880
掌田津耶乃の本

Spring Framework 4 プログラミング入門、2014
Spring Boot プログラミング入門、2016

921 名前:デフォルトの名無しさん mailto:sage [2019/01/25(金) 20:00:54.94 ID:2mJ8qHrma.net]
>>881
>>883
ありがとう、買ってみる

922 名前:デフォルトの名無しさん [2019/01/25(金) 22:22:34.59 ID:mdE9f39+x.net]
>>883ありがとう。
スクレイピング技術はPythonが充実してそうだけど、
学校ではjavaとPHPとhtmlとJavaScript しか習ってないんだ。。。
とりあえず今はjavaでやってみて、時間に余裕出来たらPython極めたい

923 名前:デフォルトの名無しさん mailto:sage [2019/01/25(金) 23:01:06.51 ID:9WShTN4K0.net]
スクレイピングならPythonよりもRubyが鉄板じゃないかな



924 名前:デフォルトの名無しさん [2019/01/25(金) 23:19:12.52 ID:RXh8uaIc0.net]
なんでこれはダメなんですか
String gomi="sinekasu";

public Sampleb() {
this(gomi);//明示的にコンストラクターを起動している間、インスタンス・フィールド gomi は参照できません
}

こっちは問題なし
public Sampleb() {
System.out.println(gomi);
}

925 名前:デフォルトの名無しさん [2019/01/25(金) 23:20:49.61 ID:RXh8uaIc0.net]
両方コンストラクタが動いてる途中ですよね

926 名前:デフォルトの名無しさん [2019/01/25(金) 23:43:50.18 ID:2NxaaluW0.net]
>>886
そうなの?
図書館で蔵書調べたり、ネットで検索するとPythonばかり出てくるし、最近はAIの話題でもPythonて耳にするから、授業そっちのけでPython学ぼうか悩んでる

927 名前:デフォルトの名無しさん mailto:sage [2019/01/26(土) 01:00:54.13 ID:dj+QRU8+d.net]
一部だけ書かれても分かるかよ

928 名前:デフォルトの名無しさん mailto:sage [2019/01/26(土) 09:36:16.81 ID:FDRbZUKha.net]
>>889
トレンドとしてPythonが人気なのはそうだけど、言語ごとに得意分野はある。
現実的にはスクレイピングだけを考えたらRuby一択だけど他の用途も想定するならPythonは悪い選択肢じゃないよ。

929 名前:デフォルトの名無しさん [2019/01/26(土) 10:53:45.57 ID:RAOXCofF0.net]
>>890
this()でフィールド使えない理由がよくわからないんです
そういうもんだと暗記しようかなとも思ってますが

930 名前:デフォルトの名無しさん mailto:sage [2019/01/26(土) 11:25:50.14 ID:w0Sct7+Sr.net]
>>887
this()やsuper()は先頭にしか置けないってのから分かるように,インスタンスが生成されるタイミングは一番最後に呼び出されたコンストラクタの先頭に当たるから,this()を呼び出す前にフィールドにはアクセスできない

931 名前:デフォルトの名無しさん [2019/01/26(土) 11:31:54.81 ID:RAOXCofF0.net]
>>893
そうなんですか
じゃあ暗記します

932 名前:デフォルトの名無しさん mailto:sage [2019/01/26(土) 11: ]
[ここ壊れてます]

933 名前:45:29.68 ID:+eApZUOf0.net mailto: 説明もらっても暗記かい []
[ここ壊れてます]



934 名前:デフォルトの名無しさん [2019/01/26(土) 11:56:32.88 ID:RAOXCofF0.net]
説明を見たうえで暗記でいいって判断したんだろうが猿黙ってろゴミ

935 名前:デフォルトの名無しさん mailto:sage [2019/01/26(土) 12:03:46.69 ID:BtPdovbm0.net]
これアイツかな?発達の奴

936 名前:デフォルトの名無しさん [2019/01/26(土) 12:28:44.69 ID:YGE1FiJD0.net]
>>897
おいガイジ

937 名前:デフォルトの名無しさん mailto:sage [2019/01/26(土) 12:53:32.64 ID:FDRbZUKha.net]
カイジ?

938 名前:デフォルトの名無しさん mailto:sage [2019/01/26(土) 16:51:56.90 ID:BtPdovbm0.net]
ざわわ

939 名前:デフォルトの名無しさん [2019/01/26(土) 17:35:22.64 ID:YGE1FiJD0.net]
>>900
おいきたろう

940 名前:デフォルトの名無しさん mailto:sage [2019/01/27(日) 19:55:36.26 ID:fsCM9HoX0.net]
https://ja.wikipedia.org/wiki/%E3%81%8C%E3%81%84%E3%81%97

941 名前:デフォルトの名無しさん mailto:sage [2019/01/31(木) 20:32:51.19 ID:J13kBbfld.net]
質問です。
ログ出力の構成を考えてるのですが、
Javaで別ディレクトリにある同名ファイルは同時に開けますか?
手元にPCなくて試せません…

942 名前:デフォルトの名無しさん mailto:sage [2019/01/31(木) 21:56:48.54 ID:ikzK+zF/a.net]
開けるよ。

943 名前:デフォルトの名無しさん [2019/02/01(金) 23:57:08.52 ID:F13kZs9F0.net]
それどころか同じディレクトリにある同じファイルも開けるよ。
あまりやる必要はないかも知れないが。



944 名前:デフォルトの名無しさん mailto:sage [2019/02/02(土) 20:51:07.37 ID:yXPIoHRha.net]
何かのテンプレートファイルを使うときは同じファイルを同時に読み込むことはあるな
業務アプリで何かをエクセルに出力するときなんかにやることはある

945 名前:デフォルトの名無しさん mailto:sage [2019/02/02(土) 21:02:02.95 ID:nIL1CRM4d.net]
ほえー全く同じファイルも開けるんですね
ありがとうございます助かりました

946 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 15:47:50.42 ID:okavnPFe0.net]
Javaアプレットも読めるんだけど、弊社の自作VMだって主張するやつについてどう思う?

947 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 15:53:07.87 ID:okavnPFe0.net]
どのブラウザもJAVAは選択制でデフォルトではオフ。
日本の官庁がJAVAで書かれたオンラインシステムを持っていて大慌て。
GoogleのAndroidもサンマイクロシステムにライセンス料だせと脅されたから、たぶんAndroidもJAVA離れするだろうし。
似たようなC#ってあるのだからそれで十分なんだよね。

948 名前:デフォルトの名無しさん mailto:sage [2019/02/06(水) 18:18:24.39 ID:GRtPH2TFa.net]
文章からガチで頭おかしいオーラが漂いまくってる

949 名前:デフォルトの名無しさん [2019/02/06(水) 18:46:04.80 ID:uzDWrSZHa.net]
なんともまあ……

950 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 07:57:03.78 ID:Teb/Q4UXM.net]
Webシステムの現場なんですけど
Javaをコンパイルしたらクラスが生成されるということを知らないおっさん(35)が異動してきました
何から教えればいいのでしょうか

951 名前:デフォルトの名無しさん mailto:age [2019/02/07(木) 08:31:14.20 ID:9RrHvXh/M.net]
マウンティング化みっともない行為であることを教えてやれ

952 名前:デフォルトの名無しさん [2019/02/07(木) 09:46:07.67 ID:3xOPfbFs0.net]
>>912
Javaをコンパイルしたらクラスが生成されるんだよと知らないおっさん(35)にやさしく教えてあげましょう

953 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 11:28:48.27 ID:oaRutm/fM.net]
>>912
コピー機の使い方と便所掃除のやり方かな



954 名前:デフォルトの名無しさん mailto:sage [2019/02/07(木) 11:48:46.46 ID:Ftq4Fy0Na.net]
>>912
とりあえず転職サイトの登録の仕方を教えてあげるのがお互いのため

955 名前:デフォルトの名無しさん [2019/02/08(金) 00:12:47.05 ID:pLb7xNU70.net]
paiza.io とか、転職のためのプログラミングの学習もできるようなサイトを教えてあげなさい。

956 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 00:14:15.67 ID:en9HPq6pa.net]
>>912
Scala

957 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 06:21:41.94 ID:ic1vtp+o0.net]
paizaな、コンセプトは分かるんだけど現実的にはあまり、って感じだからうちはもう来季以降使わない方向。
正直あんな問題よりもGithubでも見せてもらった方がはるかに応募者のことが分かるし

958 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 16:48:36.70 ID:zHfqMrpOH.net]
はぁ〜ん、

959 名前:eclipse is ゴミ
なんで Find / Replace 効かなくなるっていうクソみたいなバグあるんだよ勘弁してくれ
[]
[ここ壊れてます]

960 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 16:50:45.43 ID:zHfqMrpOH.net]
はぁ〜ん、Git のプラグインをアンインスコしたら治ったわ
Git Plugin is ゴミ

961 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 18:16:55.85 ID:UceabCeXa.net]
さすがにそろそろIntelliJに乗り換えとけ
eclipseなんて使ってると今どきの女子高生に笑われるぞ

962 名前:デフォルトの名無しさん [2019/02/08(金) 19:29:37.34 ID:/KfwBoQL0.net]
これから何か覚えようと思ってJAVAを考えてるんだけど有料になったの?
あとなんだっけJDKとかってオラクルのやつが一番メジャーなの?

963 名前:デフォルトの名無しさん [2019/02/08(金) 19:53:07.51 ID:pLb7xNU70.net]
燃料が投入された。



964 名前:デフォルトの名無しさん [2019/02/08(金) 19:56:07.37 ID:/KfwBoQL0.net]
>>923
追加です、アプレットとサーブレットってどっちやればいいの?
自分のPCで個人的に使いたいんだけど

965 名前:デフォルトの名無しさん [2019/02/08(金) 20:00:49.39 ID:/KfwBoQL0.net]
>>925
あとどこか解りやすいサイトあったら教えてくださいーよろしくお願いします_(_ _)_

966 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 21:25:18.87 ID:1PVJmtoQ0.net]
JSPとJSって違うんですか
jsファイルってなんですかって聞かれたけど答えられませんでした
なんて言うのが正解なんでしょうか

967 名前:デフォルトの名無しさん [2019/02/08(金) 21:46:08.51 ID:wNOXgeyf0.net]
女子小学生。

968 名前:デフォルトの名無しさん mailto:sage [2019/02/08(金) 22:14:13.31 ID:zHfqMrpOH.net]
>>922
IntelliJのほうがいいのは重々わかってるんだけど、
eclipse の API とか プラグインとかごりごり使ってるし
使ってる SWT とか JFace のGUIビルダが eclipse にしかないんだよね…まぁGUIビルダもクソバグ満載のゴミなんだけど

969 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 00:52:56.06 ID:KF+GGfgS0.net]
簡単なプログラムならEclipseのコンパイル爆速だ というか
編集中にインクリメントコンパイルしてるのかな?

970 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 01:22:19.42 ID:zeYP++f3a.net]
今時のPCならJavaのコンパイルなんて一瞬だからインクリメンタルコンパイルはほとんど関係ない
不要なコンパイルを減らすようにする程度の依存関係管理さえやってればクラスファイル単位でのコンパイルで十分に速い

971 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 08:03:40.22 ID:by4oxQBn0.net]
javaってインタープリター言語だったっけ?と思った記憶がある。コンパイルしてるように見えなかったんで。

972 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 09:04:16.42 ID:/gorSJ8M0.net]
IntelliJも出来るよ、デフォルトでオフになってるけど。
ただビルドそのものなんて一瞬だから、あんま意味ないよね。
Springとかのウェブアプリを作ってて画面いじりながら即座に変更を反映したい時には使う。

973 名前:デフォルトの名無しさん [2019/02/09(土) 09:10:58.95 ID:yVVPxPY90.net]
初心者質問スレなのにガン無視って・・・そういうスレなんですね。
自分で調べます、ありがとうございました。



974 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 10:39:35.77 ID:/gorSJ8M0.net]
そうか、頑張れよ

975 名前:デフォルトの名無しさん [2019/02/09(土) 15:35:20.18 ID:6/bHpQ6m0.net]
燃料は燃えなかったようだな

976 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 21:46:00.20 ID:XEN4loIw0.net]
packageについて質問します。
javaおよびコンピュータについては殆ど素人なんでお手柔らかにお願いします。

Calc.java(メイン)、CalcLogic.java という二つのファイルをコンパイルしたところ
C:\Users\sinou\Desktop\java>javac Calc.java CalcLogic.java

という風にコンパイルできたのですが、

いざメインのほうのCalc.javaを実行したところ
C:\Users\sinou\Desktop\java>java Calc
エラー: メイン・クラスCalcを検出およびロードできませんでした
原因: java.lang.NoClassDefFoundError: root/Calc (wrong name: Calc)

という風にエラーが出ました。

また、メインのCalc.javaのみをコンパイルした結果
C:\Users\sinou\Desktop\java>javac Calc.java
Calc.java:5: エラー: パッケージtorは存在しません
int total=tor.CalcLogic.tasu(a,b);
^
Calc.java:6: エラー: パッケージtorは存在しません
int

977 名前:delta=tor.CalcLogic.hiku(a,b);
^
エラー2個

となりました。
二つの.javaファイルは同じjavaファイルに入っているのになぜかコンパイルできません。
[]
[ここ壊れてます]

978 名前:デフォルトの名無しさん [2019/02/09(土) 21:46:22.21 ID:XEN4loIw0.net]
ソースコード
Calc.java

package root;
public class Calc{
public static void main(String[]ags){
int a=10;int b=2;
int total=tor.CalcLogic.tasu(a,b);
int delta=tor.CalcLogic.hiku(a,b);
System.out.println("tasuto"+total+"hikuto"+delta);
}
}

CalcLogic.java

package tor;
public class CalcLogic{
public static int tasu(int a,int b){
return(a+b);
}
public static int hiku(int a,int b){
return(a-b);
}
}

もしわかる方がいればご指導よろしくお願いします。

979 名前:デフォルトの名無しさん [2019/02/09(土) 21:49:45.18 ID:XEN4loIw0.net]
使用テキストエディタはAtomです。

980 名前:デフォルトの名無しさん [2019/02/09(土) 22:17:23.17 ID:wvYgqGa/0.net]
>>938
パッケージとフォルダ階層を一致させればいい

root/Calc.java
tor/CalcLogc.java

実行するときはrootの親のフォルダでjava root.Calcを実行すればいいよ

981 名前:デフォルトの名無しさん [2019/02/09(土) 23:24:15.53 ID:XEN4loIw0.net]
>>940

C----User---sinou---Desktop-------java
|
|---Calc.java
|
|
|---CalcLogic.java

2つの.javaファイルはこういう風になっていますが、階層を合わせるにはどうすればいいですか?
自分の理解が理解が低くてすいません。
それと申し訳ないのですが、package化せずに、CalcLogic.tasu という風にそのまま呼び出せば作動するのですが、これはpackageが何か作用しているのですが?
何度も質問して申し訳ありません。

982 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 23:29:19.47 ID:XEN4loIw0.net]
Atomではこんな感じです
https://i.imgur.com/Oq64Wm0.png
https://i.imgur.com/h5ZJ2S3.png

983 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 23:32:38.32 ID:XEN4loIw0.net]
すみません。こっちが正しい奴です。
https://i.imgur.com/WC8utYB.png
https://i.imgur.com/h5ZJ2S3.png



984 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 23:34:12.23 ID:ugjh5xrz0.net]
940ではないけどパッケージとフォルダ階層の関係とフォルダ(ディレクトリ)の基点を整理する必要がありそう

985 名前:デフォルトの名無しさん mailto:sage [2019/02/09(土) 23:36:35.01 ID:TFFIMnUD0.net]
えっ、importの話じゃないの?
みんなが何言ってるのかよくわからない

986 名前:デフォルトの名無しさん mailto:sage [2019/02/10(日) 00:39:40.56 ID:4NPrpNeG0.net]
>>944
ありがとうございます!
助言の通りクラスローダーについて調べてみたらどうやらクラスファイルの位置が間違えていたようです!
クラスファイルを作成すると成功しました!
本当にありがとうございました!

https://i.imgur.com/nwn88Fp.png

987 名前:デフォルトの名無しさん [2019/02/10(日) 11:08:18.40 ID:PwIN6g+GM.net]
VScodeとAtomでは
どっち使ったほうがいいですか?

988 名前:デフォルトの名無しさん mailto:sage [2019/02/10(日) 11:12:20.42 ID:Ix0Ul5tpa.net]
Atomは開発元がVSCodeの開発元であるMSに買収され、完全に存在意義を失い事実上終了

989 名前:デフォルトの名無しさん mailto:sage [2019/02/10(日) 11:28:50.23 ID:Q/s8Bwota.net]
>>947
その2択ならVSCode
Javaを書くならそれらよりIntelliJの方が良いと思うけど

990 名前:デフォルトの名無しさん mailto:sage [2019/02/10(日) 11:50:42.09 ID:dkb/B5OXM.net]
VSCodeのJava拡張は意外に良くできてるよ
今時流行りのコマンドラインだけで完結するビルドツールやフレームワークを使っているならほぼ不都合はない
リファクタリングなんかは敵わないけど、テキストエディタとしての拡張性・快適性を考慮すれば全然アリな選択

991 名前:デフォルトの名無しさん mailto:sage [2019/02/10(日) 12:30:05.01 ID:DNUQi1GGM.net]
お前らがJava使ってるのってCOBOLと同じ流れ?

992 名前:デフォルトの名無しさん mailto:sage [2019/02/10(日) 14:00:43.30 ID:oG+nD+ob0.net]
は?どういう流れよ?

993 名前:デフォルトの名無しさん mailto:sage [2019/02/10(日) 14:59:46.04 ID:DNUQi1GGM.net]
>>952
いや純粋に聞いてみたいだけだよ



994 名前:デフォルトの名無しさん mailto:sage [2019/02/10(日) 17:58:31.67 ID:n6QJeawT0.net]
COBOLと同じ流れっていうのがどういう意味で言ってるのかわからんから答えようがない

995 名前:デフォルトの名無しさん mailto:sage [2019/02/10(日) 18:18:48.96 ID:96GWWqq3M.net]
Javaが採用される理由は下記の通り
1. 既存資産があるから
2. PGの調達

996 名前:が容易で単価も安いから
3. Winで特に支障なくUNIXサーバー向けの開発ができるから
このうち1.はCOBOLと同じだが、あとの2つはCOBOLには当てはまらない
[]
[ここ壊れてます]

997 名前:デフォルトの名無しさん mailto:sage [2019/02/11(月) 10:48:57.26 ID:vMTyjZUqa.net]
COBOL以外覚えられなくてCOBOLにしがみついてるって意味なら当てはまらんなあ
俺の場合は他の言語から入って後からJava書き始めた口だし

998 名前:デフォルトの名無しさん [2019/02/11(月) 15:48:11.98 ID:Xld2ZNBKa.net]
ステートレスBeanとステートフルBeanの違いがわかりません。
例をあげて違いを明確に教えてください。

999 名前:デフォルトの名無しさん mailto:sage [2019/02/12(火) 17:48:15.62 ID:jZrUzxgNa.net]
ジェネリクスについて質問です
List<HashMap<String, Integer>> 型のリストをソートするためのComparotorクラスって、
class Hoge implements Comparotor<Map <String, Integer>> {}
で良いんですか?
どこかでMap<?, ?>とワイルドカードにしないといけないと見たんですが(うろ覚えです)、特にそうしなくても動くので気になりました

1000 名前:デフォルトの名無しさん [2019/02/16(土) 08:20:41.88 ID:fTKLBuzC0.net]
ここってちょっと難しい質問だとレス止まるな。

1001 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 10:14:53.73 ID:n5QWwS4y0.net]
今頃Javaに熱意のあるプログラマーなんて居ないし

1002 名前:デフォルトの名無しさん mailto:sage [2019/02/16(土) 18:45:03.62 ID:N5DMegPc0.net]
ステートレスは1回の処理で破棄される
ステートフルは永続性がある
つーか、Javaの質問じゃないわ

1003 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 15:14:02.61 ID:FJjom38pa.net]
該当スレがないので
eclipseからintelij IDEAを試してますが、括弧の中からenterで抜け出せないのが不便過ぎます。

ショートカットは面倒だし、tabキーもsoutなんかの括弧付き定型文では無効。
使ってる人はどう対応してるのか教えてください



1004 名前:デフォルトの名無しさん [2019/02/20(水) 16:36:06.49 ID:4EtSY22fa.net]
括弧の中からenterで抜け出すの意味がよくわからん

1005 名前:デフォルトの名無しさん mailto:age [2019/02/20(水) 19:06:18.77 ID:6i9INm92M.net]
エクリプスエアプか?

1006 名前:デフォルトの名無しさん mailto:age [2019/02/20(水) 19:06:56.72 ID:6i9INm92M.net]
エクリプス童貞の皆さん

1007 名前:デフォルトの名無しさん [2019/02/20(水) 20:21:31.82 ID:EKI9LXSlM.net]
エンターキーなのに出たいという話は全世界が驚く発言。

1008 名前:デフォルトの名無しさん mailto:age [2019/02/20(水) 20:26:29.38 ID:6i9INm92M.net]
>>966
おい童貞

1009 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 21:16:52.17 ID:K6Fdo/zQr.net]
こういう事を言ってる?
https://ja.stackoverflow.com/questions/39484/intellijで括弧の中身を入力した後エンターキーで自動でカーソルを括弧の外に移動させたい

でもぱっと見た感じその条件はこれじゃ解決できなさそうやね

1010 名前:デフォルトの名無しさん [2019/02/20(水) 22:50:23.64 ID:V5pUCRq30.net]
Enter押すのも→押すのもワンキーなんだから、慣れてるかどうか以外の違いはないんじゃないかと思った。

1011 名前:デフォルトの名無しさん mailto:sage [2019/02/20(水) 23:00:18.44 ID:VQnn8S2l0.net]
>>968
そうですね。そのショートカットの他に、()+文字列続けて打ってる場合はtabで抜け出すことができます。
しかしprint()のように()を含む補完だと 中身を書いて抜け出すことができません。

1012 名前:デフォルトの名無しさん [2019/02/21(木) 05:41:02.41 ID:jvb9Tzci0.net]
;打てば抜けられるときあるよな
抜けられないときもあるけど

1013 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 17:34:53.91 ID:SR0wFFcv0.net]
グーグルのスプレッドシートをAPIとjavaで読み書きしてるのですが、
シートの行数が2万行とか3万行になると、読み込みに時間がかかって Timeout 例外になります。
ググってその対処法を見つけたんですが、ちゃんと動作



1014 名前:してくれません。何が悪いのか分かりませんか?
デフォルトのタイムアウトは20秒くらいで、60秒くらいに設定しても変化ありません。

https://stackoverflow.com/questions/46999143/how-to-set-timeout-for-google-client-spreadsheet-api

こっちも参考になるかもしれません。
https://stackoverflow.com/questions/29518231/sockettimeoutexception-read-timed-out-on-insert-to-google-drive-is-it-retryab
https://developers.google.com/api-client-library/java/google-api-java-client/errors
[]
[ここ壊れてます]

1015 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 19:25:26.84 ID:9TadMKc3a.net]
>>972
変化がないってことは変わらず20秒でタイムアウトになるって意味?

あと何が悪いのか分からないと言われても、実際に書いたコードを見せてもらわないことにはどうにもならん

1016 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 19:39:21.87 ID:SR0wFFcv0.net]
>>973
自分のコードはこんな感じです。

private static final JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();

public static Sheets getSheetsService() throws IOException, GeneralSecurityException {
final NetHttpTransport HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport();

return new Sheets.Builder(HTTP_TRANSPORT, JSON_FACTORY, setTimeout(getCredentials(HTTP_TRANSPORT)))
.setApplicationName(APPLICATION_NAME)
.build();
}

private static HttpRequestInitializer setTimeout(final HttpRequestInitializer initializer) {
return request -> {
initializer.initialize(request);
request.setReadTimeout(60000);
};
}

デバッガでトレースしてもラムダ式の中のコードが実行されないし、相変わらず20秒でタイムアウトになります。

1017 名前:デフォルトの名無しさん [2019/02/21(木) 19:42:18.83 ID:fprmeCB00.net]
>>974
httpRequest.setConnectTimeout(3 * 60000); // 3 minutes connect timeout
これ入れてもNG?

1018 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 19:46:38.87 ID:SR0wFFcv0.net]
>>975
同じです。そっちのコードも試しました。

5000行くらいだとスムーズに読んでくれるんで、シートをいくつも作ってそこに5000行ずつ分割した上で読んだりしてるんですけど、
すごく手間だし、シートのある列がどこまで埋まってるか知りたいなんて時はそういうこともできないので困ってます。

1019 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 20:18:27.97 ID:9TadMKc3a.net]
>>976
携帯だから試せないけど、>>974のコードに>>975のを加えて両方書いてもダメ?

1020 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 20:29:20.31 ID:bp6QexpC0.net]
ラムダの中が実行されないなら渡し方が違うんでね

1021 名前:デフォルトの名無しさん mailto:sage [2019/02/21(木) 20:31:04.28 ID:SR0wFFcv0.net]
>>977
private static HttpRequestInitializer setTimeout(final HttpRequestInitializer initializer) {
return request -> {
initializer.initialize(request);
request.setConnectTimeout(60000);
request.setReadTimeout(60000);
};

これでやってみたけどダメでした。

1022 名前:デフォルトの名無しさん [2019/02/21(木) 21:19:34.16 ID:Neuw5rL80.net]
>>966
Return と書いてあるシールでも貼っときなさい。

1023 名前:デフォルトの名無しさん [2019/02/21(木) 21:27:18.64 ID:lsmx9sV60.net]
>>980
リターンキーは左下に行くという意味で、戻るわけではありません。



1024 名前:デフォルトの名無しさん [2019/02/21(木) 23:33:38.23 ID:fprmeCB00.net]
>>979
ちょっと覗いてみたけど

NetHttpTransport.buildRequest
  ・ConnectionFactoryでconnectionを作成
  ・NetHttpRequestを作成
    # setTimeoutがあるけど呼び方がわからぬ

って感じだった
HttpRequestInitializerを呼び出すのはHttpTransportだと思うんだけど
どこで呼び出してるのかよくわからんかった

ConnectionFactoryを指定してみたりとか

final NetHttpTransport HTTP_TRANSPORT = new NetHttpTransport.Builder()
    .trustCertificates(GoogleUtils.getCertificateTrustStore())
    .setConnectionFactory(new DefaultConnectionFactory() {
      @Override
      public HttpURLConnection openConnection(URL url) throws IOException {
        HttpURLConnection

1025 名前:con = super.openConnection(url);
        con.setReadTimeout(1000000);
        con.setConnectTimeout(1000000);
        return con;
      }
    })
    .build();

JVMの設定を入れてみたりとか
System.setProperty("sun.net.client.defaultConnectTimeout", "100000");
System.setProperty("sun.net.client.defaultReadTimeout", "100000");

Javaの起動時にJVMのオプション指定したりとか試してみてはどうだろ
[]
[ここ壊れてます]

1026 名前:デフォルトの名無しさん mailto:sage [2019/02/22(金) 05:42:45.85 ID:p3Rb6+Rra.net]
まだ解決してないならタイムアウトしてる部分のソース見るのが一番早いかな

1027 名前:デフォルトの名無しさん mailto:sage [2019/02/22(金) 08:02:33.12 ID:2zA+k7LF0.net]
>>982
コードまで書いてもらってありがとうございます。朝一で試してみたんですが、残念ながら変わりませんでした。
ともあれありがとうございました。

1028 名前:デフォルトの名無しさん mailto:age [2019/02/22(金) 08:51:44.48 ID:Iun5aGGoM.net]
>>984
タイムアウトで例外投げられてるなら
スタックトレース出力されてない?

スタックトレースを見ればどのオブジェクトが関わってるか
わかるんじゃないかな

それ貼ってもらえれば

1029 名前:デフォルトの名無しさん mailto:sage [2019/02/22(金) 12:29:35.43 ID:2zA+k7LF0.net]
>>985
エラーはこんなのが出ます。

Exception in thread "main" java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at sun.security.ssl.InputRecord.readFully(InputRecord.java:465)
at sun.security.ssl.InputRecord.read(InputRecord.java:503)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:983)
at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:940)
at sun.security.ssl.AppInputStream.read(AppInputStream.java:105)

1030 名前:デフォルトの名無しさん mailto:sage [2019/02/22(金) 12:34:28.93 ID:2zA+k7LF0.net]
これで全部ではなくて、まだもう半分あるんですが、書き込もうとしたらNGワード禁止と言われて書き込めませんでした。

1031 名前:デフォルトの名無しさん mailto:sage [2019/02/22(金) 12:45:13.44 ID:2zA+k7LF0.net]
一番下から1行ずつ消しながら書き込めないかやってみます。

at java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:286)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:735)
at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:678)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1587)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:347)
at com.google.api.client.http.javanet.NetHttpResponse.<init>(NetHttpResponse.java:37)
at com.google.api.client.http.javanet.NetHttpRequest.execute(NetHttpRequest.java:105)
at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:981)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352)

1032 名前:デフォルトの名無しさん mailto:sage [2019/02/22(金) 21:43:24.52 ID:2zA+k7LF0.net]
HttpRequestInitializer をググってたらこういうページに行き当たりまして、
https://developers.google.com/api-client-library/java/google-http-java-client/reference/1.19.0/com/google/api/client/http/HttpRequestInitializer
そこに書いてあった DisableTimeout というクラスを組み込んでみたんですが、今のところ動作してるみたいです。

public static Sheets getSheetsService() throws IOException, GeneralSecurityException {

class DisableTimeout implements HttpRequestInitializer {
public void initialize(HttpRequest request) throws IOException {
request.setConnectTimeout(0);
request.setReadTimeout(0);
}
}

final NetHttpTransport HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport();

return new Sheets.Builder(HTTP_TRANSPORT, JSON_FACTORY, new DisableTimeout())
.setApplicationName(APPLICATION_NAME)
.build();
}

これで35,000行のファイルを2、3秒で読んでしまうので、さすがに嘘だろうと思って、読み込んだ文字列をファイルに書き出してみたんですが、
確かに読めているみたいです。実際のところこれまで何十秒もかかっていた読み込みが、これでそんな短時間になるというのはちょっと理解不能です。

1033 名前:デフォルトの名無しさん mailto:sage [2019/02/22(金) 22:32:47.11 ID:p3Rb6+Rra.net]
最初のコードと比べるとHttpRequestInitializerをnewしてるところが違うように見えるな



1034 名前:デフォルトの名無しさん mailto:sage [2019/02/23(土) 14:33:18.47 ID:jlfdOyKu0.net]
えー皆さん大変申し訳ありません。>>989は間違いです。
ついでに最初に出したstackoverflowのコードはちゃんと動きます。
呼び出し側の自分のコードが原因でした。すごく馬鹿な間違いをしてまして、恥ずかしくて書けないような初歩的な

1035 名前:ミスでした。
ごめんなさい。
[]
[ここ壊れてます]

1036 名前:デフォルトの名無しさん mailto:sage [2019/02/23(土) 16:33:08.81 ID:aHdAp3lda.net]
ワロタw
解決してよかったね

1037 名前:デフォルトの名無しさん [2019/02/28(木) 16:44:17.92 ID:imPJLa31d.net]
Arrays.streamにchar[]が無いのってオラクルの嫌がらせか何かですか?

1038 名前:デフォルトの名無しさん [2019/03/02(土) 03:41:49.15 ID:V02tz52S0.net]
あ、valueOfしてcharsでいいのか

1039 名前:デフォルトの名無しさん mailto:sage [2019/03/03(日) 23:52:36.89 ID:MEPSmozW0.net]
canvasのハックの仕方を教えてください
判断するための状態を読み取りたいです

1040 名前:デフォルトの名無しさん mailto:sage [2019/03/09(土) 17:27:33.32 ID:l8LfQfs2d.net]
printwriterで最後の数行が書き込まれなくて困ってたけどclose()する前にflush()したら解決した
こういうこともあるのか

1041 名前:デフォルトの名無しさん [2019/03/09(土) 19:55:15.69 ID:ACok0wnJ0.net]
>>996
closeするときにflushを呼ばない行儀の悪いクラスを
PrintWriterでラッピングしてしまったのね
なんてクラスよ、晒しちゃいなよ!

1042 名前:デフォルトの名無しさん mailto:sage [2019/03/09(土) 22:17:07.64 ID:SBBakmG00.net]
メッセージって業務クラスにベタ書きする?普通
メッセージのプロパティかそれ用のクラスにまとめるでしょ??
業務クラスにべた書きってありえなくないですか?

1043 名前:デフォルトの名無しさん [2019/03/09(土) 23:57:52.40 ID:ACok0wnJ0.net]
ケースバイケース



1044 名前:デフォルトの名無しさん [2019/03/09(土) 23:59:48.81 ID:ACok0wnJ0.net]
Java入門・初心者質問スレ Part.9
mevius.5ch.net/test/read.cgi/tech/1552143555/

1045 名前:1001 [Over 1000 Thread.net]
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 275日 3時間 42分 40秒

1046 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<295KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef