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

■ このスレッドは過去ログ倉庫に格納されています
2018/06/07(木) 20:17:08.87ID:N8MsK2gr0
Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.7
http://mevius.5ch.net/test/read.cgi/tech/1515549964/
VIPQ2_EXTDAT: checked:vvvvvv:1000:512:----: EXT was configured
2018/12/05(水) 15:53:00.93ID:1UnNMx3Qa
>>768
何度もありがとうございます
混乱させるのも嫌なので普通の書き方に準拠します
Javaは慣れてないので勉強します
770デフォルトの名無しさん (アウアウカー Sacf-zlOQ [182.251.134.89])
垢版 |
2018/12/05(水) 16:52:13.39ID:ifntcr/4a
>>767
LinkedListってArrayListやListと用途が違う気が。。。
素直に?オーバーロードで良いんじゃ無いか?
多態性はジェネリックだけにあらずよ?
(と言うか、Java初期にはジェネリック無かったし)
2018/12/05(水) 18:38:20.62ID:1UnNMx3Qa
>>770
Listの汎用関数とか、Mapの汎用関数を作ってたら思った次第です
Mapなら、HashMapはHashMap、EnumMapはEnumMapで返したいなとかです
素直にオーバーロードしますね
ありがとうございました
772デフォルトの名無しさん (アウアウウー Saa3-2q9Y [106.132.134.92])
垢版 |
2018/12/05(水) 20:40:25.38ID:tLhebNm/a
それって呼び出す側にnewさせて引数で受け取れば良いだけでは?
自分でnewしてリターン値にしないなら関係なくなるよね。
773デフォルトの名無しさん (ワッチョイ 8f26-n9Ol [180.221.240.118])
垢版 |
2018/12/06(木) 10:12:58.64ID:Wmyc4Uu/0
素朴な疑問なのですが
Javaプログラマーってみんなオブジェクト指向やデザインパターンやイベントリスナーのしくみなんかを完璧に理解して使いこなせているんですか?
別に自慢じゃないけどオレは理系で高学歴ですが
こんな難解複雑なものをみんなたやすく理解できるものじゃないと思うのですが。
高校の数学物理化学をレベルの高い大学に受かるくらいの頭がないと無理と感じます。
2018/12/06(木) 11:07:38.61ID:nonVVsji0
デザインパターンは、オブジェクト同士の疎結合の歴史。
DI, Flux, Pub-Sub(発行・購読)とか

WEB+DB 106号に載ってる。
スマホアプリの設計。DI, MVVM, Flux
2018/12/06(木) 12:20:30.95ID:UmHyXr4oa
>>772
出来るだけ副作用のない関数にしたかったので、その手は見送りました
776デフォルトの名無しさん (アウアウウー Sadb-MnXc [106.132.124.116])
垢版 |
2018/12/06(木) 12:31:53.41ID:nzH90qpKa
>>773
容易くかどうかはわからんが、ずっとやってりゃ小学生でもわかるようになると思うけどな。
このスレにもいないか?小学生の頃からプログラミングたできたやつ。
777デフォルトの名無しさん (ワッチョイ 8f26-n9Ol [180.221.240.118])
垢版 |
2018/12/06(木) 17:43:06.98ID:Wmyc4Uu/0
>>774
>>776
なるほど。
まあワタシは頭がいいのですぐ理解して使いこなせそうですが。
ハッハッハ!

ところでスキルを身に着けたときやっぱり報酬は期待したいのですが
年収1000万以上、できるだけ高く、を目指すためには、どのようなことをすればいいですか?
これはヒューマンスキルも大きくかかってくると思いますが、具体的にどんなことをすれば高収入になりますか?
野球でも年俸はFAがからむと高収入になるし、それがないと成績がいいのに低収入の選手もいるし、
なにかコツを知ってるだけで同じスキルなのに収入は天と地ほどの大差になるというのが現状のような気がして。
2018/12/06(木) 17:50:43.36ID:siOfDNuRd
そういう事を聞かなくても行動できるのが、高収入な人だと思うけど。
2018/12/06(木) 17:55:06.03ID:jTeUvFfL0
グーの音もでねえw
780デフォルトの名無しさん (アウアウウー Sadb-MnXc [106.132.124.116])
垢版 |
2018/12/06(木) 18:08:44.44ID:nzH90qpKa
グー
2018/12/06(木) 19:12:26.31ID:Cn1g7mwL0
>>773
ちゃんと理解出来ている人は極少数だと思う
でも理解出来てなくてもある程度実装は出来てしまうしプログラマにも成れてしまうからどヤバいコードが生成されてしまったりするわけで
782デフォルトの名無しさん (ワッチョイ 8f26-n9Ol [180.221.240.118])
垢版 |
2018/12/06(木) 19:33:36.24ID:Wmyc4Uu/0
>>781
なるほどそうなのですね。納得。
オレはわりと進学校出身だけど、まわりはみんな数学物理化学で苦労しててオレだけできたから
プログラマの仕事でもそう簡単にオブジェクト指向/デザインパターン/イベントリスナーを理解できる人はいない気はしていました。

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

オレみたいな人がやっぱりプログラミングに向いてるよね?w
高校レベルの数学物理化学で苦労するようじゃプログラミングも高度なことは絶対できなそうだし。
2018/12/06(木) 19:37:14.79ID:vPx9vAPGa
>>782
傲慢であることはいわゆるプログラマーの三大美徳の1つなので安心して励んでください
784デフォルトの名無しさん (アウアウウー Sadb-MnXc [106.132.124.116])
垢版 |
2018/12/06(木) 19:44:56.31ID:nzH90qpKa
いや、使われる能力がちょっと違うと思うぞ。
数学や物理が絡まなくはないし絡められるわけだが、かといってそんなもんほとんど知らないままプログラミングできるようになるやつは居るだろうしな。
2018/12/06(木) 20:46:52.33ID:Cn1g7mwL0
>>782
数物化が出来る→プログラミングが出来る
は一般に成り立たないかな
情報系でそれなりに良い成績を獲ってるけど実技系の科目の成績は低いみたいな人は結構いたりするし情報系であってもちゃんと理解出来てる人はそんなに多くない
まぁ相関が全く無いとは思わないけどね
2018/12/07(金) 07:06:25.60ID:OaIqSJqTa
>>785
そこらへんは知識そのものというより、求められる思考方法が近しいってのはある。
だから数学が出来ればプログラミングが出来るっていうより、数学の得意なタイプのやつはプログラミングも得意であることが多い、とかそういう感じだと思う
2018/12/11(火) 03:28:29.21ID:BPBNTIF+0
Windows10のJava1.8以上のバージョンのSwingでの日本語入力する時、
編集中の行が画面の一番下の方の時に変換すると、日本語変換候補Windowが編集中の行と重なって、編集中の文字列を隠してしまうバグのようなものが
自分の環境ではおきるのですが、他の人はどうですか?

Swingのテキストコンポーネントでおきます。
788デフォルトの名無しさん (ワッチョイ 4eb6-u1j+ [111.90.13.55])
垢版 |
2018/12/11(火) 06:12:00.67ID:ms9OZaRY0
V2Cでもそうなる
2018/12/11(火) 13:05:28.74ID:BPBNTIF+0
>>788
ありがとう。
これだけ普通の条件で簡単に起きるのに、ずっとバグが直らないのはSwingで日本語入力なんてほとんど使われてないからなんだろうな。
Intellijとか使われてるけど、プログラム用のエディタだから日本語はほとんど入力されないのかな。


バグレポートかなんかしたいと思ったけど、ます英語を勉強しなきゃいけないし。
2018/12/11(火) 13:10:54.23ID:BPBNTIF+0
編集中の行の下に候補ウィンドウを表示する時はうまくいくんだけど、
編集中の上に候補ウィンドウを表示する時(つまり編集中の行が画面の下の方の時)、重なってしまう。
IMEのAPIのバグらしく、Swing使ってる限り独自のテキストコンポーネントを作っても直らない。
2018/12/14(金) 00:47:28.49ID:+doa0nVt0
3つ組の値を返したいときってそれ用のクラス作った方がいいの?
それとも汎用的なタプル的なの作ってそっちに詰め込んだ方がいい?
クラスにしたとして、他の箇所で使うかは微妙なところ
もしかしたらもう一回くらい使うかもってくらい
792デフォルトの名無しさん (アウアウウー Sacd-mTCp [106.132.132.34])
垢版 |
2018/12/14(金) 09:55:52.99ID:cCP3RgWTa
>>791
配列やリスト等に突っ込んで返す方法もあるが、本当にそれで問題ないかはよく考えた方が良いと思う。
2018/12/14(金) 17:58:19.96ID:mN1ioE7i0
>>791
Hashmapに突っ込むとかもある。
俺なら絶対にクラスを作るけど。
2018/12/14(金) 18:57:38.32ID:yKLaTwQg0
Ruby なら、メソッドの委譲機能を定義する、forwardable, delegate

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

クラス内に、汎用的なコンテナを作って、
push, pop など、同じメソッド名で、処理を内部コンテナに丸投げする
795デフォルトの名無しさん (ワッチョイ 8526-q1e7 [180.221.240.118])
垢版 |
2018/12/20(木) 10:29:23.88ID:uzBoRH9c0
VBAは経験豊富だけどJavaは初めてです。
もちろんいっぱい勉強しました。
転職アピールで取ったほうがいい資格はなにがありますでしょうか?
Java経験ないので面接の質疑応答と資格アピールでがんばろうと思うのですが。

資格受験はすぐに取り掛かる予定です。今月にでも!
2018/12/20(木) 11:33:53.15ID:hE8cxs9Xa
earとかwarがいまいちわからないです
開発時にファイルAでファイルB(別パッケージ)をimportして使っていて、eclipse上ではコンパイルも通っていました
でもデプロイ段階になってから、先輩にこの2つのパッケージは別々のwar?になるからimportできないよと言われました

自分の感覚だとそもそもそれでコンパイルが通るようになってるのがおかしい気がするのですが、Javaの世界だとそれが普通なんですか?
797デフォルトの名無しさん (ワッチョイ 8526-q1e7 [180.221.240.118])
垢版 |
2018/12/20(木) 12:23:41.18ID:uzBoRH9c0
earは耳、warは戦争です。
発音の注意としては、warは「ウォー」であって「ウァー」ではありません。
ここを押さえておけば大丈夫。
798デフォルトの名無しさん (ワッチョイ de9f-12mQ [175.134.57.7])
垢版 |
2018/12/20(木) 22:34:23.24ID:6pIAvd2J0
うぁー
799デフォルトの名無しさん (ワッチョイ d99b-1vVt [122.135.201.206])
垢版 |
2018/12/20(木) 22:40:41.67ID:9plr5EIz0
>>796
それはear、war云々の話ではなく
開発段階とデプロイ段階で違うことをやってるのがおかしいという話では?
2018/12/20(木) 22:44:39.27ID:JiVjjaVo0
>>799
あ、それです
ただJava界隈だとそれが普通なのかなと思いまして
2018/12/20(木) 23:04:28.20ID:IcrQnoua0
ear, war, tar など、ar とついているものは、zip などの圧縮 archive だろ。
サーバーにデプロイするために、1つにまとめる

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

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

「java ear war」で検索!
2018/12/20(木) 23:44:55.08ID:uRkd43kpd
>>801
tarは非圧縮では?
2018/12/22(土) 02:51:17.48ID:Mf8aObFB0
本来アーカイブと圧縮は別だからな
804デフォルトの名無しさん (アウアウウー Sa01-0FqV [106.132.121.185])
垢版 |
2018/12/23(日) 17:21:45.07ID:yY9Kiav4a
tarは頭からファイル名、内容の順で入ってるだけだからいまいち使い辛いな。
ファイル名出したいだけでも途中に大きいファイルがあると待たされる。
テープ装置用のコマンドを無理矢理使い回してるのがいかんよな。
せめてファイル名だけ並べたヘッダだけでも別に用意すればいいのに。
2018/12/23(日) 19:04:58.22ID:TNYL2NhX0
>>804
テープ用のコマンドを無理矢理使いまわしてるんじゃなくて、今でもテープに書いたりもするぞ。-Mでマルチボリュームにして、-Lでサイズ指定したらテープ交換メッセージ出る。
そうしとかないとボリュームまたぎのファイル探しづらいし、そういうもんじゃねえかなぁ。
ディスクに落とすとしても、ボリューム切り替わるたびに最初のディスク入れさせるとか狂気の沙汰な気がする。
806デフォルトの名無しさん (アウアウウー Sa01-q1e7 [106.132.136.163])
垢版 |
2018/12/25(火) 17:56:14.99ID:Waofyifpa
まあ今でもテープ装置があれば使うのはわかる。
しかしテープではなく普通のファイルに書くならもう一ひねり欲しいところ。
2019/01/01(火) 16:14:58.54ID:rBFfBn4R0
silver黒本で勉強してて、例外終わらせたと思ったら最終章でラムダ式とかいう完全に新しいやつでてきてわろた
仕様が覚えられん
2019/01/01(火) 16:40:11.15ID:uncIR6SLM
ラムダなんか平均的なJava土方現場ならもれなく使用禁止だから安心していい
その証拠にこのスレでも滅多に出てこないだろ?
2019/01/01(火) 16:44:18.00ID:qkJ7OcChd
そうなのか、まあ試験用で一通り覚えないといけないけど
考え方とか他の言語やるときに役立つかな
2019/01/01(火) 17:32:31.57ID:+TypiBw50
Javaのラムダはコンビネータを記述できますか?出来ないのなら不要(ラムダの意味がない)と思います
2019/01/01(火) 18:42:27.39ID:d0qESFYs0
ラムダっていうか関数型の概念をJavaを通じて学ぶのは無謀だから試験用に割り切るしかない
812デフォルトの名無しさん (ワッチョイ bb01-y/tf [111.90.26.36])
垢版 |
2019/01/01(火) 22:01:03.29ID:dc6+vvYb0
>>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でぱふぱふ", おっぱい);
 }
}
813デフォルトの名無しさん (ワッチョイ bb01-y/tf [111.90.26.36])
垢版 |
2019/01/01(火) 22:01:24.13ID:dc6+vvYb0
これがFactoryパターン
2019/01/01(火) 22:22:19.85ID:+TypiBw50
>>812-813
は?
それのどこがコンビネータですか?
815デフォルトの名無しさん (ワッチョイ bb01-y/tf [111.90.26.36])
垢版 |
2019/01/01(火) 22:32:19.26ID:dc6+vvYb0
>>814
コンビネータとは関係なくラムダ式は便利だよ
コンビネータ仕事で使うことないやろ
それを言うとんねん
816デフォルトの名無しさん (ワッチョイ bb01-y/tf [111.90.26.36])
垢版 |
2019/01/01(火) 22:32:48.32ID:dc6+vvYb0
アホがなあにがコンビネータだバカが
2019/01/02(水) 03:25:42.83ID:U9fPlruq0
>>815
コンビネータを記述できるからλ式に存在意義があるのであって、コンビネータを記述できないλ式なんて「λ式」と名乗る資格がない文法的屑仕様にしか見えないのですけれども
818デフォルトの名無しさん (ワッチョイ 0d2e-y/tf [118.86.128.243])
垢版 |
2019/01/02(水) 13:27:44.18ID:iJhnqyOR0
>>817
コンビネータ記述できなかったの?

それはそれとしてJavaのラムダ式はコンビネータとは関係なく
匿名クラスを書かなくてすむから便利だと思うよ
Streamとかで使ったら便利だよ
819デフォルトの名無しさん (ワッチョイ 0d2e-y/tf [118.86.128.243])
垢版 |
2019/01/02(水) 13:29:49.59ID:iJhnqyOR0
導入した意図も知ろうとしないで
屑仕様と言う人にJavaを語る資格があるとは思えない
普段Java使ってるの?
820デフォルトの名無しさん (ワッチョイ bb02-AbSj [175.134.57.7])
垢版 |
2019/01/02(水) 14:33:45.83ID:MMKJrJD00
Kotlinもよろしく
2019/01/02(水) 16:35:18.40ID:U9fPlruq0
>>818-819
無名クラスとラムダ式の差異なんて知れており、やれといわれたらチャッチャッと「無名クラス->ラムダ式」「ラムダ式->無名クラス」の両方やれますね…
普段は C++ 使いですが、C++方面での認識は「ラムダ式は糖衣構文」

私の認識は「Java や C++ の「自称」ラムダ式は、所詮自称でしかなくコンビネータを記述できない」
「コンビネータを記述できないものをラムダ式と呼ぶことはできない」
2019/01/02(水) 16:47:38.66ID:ckX+EqcM0
いまどきHaskellerでも言わないような理論振りかざす原理主義者なんかNGしとけよ
823デフォルトの名無しさん (ワッチョイ 0d2e-y/tf [118.86.128.243])
垢版 |
2019/01/02(水) 17:02:15.83ID:iJhnqyOR0
>>821
やれるやれないじゃなくて
ラムダ式を使ったら簡単に書けるでしょう
だから便利でしょうという論理ですよ

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

ところでJavaのラムダ式でコンビネータ記述できなかったの?
ググったらyコンビネータとかzコンビネータとかパーサコンビネータとかあったけど
それは自分の定義ではコンビネータと呼ぶことはできないとか?
824デフォルトの名無しさん (ワッチョイ 0d2e-y/tf [118.86.128.243])
垢版 |
2019/01/02(水) 17:05:38.37ID:iJhnqyOR0
>>822
コンビネータが必要になったことがないから
大事なんだと言われてもよくわからんのよね
コンビネータの概念を知らなくてもJavaのラムダ式は便利だと思うんよ
2019/01/02(水) 18:05:41.80ID:U9fPlruq0
>>823
>ググったらyコンビネータとかzコンビネータとかパーサコンビネータとかあったけど
それは javascprit じゃない?js なら書けると思いますよ、ちょっと url を教えてください。

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

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

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

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

Java は発表当初から言葉遣いがおかしいところがあり、たとえば「参照(reference)」などは他言語とは完全に意味が違いますね
826デフォルトの名無しさん (ワッチョイ 0d2e-y/tf [118.86.128.243])
垢版 |
2019/01/02(水) 18:27:16.02ID:iJhnqyOR0
>>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の話は具体的にどの言語の概念と完全に違うと言ってるのかしら
文脈が変われば概念が変わるのは当然と思うよ

スペリングが同じだからといって概念が同じとは限らない
言語が変わるならなおさら
2019/01/02(水) 19:48:36.75ID:U9fPlruq0
>>826
まず「パーサコンビネータ」の「コンビネータ」は不動点コンビネータとはなんの関係もありません
大雑把にググッた結果だけみせて、その中身を精査していないのは、新しい概念に対するキャパシティー、あるいは概念把握力に問題があるのではないですか?

Java では yコンビネータは無理でも、zコンビネータという不動点コンビネータは記述できるようですね…これは追体験しているところです、情報を提供いただきありがとうございます。

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

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

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

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

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

C++ の reference と Java の reference は、それぞれの概念が近接することもあり、非常に紛らわしいです
これは Java が出たときにすぐに問題になっていた記憶があります。
2019/01/02(水) 20:00:23.62ID:wUoDMH3da
なんでみんな荒らしコテハンにいちいち構ってんの
三が日の暇つぶしか
2019/01/02(水) 20:02:31.83ID:U9fPlruq0
>>828
私のどこが荒らしと感じたのですか?具体的に記述できるのですか?
830デフォルトの名無しさん (ワッチョイ 0d2e-y/tf [118.86.128.243])
垢版 |
2019/01/02(水) 20:14:19.54ID:iJhnqyOR0
>>827
パーサコンビネータと君のコンビネータについては
どっちでも良いと思って

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

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

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

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

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

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

俺は嫌だなあそういうの官僚的でめんどくさいだけ賛同できないわ
2019/01/02(水) 20:26:05.19ID:wUoDMH3da
>>829
「Javaのラムダ式でコンビネータ書けますか?書けなかったら不要ですよね?」

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

「コンビネータが書けなきゃラムダ式と呼んではいけない!それに従うのは権威主義で〜」
ここら辺から質問関係なくなってる
単語の選出基準の話ならJavaの開発チームにでも聞かないとここで解決できるはずもない
同一スペリングで意味が異なる単語の話まで抽象化するともっともっとJava関係ない
そしておそらく本人もそんなことわかってるのに言い続けてるあたりが荒らし
2019/01/02(水) 20:36:27.11ID:U9fPlruq0
>>830
一連のやりとりは Java のスレで、Java とは異なる世界からやってきた「ラムダ式」「不動点コンビネータ」をぶつけてみて(化学)反応を楽しむ、という私の悪癖が出てしまいました、あまり気にしないでください
ごめんなさい

そして z コンビネータの存在を知らしていただいたことに感謝します
2019/01/02(水) 20:38:21.42ID:U9fPlruq0
>>831
>おそらく本人もそんなことわかってるのに言い続けてるあたりが荒らし

…お見通しですね
そのとおり、そういう意味なら私は荒らし、です…
834デフォルトの名無しさん (ワッチョイ 0d2e-y/tf [118.86.128.243])
垢版 |
2019/01/02(水) 20:44:00.26ID:iJhnqyOR0
>>832
良いってことよ
それよりもC++のreferenceとJavaのreferenceはどう違うの?
835デフォルトの名無しさん (ワッチョイ 0d2e-y/tf [118.86.128.243])
垢版 |
2019/01/02(水) 21:12:34.14ID:iJhnqyOR0
Javaのドキュメントには
・reference type
・reference value
が書かれてる

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

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

ゆえにJavaのreferenceは、クラスインスタンスへのポインタ、または、配列へのポインタのこと
2019/01/02(水) 21:58:39.12ID:U9fPlruq0
>>835
お許しが出たようなので続けます。

ざっと http://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 として宣言できる。

という感じですか…
837デフォルトの名無しさん (ワッチョイ 0d2e-y/tf [118.86.128.243])
垢版 |
2019/01/02(水) 22:37:44.34ID:iJhnqyOR0
>>836
よくわかんなかったからググったけど

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

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

こういう使い方するんでしょ
838デフォルトの名無しさん (アウアウウー Sa2b-s2yi [106.180.11.109])
垢版 |
2019/01/13(日) 14:57:02.91ID:jed35pcVa
ttps://pastebin.com/6EefhNbW
クリックしたさいに3行目のメッセージが出ません。
count()のmsgIndex++とmouseClickedのmsgIndex++が原因と思われるのですが、
解決方法が思いつきません。
構造自体を変更したほうがいいのでしょうか?
839デフォルトの名無しさん (ワッチョイ e72e-ZXJ2 [118.86.136.168])
垢版 |
2019/01/13(日) 15:26:22.32ID:GXHGuQEW0
>>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++;
 }
}
840デフォルトの名無しさん (アウアウウー Sa2b-s2yi [106.180.10.158])
垢版 |
2019/01/13(日) 19:40:10.92ID:AcEsFCPQa
>>839

ありがとうございます。
インクリメント変更での解決納得いたしました。
2019/01/19(土) 10:07:33.04ID:fM0+TDNA0
ubuntu18.04をインストールしてJava 1.8にしてintellijインストールしたんだけど
intellijを含めたSwingの日本語入力のIMEの変換候補Windowが、編集中の行の近くじゃなくて
画面左下の方に表示されるんだけど、他の人もそうなりますか?
Ubuntuの設定がたりないとかあるのでしょうか?
2019/01/19(土) 15:15:17.32ID:B9Pk/I2L0
たぶんSwing(が使ってるAWT)が位置情報渡せてないから設定とか弄ってもムダかと。

FreeBSDのJava移植の時に位置情報渡すと変換候補ウィンドウがあっちっこっち飛ぶ(?)ので
諦めて位置情報渡さないようにした(結果デフォルト位置であるウィンドウ左下に
変換候補ウィンドウが表示されるようになった)とかって話を読んだ記憶がある。
Linux版もその辺の処理をきちんと書ける人いなかったんじゃねーかと。
843デフォルトの名無しさん (ワッチョイ 7b88-N251 [218.227.232.155])
垢版 |
2019/01/19(土) 17:39:35.80ID:pTjWjaAA0
下記で、本日の日付を表示できますが、
本日の一週間後を表示させるには、どこを+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>
844デフォルトの名無しさん (ワッチョイ ce01-nzxu [111.90.0.154])
垢版 |
2019/01/19(土) 18:15:50.72ID:cYz5ck7p0
>>843
var d = new Date();
d.setDate(d.getDate() + 7);
alert(`${d.getFullYear()}年${d.getMonth() + 1}月${d.getDate()}日`);
845デフォルトの名無しさん (ワッチョイ 7b88-N251 [218.227.232.155])
垢版 |
2019/01/19(土) 19:50:59.40ID:pTjWjaAA0
843です、ありがとうございます!
846デフォルトの名無しさん (ワッチョイ 7b88-N251 [218.227.232.155])
垢版 |
2019/01/19(土) 19:57:45.69ID:pTjWjaAA0
843です、度々すみません、上記をどこに挿入したらよろしいのでしょうか汗
2019/01/19(土) 21:13:15.35ID:1SvRh6zM0
>>846
ここはJavaスレであってJavaScriptスレじゃないぞ

もう関係ないけど反応を見た限り致命的なレベルで何も分かってないみたいだからちゃんと0からステップを踏んでくれ
2019/01/19(土) 21:17:23.40ID:wiNfQeeu0
ここは、Java のスレです!

君のは、JavaScript です!
web 制作管理板の、JavaScript のスレへ書き込んで!
2019/01/19(土) 23:30:03.52ID:fM0+TDNA0
>>842
詳しく、ありがとうございます。

Windowsで編集業が画面下の時不都合が起きるから
Linuxに移行を考えてたけど、より駄目なのか。
まあ、Java Swingでデスクトップアプリなんて作るもんじゃないのかな。
850デフォルトの名無しさん (ワッチョイ ce02-T05w [175.134.57.7])
垢版 |
2019/01/20(日) 18:36:43.33ID:VD9ut2bQ0
>>843-846
スレチだ。ここはJavaScriptのスレではなくJavaのスレだ。
851デフォルトの名無しさん (ワッチョイ ce02-T05w [175.134.57.7])
垢版 |
2019/01/20(日) 18:37:41.27ID:VD9ut2bQ0
あ、リロード忘れてた。すでに同じこと書かれてるではないかorz
2019/01/21(月) 05:40:03.31ID:jDpmEG8Wa
orz ←これ100年ぶりに見たw
2019/01/21(月) 08:23:09.39ID:CkGvEyfYM
長老かよ
854デフォルトの名無しさん (ブーイモ MMf3-z+ua [210.149.254.195])
垢版 |
2019/01/21(月) 09:52:33.61ID:YCjnB4PDM
>>853
ワラ
2019/01/21(月) 11:55:04.19ID:ubpSrO6va
タイムリーにギネス最高齢の男性用がなくなっとるな…
2019/01/21(月) 11:55:26.30ID:ubpSrO6va
男性用→男性
857デフォルトの名無しさん (ブーイモ MM42-z+ua [49.239.64.2])
垢版 |
2019/01/22(火) 21:48:34.77ID:8mJXdjenM
>>856
(核爆)
2019/01/23(水) 17:44:01.21ID:yPNynzM60
java初心者なんですが、javaのスピードってゲームに耐えられる程あるんですか

マインクラフトとか本当にjavaだけなら凄いなと
859デフォルトの名無しさん (アウアウウー Sa1b-4KIe [106.132.130.65])
垢版 |
2019/01/23(水) 18:56:46.12ID:gQZD+vR+a
>>858
どうだろう。VMやハードウェアしだいではあるが、Androidのスマホアプリは結構速いよね。
2019/01/23(水) 19:15:17.85ID:VcXIroIfM
openGLありなら
861デフォルトの名無しさん (ワッチョイ 3f01-qnWR [126.241.227.33])
垢版 |
2019/01/23(水) 19:39:02.88ID:GhD8NJBs0
JavaやJavascriptは結構早いですよ。
問題はリソースをアホほど使うことですね。
862デフォルトの名無しさん (ワッチョイ 3f01-qnWR [126.241.227.33])
垢版 |
2019/01/23(水) 19:40:27.88ID:GhD8NJBs0
Javaは元々ハードウェアを売るための言語ですから、リソースを大量に使うのは善なんですよ。
それだけ高いマシンを売れるんですから。
2019/01/23(水) 19:46:29.62ID:DtngHTsf0
>>858
MinecraftはLWJGLっていうライブラリを使っててLWJGLは中でOpenGL/AL/CLとかを叩いてるからJavaだけっていうと微妙な気がしなくもない

ちなみにJavaは起動が遅いのであって実行速度は別に遅くない
2019/01/23(水) 20:02:57.29ID:Hfh86APr0
ぶっちゃけ泥のゲームてほとんどUnity製なのでは…
2019/01/24(木) 01:02:43.09ID:QNhC8yZPa
ブ、ブートストラップは早いんだからね!遅いのは依存ライブラリが大きすぎるせいなんだから!
2019/01/24(木) 06:27:42.32ID:SamtYSKx0
>>858
速いよ。スマホゲーならサーバーサイドはJavaだったりする
2019/01/24(木) 08:41:37.60ID:AuVzjGCMa
Eclipseの設定でエラー情報を試しに全部オンにしたところ、文字列に対してNON-NLSというコメントをつけるよう言われました
あまり意味がわかってないのですが、これは文字列を記述する度につけた方がいいものですか?
868デフォルトの名無しさん (アウアウウー Sa0f-8BLF [106.132.135.198])
垢版 |
2019/01/24(木) 09:37:30.92ID:7Yhstfrna
>>866
そのスマホもAndroidなら普通はJavaだ。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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