プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理 http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
(p)ttp://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※
質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。
前スレ
★★Java質問・相談スレッド180★★
https://mevius.5ch.net/test/read.cgi/tech/1492780397/
★★Java質問・相談スレッド181★★
■ このスレッドは過去ログ倉庫に格納されています
2018/02/10(土) 17:49:40.56ID:l9ZzjyKP
519デフォルトの名無しさん
2018/07/18(水) 11:17:49.53ID:ouSD5X5G >>517
30億のデバイスで使われてるんだが?
30億のデバイスで使われてるんだが?
520デフォルトの名無しさん
2018/07/18(水) 11:18:55.86ID:ouSD5X5G ロンドン証券取引所で大失敗したドトネトは信用できぬ
521デフォルトの名無しさん
2018/07/18(水) 11:32:18.31ID:7RCNVxRQ522デフォルトの名無しさん
2018/07/18(水) 12:06:42.81ID:tghCYv44 失敗例でいうとJavaはあちこちで失敗してるね
日常すぎてわざわざ話題にならんけど
日常すぎてわざわざ話題にならんけど
523デフォルトの名無しさん
2018/07/18(水) 12:37:19.55ID:ouSD5X5G524デフォルトの名無しさん
2018/07/18(水) 13:33:17.95ID:9IEVAZpR Write once, Bug anywhere.
OS毎にバグの入り具合が違う。
OS毎にバグの入り具合が違う。
525デフォルトの名無しさん
2018/07/18(水) 13:55:40.65ID:imuZ+lX2 初心者質問で恐縮ですが、世間様では初期化不要なコンストラクタも一応書くのでしょうか?省略するのでしょうか?
派遣の年上の人からルールだから書けと言われ気になりまして
派遣の年上の人からルールだから書けと言われ気になりまして
526デフォルトの名無しさん
2018/07/18(水) 14:24:01.60ID:JHZwBCBg >>523
だからわざわざ話題にするほど珍しくないってことだよ
だからわざわざ話題にするほど珍しくないってことだよ
527デフォルトの名無しさん
2018/07/18(水) 15:01:03.41ID:hQiorlXz IBMとかしょっちゅう失敗してるな
528デフォルトの名無しさん
2018/07/18(水) 15:09:29.88ID:ouSD5X5G >>526
失敗例ないじゃんw
失敗例ないじゃんw
529デフォルトの名無しさん
2018/07/18(水) 15:10:24.92ID:ouSD5X5G Javaの有名な失敗例を一つでもいいから挙げてみろよ
530デフォルトの名無しさん
2018/07/18(水) 15:11:32.95ID:ouSD5X5G531デフォルトの名無しさん
2018/07/18(水) 15:13:11.38ID:ouSD5X5G 伊達に30億のデバイスで動いてるわけじゃねえぞ
てめえらあんま舐めてっとあれだからな
てめえらあんま舐めてっとあれだからな
532デフォルトの名無しさん
2018/07/18(水) 15:14:21.70ID:ouSD5X5G >>525
一般的には書かなくていいものは書かない
一般的には書かなくていいものは書かない
533デフォルトの名無しさん
2018/07/18(水) 15:35:58.01ID:6/qiKP15534デフォルトの名無しさん
2018/07/18(水) 16:30:02.33ID:4ELcifB5 ぺろぺろ
535デフォルトの名無しさん
2018/07/18(水) 17:47:21.24ID:ouSD5X5G あんあん!
536デフォルトの名無しさん
2018/07/18(水) 17:57:49.02ID:OmO21Xy3 なんとかぎゃふんといわせたい(笑)
>派遣の年上の人からルールだから書けと言われ気になりまして
>派遣の年上の人からルールだから書けと言われ気になりまして
537デフォルトの名無しさん
2018/07/18(水) 20:28:43.76ID:E4ArJsFy 8月からIT企業に入社します
研修があるので、早めに予習しておきたいのですが
開発環境をどうしたらいいか困ってます
VBAでjavaをすると電話で聞いたのですが
見たところjavascriptでしか見たらず、開発環境はイクリプスでしかネットでも記事が出てきません
VBAで開発環境にしている方はどのように行ってますでしょうか
研修があるので、早めに予習しておきたいのですが
開発環境をどうしたらいいか困ってます
VBAでjavaをすると電話で聞いたのですが
見たところjavascriptでしか見たらず、開発環境はイクリプスでしかネットでも記事が出てきません
VBAで開発環境にしている方はどのように行ってますでしょうか
538デフォルトの名無しさん
2018/07/18(水) 20:39:16.63ID:U6m34nVN 次の仕事を探す
539デフォルトの名無しさん
2018/07/18(水) 20:39:56.57ID:3T+bsJq5540デフォルトの名無しさん
2018/07/19(木) 00:23:47.65ID:WcB0Ld3E541デフォルトの名無しさん
2018/07/19(木) 00:47:04.50ID:I2KiLRYY VBAからJavaで作ったアプリを起動する…とかなのか?
VBAやるならMSExcelが必要
VBAやるならMSExcelが必要
542デフォルトの名無しさん
2018/07/19(木) 07:30:41.13ID:X7flfBN8543デフォルトの名無しさん
2018/07/19(木) 07:39:20.31ID:B62Oo3TM >>542
仕事の規模にもよるが、ソースコードを保守しやすくするためにコーディングの方法が決められている(コーディング規約がある)現場が殆ど
ちゃんと統一されてるなら従ったほうが無難
仮にバグが発生してあなたの追加部分が規約に従ってない場合、面倒くさいことが発せあする可能性がある
仕事の規模にもよるが、ソースコードを保守しやすくするためにコーディングの方法が決められている(コーディング規約がある)現場が殆ど
ちゃんと統一されてるなら従ったほうが無難
仮にバグが発生してあなたの追加部分が規約に従ってない場合、面倒くさいことが発せあする可能性がある
544デフォルトの名無しさん
2018/07/19(木) 08:01:56.49ID:X7flfBN8545デフォルトの名無しさん
2018/07/19(木) 08:06:40.53ID:SUmbWwrd >>542
フィールドがないならインスタンス生成を禁止するためにprivateコンストラクタを必ず定義すべきなんじゃないの?
フィールドがないならインスタンス生成を禁止するためにprivateコンストラクタを必ず定義すべきなんじゃないの?
546デフォルトの名無しさん
2018/07/19(木) 08:14:00.46ID:H+BjTpO8 そんな細いことまで規約で定めている現場はソフトウェアの品質が低い
俺の経験ね
品質管理担当とか専任者がいても規約に沿っているかという杓子定規な現場が多く
規約化できないビジネスロジックの妥当性はなぜかチェックしない傾向あり
しょーもない規約がなる揺らぎを許容する現場は
チェックリストに沿った均一的な検査はできないものの
分かっている人がビジネスロジックを査読しようとする傾向がある
俺の経験ね
品質管理担当とか専任者がいても規約に沿っているかという杓子定規な現場が多く
規約化できないビジネスロジックの妥当性はなぜかチェックしない傾向あり
しょーもない規約がなる揺らぎを許容する現場は
チェックリストに沿った均一的な検査はできないものの
分かっている人がビジネスロジックを査読しようとする傾向がある
547デフォルトの名無しさん
2018/07/19(木) 08:16:26.97ID:MYiqAgsV ルールに従っている限り、問題が起きた場合はルールを作った奴の責任
これ典型的なSI業界の考え方
上から下までSIに身を置く限りは極めて重要な大原則ではあるが、悪く言えば責任逃れだ
この例に限って言えばわざわざ破って余計なリスクを負うほどの価値があるとは思わないが、今後同様に自分で責任を負わないという判断をするときには
それがエンジニアとしての自分の価値を下げているということを頭の片隅に置いておいたほうがいい
どんな業界でも、本当に上へ行く奴は自己責任でやるもんだ
これ典型的なSI業界の考え方
上から下までSIに身を置く限りは極めて重要な大原則ではあるが、悪く言えば責任逃れだ
この例に限って言えばわざわざ破って余計なリスクを負うほどの価値があるとは思わないが、今後同様に自分で責任を負わないという判断をするときには
それがエンジニアとしての自分の価値を下げているということを頭の片隅に置いておいたほうがいい
どんな業界でも、本当に上へ行く奴は自己責任でやるもんだ
548デフォルトの名無しさん
2018/07/19(木) 08:21:20.97ID:B62Oo3TM549デフォルトの名無しさん
2018/07/19(木) 08:38:28.86ID:B62Oo3TM >>544
後あれだ
なんでこんな規約があるんだって考えるのも最初は勉強になるぞ
件のデフォコン必須!とかはリフレクション多用してて落ちたことがあったからそのまま規約になった〜とか理由があるかもしれない
後あれだ
なんでこんな規約があるんだって考えるのも最初は勉強になるぞ
件のデフォコン必須!とかはリフレクション多用してて落ちたことがあったからそのまま規約になった〜とか理由があるかもしれない
550デフォルトの名無しさん
2018/07/19(木) 08:46:17.55ID:5x41Wecj javaはもうwebの世界でしか生きていけないのかな
551デフォルトの名無しさん
2018/07/19(木) 08:53:04.66ID:Op5duy3q552デフォルトの名無しさん
2018/07/19(木) 08:55:07.02ID:Op5duy3q webに向いてるというよりはwebの世界が広がっただけ
553デフォルトの名無しさん
2018/07/19(木) 08:59:35.72ID:Op5duy3q554デフォルトの名無しさん
2018/07/19(木) 09:02:43.68ID:Op5duy3q スカラより簡単ピエチピより厳密
アプリサーバがたくさんあって人材も豊富
作っているのは世に名も高きオラクル
Java最強伝説
アプリサーバがたくさんあって人材も豊富
作っているのは世に名も高きオラクル
Java最強伝説
555デフォルトの名無しさん
2018/07/19(木) 10:26:37.51ID:BQmzByzh 雑談終了
556デフォルトの名無しさん
2018/07/19(木) 11:32:42.94ID:MIkQQrXR Kotlinもよろしく
557デフォルトの名無しさん
2018/07/19(木) 12:41:54.56ID:hUcifAQw >>551
Andoroidのjavaはもう終わりかな
Andoroidのjavaはもう終わりかな
558デフォルトの名無しさん
2018/07/19(木) 13:22:28.48ID:KtebpVot AndroidはもうKotlinでいいしな
559デフォルトの名無しさん
2018/07/19(木) 13:35:56.12ID:lzwulHPo Javaの知識があってのKotlinだけどな。
Nativeは知らんけど。
Nativeは知らんけど。
560デフォルトの名無しさん
2018/07/19(木) 14:46:46.68ID:Op5duy3q561デフォルトの名無しさん
2018/07/19(木) 18:49:13.04ID:6E4STiKC googleはjavaでオラクルに一兆円の損害賠償払うのにjavaは捨てられないのかな
562デフォルトの名無しさん
2018/07/19(木) 18:52:53.52ID:6E4STiKC オラクル社長はドラ息子に巨万の富を残してるのにまだ足りないみたいね
andoroidの巨額提訴にjava有償化に
andoroidの巨額提訴にjava有償化に
563デフォルトの名無しさん
2018/07/19(木) 20:41:02.41ID:m5MPu7YP564デフォルトの名無しさん
2018/07/19(木) 21:52:48.51ID:Sjf7ku63 寝言は寝て言え
565デフォルトの名無しさん
2018/07/20(金) 03:33:50.65ID:KKufvgV7 Java使いに「も」って、まともな人が居ない事前提?
36歳がそうだからと言って全体を括るのは乱暴かと
36歳がそうだからと言って全体を括るのは乱暴かと
566デフォルトの名無しさん
2018/07/23(月) 06:03:22.92ID:a5odQemo javaの致命的に糞な所を3つ挙げるとしたら何?
おまけで他言語よりこここだけは良いということ1つ
有料化になること以外でよろ
おまけで他言語よりこここだけは良いということ1つ
有料化になること以外でよろ
567デフォルトの名無しさん
2018/07/23(月) 07:40:33.50ID:tja2UxRY 糞なところ
・貧弱なジェネリクス、極めて非直感的なワイルドカード
・直交性が目的化していて利便性が犠牲になっている標準ライブラリ群
・プログラマの平均スキルの低さ
良いところ
・安い単価でプログラマを大量に調達できる
・貧弱なジェネリクス、極めて非直感的なワイルドカード
・直交性が目的化していて利便性が犠牲になっている標準ライブラリ群
・プログラマの平均スキルの低さ
良いところ
・安い単価でプログラマを大量に調達できる
568デフォルトの名無しさん
2018/07/23(月) 07:46:24.27ID:r2NgEomY 致命的と思うところはない
だって致命的な欠点があったらJava使うのやめてるだろ
Javaの良いところはクラスライブラリと開発コミュニティ
Java自体の言語仕様は今となっては秀でている点はなく後発言語のほうが優れている
しかしJavaの豊富なクラスライブラリに多言語が追い付くの容易ではない
Java開発者は標準クラスライブラリに沿って・似せてクラス設計する人が多い印象
そのため外部ライブラリを見つけてきてもインターフェイスに一貫性があり使いやすいことが多い
昔、Perlでもモジュールを集めるCPANというものがあったけど一貫性がなくモジュールごとに作法がバラバラだった
Javaの良さは世界中の開発者が設計ポリシーを共有していて作られたライブラリが相互運用しやすいエコシステムにある
だって致命的な欠点があったらJava使うのやめてるだろ
Javaの良いところはクラスライブラリと開発コミュニティ
Java自体の言語仕様は今となっては秀でている点はなく後発言語のほうが優れている
しかしJavaの豊富なクラスライブラリに多言語が追い付くの容易ではない
Java開発者は標準クラスライブラリに沿って・似せてクラス設計する人が多い印象
そのため外部ライブラリを見つけてきてもインターフェイスに一貫性があり使いやすいことが多い
昔、Perlでもモジュールを集めるCPANというものがあったけど一貫性がなくモジュールごとに作法がバラバラだった
Javaの良さは世界中の開発者が設計ポリシーを共有していて作られたライブラリが相互運用しやすいエコシステムにある
569デフォルトの名無しさん
2018/07/23(月) 11:24:26.77ID:ZjQpUEmE オラクルかな
570デフォルトの名無しさん
2018/07/23(月) 18:43:51.10ID:dX14gRVE それをいっちゃあおしめえよ
571デフォルトの名無しさん
2018/07/23(月) 19:32:54.33ID:IsAC2rDC 変数宣言が冗長すぎ
Date date = new Date()
Date型って最初に宣言してんだからnewもDateで基本問題無いやろ
Date date = new Date()
Date型って最初に宣言してんだからnewもDateで基本問題無いやろ
572デフォルトの名無しさん
2018/07/23(月) 19:50:26.60ID:EvGqybr2573デフォルトの名無しさん
2018/07/23(月) 19:56:00.68ID:dX14gRVE 型推論してくれるKotlinはナイスだな
574デフォルトの名無しさん
2018/07/23(月) 20:09:10.55ID:stexMLiC 君らvar使ってないのか
575デフォルトの名無しさん
2018/07/23(月) 20:11:54.87ID:RCR4OhGD moduleが難しすぎて突破できないから
Java8で行くお!
Java8で行くお!
576デフォルトの名無しさん
2018/07/23(月) 20:14:19.78ID:cHxBvLXH そういや最近宣言と同時にnewってあんましてないな
577デフォルトの名無しさん
2018/07/23(月) 20:17:45.49ID:m6zef+c0 varはポリモーフィズムとは相容れないから。
578デフォルトの名無しさん
2018/07/23(月) 20:27:02.30ID:ddy5leO9579デフォルトの名無しさん
2018/07/23(月) 22:14:25.10ID:IsAC2rDC580デフォルトの名無しさん
2018/07/23(月) 22:16:05.03ID:IsAC2rDC 略するところを間違えた、まあ空気読んでくれ
581デフォルトの名無しさん
2018/07/24(火) 04:21:52.30ID:/tfIts3n Ky ky= new Ky();
582デフォルトの名無しさん
2018/07/24(火) 09:02:46.76ID:3bmjSXS4 Kotlin使えばよい
後から作った言語なのでそういう細かいことは解消されている
後から作った言語なのでそういう細かいことは解消されている
583デフォルトの名無しさん
2018/07/24(火) 09:06:29.72ID:WgNXUi2L >>579
とてつもなく浅い知識で批判とか恥ずかしくないの?
とてつもなく浅い知識で批判とか恥ずかしくないの?
584デフォルトの名無しさん
2018/07/24(火) 09:40:11.61ID:uOakFE5H そんなに浅くない
585デフォルトの名無しさん
2018/07/25(水) 07:32:49.10ID:BeP5/XfH >>582
ははーん、さてはおめー何もわかってねーな
ははーん、さてはおめー何もわかってねーな
586デフォルトの名無しさん
2018/07/25(水) 09:27:06.98ID:GNtg4sP8 >>585
というと?
というと?
587デフォルトの名無しさん
2018/07/25(水) 19:09:16.20ID:s14gtaOU 否定だけして根拠示さないのは例の人かな?
588デフォルトの名無しさん
2018/07/25(水) 20:01:38.85ID:ekeRKo17 「ははーん、さてはおめー何もわかってねーな」という台詞を言ってみたかっただけの人か?
589デフォルトの名無しさん
2018/07/25(水) 20:12:44.09ID:QfwTkRmU 下記ブログの例題がEclipseでもpaiza.ioでもコンパイルエラーになって色々試したのですが解決出来ないので原因と回避策を教えてください
Eclipseでのエラー: 型の不一致: Object から int には変換できません
paizaでのエラー: Object cannot be converted to int
https://nompor.com/2017/11/16/post-1118/
ブログのページ最後にある例題サンプルです
「Iteratorで全要素アクセス」
18行目
int data = it.next();//次の要素を取得します。
---
例題そのままをコピペしてもエラーになるので自力解決が出来なくて困っています
Eclipseでのエラー: 型の不一致: Object から int には変換できません
paizaでのエラー: Object cannot be converted to int
https://nompor.com/2017/11/16/post-1118/
ブログのページ最後にある例題サンプルです
「Iteratorで全要素アクセス」
18行目
int data = it.next();//次の要素を取得します。
---
例題そのままをコピペしてもエラーになるので自力解決が出来なくて困っています
590デフォルトの名無しさん
2018/07/25(水) 20:17:15.54ID:GZRArLRs591デフォルトの名無しさん
2018/07/25(水) 20:20:52.44ID:QfwTkRmU >>590
それはやったのですが、エラーになりましたね
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
integer を型に解決できません
それはやったのですが、エラーになりましたね
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
integer を型に解決できません
592デフォルトの名無しさん
2018/07/25(水) 20:27:16.64ID:QfwTkRmU 自己解決しました
エラーのpopアップに表示されていたキャストをすれば解決しました
もしかしたらブログを執筆していた頃には問題の無かった書き方が厳密になったとかなのでしょうか?
原因が例題書かれた方のミスなのか仕様変更なのか意味が分からないままエラーだけ出なくなった状況ですが次へ進みます。
ありがとうございました
18行目(変更前
int data = it.next();//次の要素を取得します。
18行目(変更後
int data = (int) it.next();//次の要素を取得します。
エラーのpopアップに表示されていたキャストをすれば解決しました
もしかしたらブログを執筆していた頃には問題の無かった書き方が厳密になったとかなのでしょうか?
原因が例題書かれた方のミスなのか仕様変更なのか意味が分からないままエラーだけ出なくなった状況ですが次へ進みます。
ありがとうございました
18行目(変更前
int data = it.next();//次の要素を取得します。
18行目(変更後
int data = (int) it.next();//次の要素を取得します。
593デフォルトの名無しさん
2018/07/25(水) 20:30:23.90ID:QfwTkRmU そもそもなのですがIteratorって使いますか?
他にも配列などの操作方法あるようですし
どうしてこんな面倒な書き方で参照したりするのか疑問です
他にも配列などの操作方法あるようですし
どうしてこんな面倒な書き方で参照したりするのか疑問です
595デフォルトの名無しさん
2018/07/25(水) 20:40:39.19ID:QfwTkRmU >>594
ありがとうございます
ありがとうございます
596デフォルトの名無しさん
2018/07/25(水) 20:51:02.31ID:ITmWCwNQ597デフォルトの名無しさん
2018/07/25(水) 20:54:37.41ID:GZRArLRs598デフォルトの名無しさん
2018/07/25(水) 21:27:25.94ID:GZRArLRs >>594
int data = (int)it.next();
int data = (Integer)it.next();
これどちらもオートボクシングが行われてますよ
プリミティブ型で格納されてるわけじゃないっすから
オートボクシング使わずに書くならこう!
int data = ((Integer)it.next()).intValue();
int data = (int)it.next();
int data = (Integer)it.next();
これどちらもオートボクシングが行われてますよ
プリミティブ型で格納されてるわけじゃないっすから
オートボクシング使わずに書くならこう!
int data = ((Integer)it.next()).intValue();
599デフォルトの名無しさん
2018/07/25(水) 21:49:55.62ID:QfwTkRmU600デフォルトの名無しさん
2018/07/25(水) 22:28:09.59ID:QfwTkRmU >>589
の原因と教えていただいたことを自分なりに調べた結果のまとめと確認です
(連投すみません
13行目(変更前
Iterator it = arr.iterator();
これがジェネリクス総称型として型を指定していないのでObject型となり次の
18行目(変更前
int data = it.next();//次の要素を取得します。
ここでInt型にObject型を代入しようとして型不一致で代入できないとのエラーが出ていた
解決策としては
13行目(変更後
Iterator<Integer> it = arr.iterator();
明示的に<Integer>を宣言することで次の
18行目(変更前
int data = it.next();//次の要素を取得します。
ここで代入可能となったが
これはInt型とInteger型のオートボクシング機能が働いている
の原因と教えていただいたことを自分なりに調べた結果のまとめと確認です
(連投すみません
13行目(変更前
Iterator it = arr.iterator();
これがジェネリクス総称型として型を指定していないのでObject型となり次の
18行目(変更前
int data = it.next();//次の要素を取得します。
ここでInt型にObject型を代入しようとして型不一致で代入できないとのエラーが出ていた
解決策としては
13行目(変更後
Iterator<Integer> it = arr.iterator();
明示的に<Integer>を宣言することで次の
18行目(変更前
int data = it.next();//次の要素を取得します。
ここで代入可能となったが
これはInt型とInteger型のオートボクシング機能が働いている
601デフォルトの名無しさん
2018/07/25(水) 22:28:36.05ID:QfwTkRmU >>600
これで合ってますか?
最後の「これはInt型とInteger型のオートボクシング機能が働いている」のかちょっとまだ不安です
キャストはしてないけどオートボクシングが働いてたら意味がない?
このあたりがまだよく理解出来てないと思います
>>598 これをふまえると・・・
>>オートボクシング使わずに書くならこう!
>>int data = ((Integer)it.next()).intValue();
13行目(変更後
Iterator<Integer> it = arr.iterator();
18行目(変更後※
int data = it.next().intValue();//次の要素を取得します。
※ここまでやらないと意味が無いのでしょうか??
一応どちらも正常に結果出てますが内部的に違いがあるのか不安です?
これで合ってますか?
最後の「これはInt型とInteger型のオートボクシング機能が働いている」のかちょっとまだ不安です
キャストはしてないけどオートボクシングが働いてたら意味がない?
このあたりがまだよく理解出来てないと思います
>>598 これをふまえると・・・
>>オートボクシング使わずに書くならこう!
>>int data = ((Integer)it.next()).intValue();
13行目(変更後
Iterator<Integer> it = arr.iterator();
18行目(変更後※
int data = it.next().intValue();//次の要素を取得します。
※ここまでやらないと意味が無いのでしょうか??
一応どちらも正常に結果出てますが内部的に違いがあるのか不安です?
602デフォルトの名無しさん
2018/07/25(水) 22:37:49.97ID:GZRArLRs >>601
オートボクシングはプリミティブ型とラッパークラスの変換を
自動で行う仕組みのことで
毎回、↓こう書くの面倒だよね
int data = it.next().intValue();
じゃあ↓こう書けるようにしよう
int data = it.next();
ということで導入されたものだから積極的に使ったら良いよ
オートボクシングはプリミティブ型とラッパークラスの変換を
自動で行う仕組みのことで
毎回、↓こう書くの面倒だよね
int data = it.next().intValue();
じゃあ↓こう書けるようにしよう
int data = it.next();
ということで導入されたものだから積極的に使ったら良いよ
603デフォルトの名無しさん
2018/07/25(水) 22:44:09.05ID:QfwTkRmU >>602
Iterator<Integer> it = arr.iterator();
int data = it.next();
オートボクシングは便利機能なので使ってOKで
.intValue();が自動的に省略されてるだけで結果は同じ
これで解決ってことですね!納得しました!
ありがとうございました
Iterator<Integer> it = arr.iterator();
int data = it.next();
オートボクシングは便利機能なので使ってOKで
.intValue();が自動的に省略されてるだけで結果は同じ
これで解決ってことですね!納得しました!
ありがとうございました
604デフォルトの名無しさん
2018/07/25(水) 22:44:22.96ID:+qk7Pgth だね
Integerからintへの変換ではインスタンス生成されないし
intからIntegerへの変換でも数字が小さければインスタンスは生成されない
インスタンス生成を抑えるために小さな数字はあらかじめIntegerオブジェクトが作られていて使い回されるようになっているから
値オブジェクトみたいな感じ
コスト気にするよりオートボクシングを積極的に使って可読性の高いコードを書こう
Integerからintへの変換ではインスタンス生成されないし
intからIntegerへの変換でも数字が小さければインスタンスは生成されない
インスタンス生成を抑えるために小さな数字はあらかじめIntegerオブジェクトが作られていて使い回されるようになっているから
値オブジェクトみたいな感じ
コスト気にするよりオートボクシングを積極的に使って可読性の高いコードを書こう
605デフォルトの名無しさん
2018/07/25(水) 22:46:30.24ID:GZRArLRs >>600
ジェネリクスで型を指定すれば、型が間違ってたときにコンパイルエラーに
なってすぐに気づくことができるのだけれども
ジェネリクスで型を指定しないと、型が間違っててもエラーにならないのよ
実行してデータが処理されないとコードが間違ってるかわからぬのよね
エラーが起きないデータもあったりするとデバッグが超大変
ジェネリクスが使えるときは型を指定して使ったが良いよ
ジェネリクスで型を指定すれば、型が間違ってたときにコンパイルエラーに
なってすぐに気づくことができるのだけれども
ジェネリクスで型を指定しないと、型が間違っててもエラーにならないのよ
実行してデータが処理されないとコードが間違ってるかわからぬのよね
エラーが起きないデータもあったりするとデバッグが超大変
ジェネリクスが使えるときは型を指定して使ったが良いよ
606デフォルトの名無しさん
2018/07/25(水) 22:56:34.68ID:QfwTkRmU >>604-605
>>コスト気にするよりオートボクシングを積極的に使って可読性の高いコードを書こう
>>ジェネリクスが使えるときは型を指定して使ったが良いよ
質問で丁寧に回答していただきさらにアドバイスまでいただき感謝です!
勉強になりますありがとうございます!
>>コスト気にするよりオートボクシングを積極的に使って可読性の高いコードを書こう
>>ジェネリクスが使えるときは型を指定して使ったが良いよ
質問で丁寧に回答していただきさらにアドバイスまでいただき感謝です!
勉強になりますありがとうございます!
607デフォルトの名無しさん
2018/07/26(木) 00:12:38.71ID:5ROtQy7H >>589
それ原因が分かったぞ。(勘のいい奴なら既にわかっていると思うが)。
そのブログのページのソースのこう表示されてる個所あるだろ。
Iterator it = arr.iterator();
この部分の HTML のソースを見てみたらこうなってた。
Iterator<Integer> it = arr.iterator();
しかしこの通りに表示させたいなら HTML 文書の中ではこう書かねばならない。
Iterator<Integer> it = arr.iterator();
他の同じような記述の個所はこういう変換をやっているのにこの部分だけ忘れており
<Integer> 部分がブラウザによって HTML のタグと解釈されて丸ごと表示されない
状態になっていた、ということ。
それ原因が分かったぞ。(勘のいい奴なら既にわかっていると思うが)。
そのブログのページのソースのこう表示されてる個所あるだろ。
Iterator it = arr.iterator();
この部分の HTML のソースを見てみたらこうなってた。
Iterator<Integer> it = arr.iterator();
しかしこの通りに表示させたいなら HTML 文書の中ではこう書かねばならない。
Iterator<Integer> it = arr.iterator();
他の同じような記述の個所はこういう変換をやっているのにこの部分だけ忘れており
<Integer> 部分がブラウザによって HTML のタグと解釈されて丸ごと表示されない
状態になっていた、ということ。
608デフォルトの名無しさん
2018/07/26(木) 00:23:57.38ID:Hk2Eswys 草
609デフォルトの名無しさん
2018/07/26(木) 01:12:56.68ID:3Q0DG2FF >>607
よく見つけられましたね凄いです!
どなたかがブログへご指摘されてくださったようで確認しようと再度HP確認したら既に修正されていました!
あまりの速さに2度驚きました
この質問スレにもブログにも勉強するのにとても助かっています
いつもありがとうございます
よく見つけられましたね凄いです!
どなたかがブログへご指摘されてくださったようで確認しようと再度HP確認したら既に修正されていました!
あまりの速さに2度驚きました
この質問スレにもブログにも勉強するのにとても助かっています
いつもありがとうございます
610デフォルトの名無しさん
2018/07/26(木) 09:12:21.23ID:1RynmuAu >>607
草
草
611デフォルトの名無しさん
2018/07/26(木) 13:20:41.96ID:EM3EzxKL ./__.))ノヽ
.|ミ.l _ ._ i.) わしが指摘した
(^'ミ/.´・ .〈・ リ
.しi r、_) | ______
| `ニニ' / | | \__\___
___.ノ `ー―i´ | | |= |iiiiiiiiiii|
/⌒ヽ \____/\ | | | =. | !!!!!!!|
| ヽ____| \__. __ | | |三 |_「r.、
| // // ̄.\ //⊃ヾ) |__|_/( ) ̄ ))
ヽ ______//r_/| |.||⌒ヽ〜〔 ̄ ̄! ̄ ̄ ̄/ ̄ ̄\((
.|ミ.l _ ._ i.) わしが指摘した
(^'ミ/.´・ .〈・ リ
.しi r、_) | ______
| `ニニ' / | | \__\___
___.ノ `ー―i´ | | |= |iiiiiiiiiii|
/⌒ヽ \____/\ | | | =. | !!!!!!!|
| ヽ____| \__. __ | | |三 |_「r.、
| // // ̄.\ //⊃ヾ) |__|_/( ) ̄ ))
ヽ ______//r_/| |.||⌒ヽ〜〔 ̄ ̄! ̄ ̄ ̄/ ̄ ̄\((
612デフォルトの名無しさん
2018/07/26(木) 20:19:44.88ID:l6j0Y1pF 定義されてるディレクトリ配下のログが誰かに開かれてたら何もしないって処理作りたいんですけど、ファイルが誰かから開かれてるかを調べる方法ありますか?
613デフォルトの名無しさん
2018/07/26(木) 20:22:42.75ID:l6j0Y1pF 古くなったログの削除の為に使用するためです
614デフォルトの名無しさん
2018/07/26(木) 20:39:32.04ID:9i/IJhFr 自分でそのファイルを読み取り排他で開いてみるしかない
失敗したら他のプロセスがオープンしているということ
排他(副作用)なしでファイルのロック状態を知る方法はない
失敗したら他のプロセスがオープンしているということ
排他(副作用)なしでファイルのロック状態を知る方法はない
615デフォルトの名無しさん
2018/07/26(木) 21:15:30.96ID:l6j0Y1pF616デフォルトの名無しさん
2018/07/26(木) 21:33:54.42ID:ekiha7MK うーんどうなんだろう、設計
617デフォルトの名無しさん
2018/07/27(金) 02:20:59.11ID:O4NPrPXG >>612
Linux の場合は fuser コマンドを使うと指定のファイルをオープンしているプログラムのプロセスIDが分かる。
何も出力がなければ開いているプロセスはない。
他のUNIX系OSにもこのコマンドはあるかも知れない。Windows の WSL にはこのコマンドはあった。
その他のOSではどうやるか知らないが、もし fuser コマンドがあるのならそれを使えば同じようにできるんじゃないかと思う。
Windows の場合は他のプロセスが開いている最中にリネームしようとするとエラーになるそうなのでこれを利用するという手があるようだ。
但し同じ方法はOSが違ったら使えない(例えばLinuxやUNIX系OSでは使えない。WSLはわからない)。
https://code.i-harness.com/ja/q/153800
Linux の場合は fuser コマンドを使うと指定のファイルをオープンしているプログラムのプロセスIDが分かる。
何も出力がなければ開いているプロセスはない。
他のUNIX系OSにもこのコマンドはあるかも知れない。Windows の WSL にはこのコマンドはあった。
その他のOSではどうやるか知らないが、もし fuser コマンドがあるのならそれを使えば同じようにできるんじゃないかと思う。
Windows の場合は他のプロセスが開いている最中にリネームしようとするとエラーになるそうなのでこれを利用するという手があるようだ。
但し同じ方法はOSが違ったら使えない(例えばLinuxやUNIX系OSでは使えない。WSLはわからない)。
https://code.i-harness.com/ja/q/153800
618デフォルトの名無しさん
2018/07/27(金) 06:07:34.18ID:br8yoTOu paiza.ioってローカルPCのファイルやフォルダ操作するコードは実行出来ないですか?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★4 [七波羅探題★]
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 [蚤の市★]
- 【広島】「万引きした人を追跡」コンビニ店員の男性(46)を果物ナイフで刺したか 中国籍の少年(17)を殺人未遂容疑で現行犯逮捕 [ぐれ★]
- 【地震】青森県で震度6強 長周期地震動も 津波注意報すべて解除 ★7 [ぐれ★] [ぐれ★]
- 【サッカー】58歳カズ「オファーが来ている」 J3福島と近日中にも交渉 早ければ年内にも決断 [征夷大将軍★]
- 【速報】気象庁は津波注意報すべて解除 [蚤の市★]
- 【実況】博衣こよりのえちえち朝こよ🧪
- ヨッシー、ヘイホー、テレサ ←こいつらwwwwwwwww
- 【悲報】高市早苗の擬人化がXで大バズりwwwwwwwwwwww [455031798]
- さかまた「過呼吸になった」かなた「耳聞こえない」ござる「声出ない」まつり「ご飯食べれない」
- くそしてかがやけ
- 一人暮らしだからケツ出してみてるけど
