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
2 名前:デフォルトの名無しさん mailto:sage [2018/06/07(木) 20:21:29.46 ID:4tykd4x10.net] Javaはもうオワコン
3 名前:デフォルトの名無しさん mailto:sage [2018/06/07(木) 22:06:40.07 ID:N8MsK2gr0.net] Oracleに買われた時点でね
4 名前:デフォルトの名無しさん [2018/06/08(金) 09:44:53.28 ID:1PlqYTvda.net] ここが待望のワッチョイスレか
5 名前:デフォルトの名無しさん [2018/06/08(金) 09:46:28.22 ID:1PlqYTvda.net] おお。IPアドレスも表示。 俺は今はスマホだから多分繋ぐたびに変わるけどな。
6 名前:デフォルトの名無しさん mailto:sage [2018/06/08(金) 10:42:48.48 ID:dJjT3Hn5a.net] IP変わったかテスト
7 名前:デフォルトの名無しさん mailto:sage [2018/06/08(金) 10:44:04.21 ID:dJjT3Hn5a.net] あ、テザリングで違う端末使ってるからワッチョイも変わったな。
8 名前:デフォルトの名無しさん mailto:sage [2018/06/08(金) 10:52:38.46 ID:7J3vOXKpM.net] テスト
9 名前:デフォルトの名無しさん mailto:sage [2018/06/08(金) 20:15:34.57 ID:AbIGmYxO0.net] てすと
10 名前:デフォルトの名無しさん [2018/06/08(金) 22:42:03.47 ID:OMx/tZhjp.net] いいですね
11 名前:デフォルトの名無しさん [2018/06/08(金) 23:56:54.65 ID:BdQZoOwp0.net] copiezzare.info/
12 名前:デフォルトの名無しさん [2018/06/12(火) 01:12:20.17 ID:huTBZyg/0.net] 分かる方説明お願いします。。。 <問>以下の実行結果になるように選択しから選びなさい。 【実行結果】 A B public class SuperClass{ public SuperClass(){ System.out.println("A"); } public SuperClass(String val){ System.out.println(String val); }} public class SubClass extends SuperClass{ public SubClass(){ //ここにコードを追加 } public SubClass(String val){ System.out.println(String val); } } public class Ma
13 名前:in(){ public static void main(String[] args){ new SubClass(); }} A: SubClass("B"); B: this("B"); C: super("B"); D: SuperClass("B") 正解:B ここで疑問なのですが、this("B")は自クラスだけのコンストラクトしか呼び出せない認識です。 親クラスのコンストラクタはどこで呼んでいるのでしょうか。 [] [ここ壊れてます]
14 名前:デフォルトの名無しさん mailto:sage [2018/06/12(火) 05:52:26.38 ID:ixitVWbc0.net] ググってみた。これとか。 ttps://qiita.com/katolisa/items/438a8d720ea5a60b55c4
15 名前:デフォルトの名無しさん [2018/06/12(火) 06:11:33.73 ID:AQnxwR2X0.net] >>12 https://docs.oracle.com/javase/specs/jls/se10/html/jls-8.html#jls-8.8.7 If a constructor body does not begin with an explicit constructor invocation and the constructor being declared is not part of the primordial class Object, then the constructor body implicitly begins with a superclass constructor invocation "super();", an invocation of the constructor of its direct superclass that takes no arguments. コンストラクタの呼び出しが明示されてなければ super()が暗黙的に呼ばれますよと public SubClass(String val) { // ここでsuper()が呼ばれる System.out.println(val); } Javaの資格試験の勉強してるなら紫本とか黒本とか 読んだ方がいんじゃないかな 毎回言語仕様調べるの大変でしょ コンストラクタについても丁寧に解説されてるよ
16 名前:デフォルトの名無しさん mailto:sage [2018/06/18(月) 07:10:35.79 ID:k3fj9Dk90.net] インスタンスなのか変数なのか教えてください Soket so=new Soket("so.jp",80); InputStream is=so,getInputStream(); int i=is.read(); isはgetInputStream()メソッドのストリュームを受ける変数ですか? それともNewはしてないけれど、インスタンスなのでしょうか? isは2行目では変数に思えますし、3行目はインスタンスに思えますし、どっちなのでしょうか?
17 名前:デフォルトの名無しさん [2018/06/18(月) 07:25:27.94 ID:e7+TZKMW0.net] >isはgetInputStream()メソッドのストリュームを受ける変数ですか? isはInputStream型の変数です >それともNewはしてないけれど、インスタンスなのでしょうか? InputStreamのインスタンスはisにセットされてます isは変数です
18 名前:デフォルトの名無しさん mailto:sage [2018/06/18(月) 07:36:49.66 ID:k3fj9Dk90.net] >>16 さっそくありがとうございます。 InputStream isでインプット型の変数になって ここでInputStreamのインスタンスがセットされて、 is.read()と記載してinputstreamクラスのread()メソッドが使えるということなのですね ありがとうございました!
19 名前:デフォルトの名無しさん mailto:sage [2018/06/18(月) 08:00:29.23 ID:k3fj9Dk90.net] クラス型変数を宣言すると、元クラスのstaticメソッドが使えるということなのでしょうか?
20 名前:デフォルトの名無しさん mailto:sage [2018/06/18(月) 09:44:07.35 ID:p1/T0zQW0.net] すみません、疑問が深まってしまいました 1 Soket so=new Soket("so.jp",80); 2 InputStream is=so.getInputStream(); 3 int i=is.read(); 1で、スタック領域に、インスタンスsoを表すヒープ領域の参照アドレスを格納し 2で、InputStream型の変数isに割り当てられたヒープ領域に、インスタンスsoのgetInputStream()メソッドの結果であるストリュームを格納し 3で、変数iのヒープ領域に、read()メソッドの結果を格納する(どうして変数isがread()を呼びさせるのか疑問でした) と考えていたのですが [InputStream is」の記載で、InputStreamのインスタンス変数isを生成したということでしょうか? newしなくてもインスタンスを生成してインスタンス変数に格納できるのでしょうか?
21 名前:デフォルトの名無しさん [2018/06/18(月) 14:51:42.26 ID:m8q+CXCOa.net] >>19 呼び出した先のどこかでnewしてる所があって、それが返されてるだけ。 それとstreamはストリームと読むのが元の発音に近いと思う。
22 名前:デフォルトの名無しさん mailto:sage [2018/06/18(月) 15:44:31.99 ID:p1/T0zQW0.net] >>20 ありがとうございました。 教えてくださったことを意識してコードを読み直してみます。 発音も指摘くださって感謝です。
23 名前:デフォルトの名無しさん mailto:sage [2018/06/18(月) 19:51:30.10 ID:NEyGx0zg0.net] >InputStream is=so.getInputStream(); so.getInputStream()の中で、 InputStream 型のインスタンスを、作って返しているのだろう そのメソッドの文書を見れば?
24 名前:デフォルトの名無しさん mailto:sage [2018/06/18(月) 21:13:05.16 ID:k3fj9Dk90.net] >>22 ありがとうございます。 インスタンスを戻り値にしてるか調べているのですが まだ解答が得られてません また調べてみます。ありがとうございます。
25 名前:デフォルトの名無しさん mailto:sage [2018/06/19(火) 02:08:24.67 ID:0nk/xPMo0.net] 「java socket getinputstream」で検索すれば? 文書に書いてある Socket クラス getInputStream() メソッド このソケットの入力ストリームを返します InputStream 戻り値の型
26 名前:デフォルトの名無しさん mailto:sage [2018/06/19(火) 07:47:36.02 ID:3OsqsN0x0.net] >>24 ありがとうございます。 疑問を持ってからリファレンスでgetInputStream()も何度か読んでみたのですが ストリームを返すということで、プリミティブ型の値を返すのかと考えていました。 ストリームはインスタンスではないとしますと、 >>19 の3行目で、is.read();とできるのは、他の場所でインスタンスが生成されているか InputStream型の宣言時に、isにセットされているか、どちらかということなのでしょうか?
27 名前:デフォルトの名無しさん mailto:sage [2018/06/19(火) 07:57:40.90 ID:3OsqsN0x0.net] >>22 >>24 InputStreamを返すということは、InputStreamインスタンスを戻り値としてるということで インスタンスを受けたInputStream型の変数isからInputStreamクラスのメソッドを呼び出せた、ということでしょうか? いろいろ教えてくださってありがとうございます。感謝しています。
28 名前:デフォルトの名無しさん [2018/06/19(火) 11:28:03.91 ID:2wtNhSg7a.net] >>25 APIドキュメントの java.net.Socket の getInputStream() メソッドでしょ? それならちゃんと InputStream が戻り値の型として書いてあるよ。
29 名前:デフォルトの名無しさん [2018/06/19(火) 12:16:37.29 ID:hvNPYZEt0.net] 質問を装った釣りなんじゃないの? かまって欲しいんだよ
30 名前:デフォルトの名無しさん mailto:sage [2018/06/19(火) 17:39:32.24 ID:0i3qw3JM0.net] Socket.class のここまではたどり着いたけど、ここで挫折。 https://docs.oracle.com/javase/jp/8/docs/api/java/security/AccessController.html public InputStream getInputStream() throws IOException { if (isClosed()) throw new SocketException("Socket is closed"); if (!isConnected()) throw new SocketException("Socket is not connected"); if (isInputShutdown()) throw new SocketException("Socket input is shutdown"); final Socket s = this; InputStream is = null; try { is = AccessController.doPrivileged( new PrivilegedExceptionAction<InputStream>() { public InputStream run() throws IOException { return impl.getInputStream(); } }); } catch (java.security.PrivilegedActionException e) { throw (IOException) e.getException(); } return is; }
31 名前:デフォルトの名無しさん mailto:sage [2018/06/19(火) 17:42:40.75 ID:6Uq4XWZz0.net] >>27 ちゃんと読めていなかったです、すみません。 ストリームというのはバイトや文字を一文字ずつ扱うということで プリミティブ値を返すものだと勘違いしていました。 次からはAPIドキュメントをしっかり読みます。ありがとうございました。
32 名前:デフォルトの名無しさん [2018/06/19(火) 17:44:46.66 ID:tOq/Fa4ea.net] >>29 ソース解析しなくてもとにかく InputStream のインスタンスを返すようになってる事はわかるよな。 てかそのメソッドはそれを返すか例外投げるかしかしない。
33 名前:デフォルトの名無しさん mailto:sage [2018/06/19(火) 23:33:46.40 ID:0nk/xPMo0.net] 「java socket getinputstream」で検索すると、 Socket クラスの、getInputStream() メソッドを発見する 戻り値の型が、InputStream
34 名前:だから、次に、InputStream の文章を読む プログラミングとは、こういうサイクルの繰り返し。 プログラムを書くと言うよりは、調べものに追われる、writer に近い [] [ここ壊れてます]
35 名前:デフォルトの名無しさん mailto:age [2018/06/20(水) 00:50:54.54 ID:gUX5UUiyM.net] 釣り質問に説教回答か 地獄のようなスレだな
36 名前:デフォルトの名無しさん mailto:sage [2018/06/20(水) 02:39:16.91 ID:yFV+32Cp0.net] Windows7環境です。 コマンドプロンプトでソースファイルをコンパイルしてクラスを実行しようとすると Error: opening registry key ‘Software\JavaSoft\Java Runtime Enviroment’ Error: could not find java.dll Error: Could not find Java SE Runtime Enviroment. と表示されてしまいます。 Windows\System32とWindows\SysWOW64にもjava.exe、java.javaw.exe、javaws.exeが無い状態です。 どのようにしたら実行できるようになりますでしょうか?
37 名前:デフォルトの名無しさん [2018/06/21(木) 09:21:12.68 ID:tJaRpIWva.net] >>34 コンパイルはできてるの?変だな。コンパイル時にも同じJavaVMが裏で動いていると思うんだが。
38 名前:デフォルトの名無しさん mailto:sage [2018/06/21(木) 12:56:19.57 ID:IijGwaLXd.net] >>35 コンパイルまではできているんです googleで色々調べてやってみたり、再インスコもしてみたのですがダメでした。
39 名前:デフォルトの名無しさん [2018/06/21(木) 13:03:56.67 ID:MEOBL//ma.net] >>36 java -help は同じエラー? javac -help はエラーにならずヘルプ出る? javaコマンドをフルパス指定して実行してもエラー?
40 名前:デフォルトの名無しさん mailto:sage [2018/06/21(木) 15:02:08.73 ID:7cRK4el20.net] >>37 それは試していませんでした 今出先なので帰宅したら試してみます ありがとうございます
41 名前:デフォルトの名無しさん mailto:sage [2018/06/21(木) 16:50:09.21 ID:IIt/ttew0.net] 下記の3タイプの違いが分かりません。教えてください。 Aのclsは@で生成したインスタンス BのFqcnは@のFQCNのクラス型 としています。 @ Class<?> cls=Class.forname(FQCN); A cls.newInstance(); B Fqcn cls=new Fqcn(); @〜Bは、どれもインスタンスを取得するコードということですが 用法の違いというか、使いどころの違いがあったりするのでしょうか?
42 名前:デフォルトの名無しさん mailto:sage [2018/06/23(土) 00:17:31.84 ID:qN1Ga+Y40.net] >>37 遅くなりましたがやはりダメでした 復元とかした方がいいのかもしれませんね
43 名前:デフォルトの名無しさん mailto:sage [2018/06/28(木) 22:46:56.90 ID:Ns9pbdA70.net] 有償化したjavaをこっそり使う事は出来ますか 今さら有償は痛いです
44 名前:デフォルトの名無しさん mailto:sage [2018/06/29(金) 01:09:59.72 ID:tmxeEzNH0.net] >>41 なにか勘違いをしているようですが ・OpenJDKとOracleJDKの統一 ・五月雨アップデートから半年毎に定期アップデートへ切り替え ・長期パッチ対応有償サポートの開始 なので自分でJDKのバージョン管理すれば変わらず使えますよ 要すに使用感はUbuntuとかと同じ感じになります
45 名前:デフォルトの名無しさん mailto:sage [2018/07/01(日) 21:11:19.56 ID:ZPDyInp/0.net] 作るものが思いつかず、数ヶ月おきに何か作ってはまたしばらく何も作らないみたいなのの繰り返しで、上達してる気が全くしない みんな何作ってるの?
46 名前:デフォルトの名無しさん [2018/07/02(月) 09:39:38.93 ID:/q8FZihla.net] では君に目標を与えよう。 俺の心を満足させるエロゲを作りなさい。
47 名前:デフォルトの名無しさん mailto:sage [2018/07/02(月) 12:13:00.04 ID:RbqSnnBKa.net] 関連するファイル(.java .txt)をUTF-8(BOMなし)というのに統一しようと思うのだけど何かおもだった弊害はあるでしょうか
48 名前:デフォルトの名無しさん mailto:sage [2018/07/02(月) 12:23:49.66 ID:WWDE7n/3a.net] >>45 全ファイル修正?全部試験し直して検証報告書もお前が書くんだよな? みたいなことを言い出す存在どころか生きている価値すらないクズPLやゴミ上司。
49 名前:デフォルトの名無しさん mailto:sage [2018/07/02(月) 16:10:56.06 ID:RbqSnnBKa.net] いえ個人でしかやらないのでそう言うのは一切問題はないです
50 名前:デフォルトの名無しさん mailto:sage [2018/07/02(月) 20:27:25.99 ID:RVh14aQ/a.net] >>47 じゃあ君次第だ。君が変換後の状態を気に入るかどうか。ただそれだけ。
51 名前:デフォルトの名無しさん mailto:sage [2018/07/02(月) 21:10:14.80 ID:Ryyxhhpma.net] >>46 とか >>48 みたいなのが上司だったらやだなあ
52 名前:デフォルトの名無しさん [2018/07/03(火) 00:00:28.67 ID:LtnxPY8P0.net] UTF-8N(BOMなし)だけを使う。 shift-jis は使わない パス・ファイル名には、半角英数字だけを使う。 半角空白も使わない
53 名前:デフォルトの名無しさん [2018/07/03(火) 00:02:32.78 ID:Dmx6jLMV0.net] 大丈夫。上司じゃないから。
54 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 07:18:57.01 ID:LfiQBfi6M.net] oracleによる有償化でもjavaは現状維持すると思いますか 廃れると思いますか
55 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 07:58:01.78 ID:l23EDKy/d.net] 有償化という言葉だけに惑わされすぎじゃねぇの 今までよりやりやすくなると思うけど
56 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 08:39:02.71 ID:BEAMjZqua.net] 実行環境も有償だから、ただでさえ絶滅危惧種のクライアントJavaはさすがに絶滅するだろうな www.oracle.com/technetwork/java/javaseproducts/javasesubscription-data-sheet-4891969.pdf こんなん完全にランサムウェアですわ
57 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 09:19:38.78 ID:sK+g9tr5M.net] サーバーはともかくクライアントをアップデートしないまま放置はヤバすぎる だからこそセキュリティパッチ未適用のJREが蔓延しても大災害にならないようにアプレットとWebStartは削除しといたよテヘペロってことなんだろうけど、 世界トップクラスの企業のやることたしてはあまりにもやり方が杜撰&無責任&悪質すぎる 正真正銘、史上最大規模のランサムウェアだよ
58 名前:デフォルトの名無しさん mailto:age [2018/07/04(水) 09:57:37.22 ID:DStPNFqFM.net] >>54 お前のような情弱が居なくなって嬉しいwww
59 名前:デフォルトの名無しさん mailto:age [2018/07/04(水) 09:58:38.25 ID:DStPNFqFM.net] >>55 アプレットいらんやろ
60 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 12:43:11.63 ID:JFNnLnouD.net] 有償化はサーバーサイドにはノーダメージなんですね これから勉強しようと思う者としてクライアントjavaは逆にやりたく無かったので対象が絞られて助かります
61 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 13:05:03.77 ID:l23EDKy/d.net] jreの有償化ってどこ情報よ?
62 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 13:17:21.72 ID:sK+g9tr5M.net] >>59 54のリンク先に書いてるよ > Enterprise wide, term based, Java SE Subscription model which includes cloud deployment, server, and desktop licensing and support. > Server and Cloud deployments Price $25 per processor per month, Desktop Price $2.50 per user per month, or lower with tiered volume discounts available. 古いバージョンを使い続けたいならデスクトップは$2.5/月・人
63 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 14:38:36.37 ID:Yw0BxmVZM.net] OracleはJDK11で完全有償化すると同時に、 いままで泳がせていたOpenJDKを一気に知財争いで一気に駆逐する予測も あるから、OpenJDKを過信しないほうがいい。
64 名前:デフォルトの名無しさん mailto:age [2018/07/04(水) 15:45:19.62 ID:mezjvfzeM.net] >>61 コミュニティがそんなこと許すわけ無いやろw 現実的に考えろよ
65 名前:デフォルトの名無しさん [2018/07/04(水) 16:46:54.94 ID:n4h9hTEh0.net] このゲーム見て https://goo.gl/k4ehdm
66 名前:デフォルトの名無しさん [2018/07/04(水) 17:38:01.44 ID:7MpiYGhDa.net] 見ない
67 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 17:46:18.46 ID:Yw0BxmVZM.net] >>62 コミュニティが許さないといくら言ったところで、 過去に多様な状況が起こされた場合では、確実にコミュニティ側が公開停止して 数年かけて知財侵害コードの除去作業をして再公開みたいな流れになってるよね ものによってはそのまま収束したり。 そうならない保証はないというリスクくらいは認識すべきだな。
68 名前:デフォルトの名無しさん [2018/07/04(水) 18:05:05.29 ID:bt+HkB4A0.net] Blackdown porting projectの悲劇。 涙なしには語れない。
69 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 18:46:57.52 ID:l23EDKy/d.net] >>60 それjdkの説明でしょ?
70 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 19:12:59.15 ID:OjiWCf45M.net] >>67 そう信じたい気持ちはわかるけど、「deployment」の話なんだよなあ 英語読めないならこのへん見るといい tech.nikkeibp.co.jp/atcl/nxt/column/18/00001/00081/
71 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 19:43:27.32 ID:l23EDKy/d.net] やっぱjreについては書いてないなーと思って公式いったらjre自体がなくなるみたいだ クライアントjava提供してる側が個別にパッケージして再配布しろってことらしいから使う側は特に意識しなくていいな
72 名前:デフォルトの名無しさん mailto:sage [2018/07/04(水) 21:27:51.25 ID:J+x+vp/50.net] javaは個人利用を排除
73 名前:デフォルトの名無しさん [2018/07/04(水) 21:45:33.24 ID:gFgZc5FG0.net] GHP
74 名前:デフォルトの名無しさん [2018/07/04(水) 22:04:52.74 ID:mSXLTbXk0.net] OpenJDKのサイトもうちょっとやる気出してくれないかね
75 名前:デフォルトの名無しさん mailto:sage [2018/07/05(木) 07:30:20.26 ID:EyuzrPNMa.net] 多次元配列で[][][][][][]と要素数の多すぎるとメモリが足りないみたいなエラーが出るのだけどこれはマシンの性能に依存するのでしょうか また、(おおよその)目安になる計算みたいなのはあるのでしょうか?
76 名前:デフォルトの名無しさん mailto:age [2018/07/05(木) 10:34:59.88 ID:8Bw/clDFM.net] ヒープメモリだから実行時のパラメータに依存する ーXmxで指定できる
77 名前:デフォルトの名無しさん mailto:sage [2018/07/05(木) 10:43:53.64 ID:EyuzrPNMa.net] 指定しなければ8 MB程度として必要に応じて拡張することもできると言う事でしょうか ありがとうございます
78 名前:デフォルトの名無しさん [2018/07/05(木) 11:12:56.96 ID:mntkt8Fwa.net] JDK8(Linux 64bit)のデフォルトヒープサイズ n-agetsuma.hatenablog.com/entry/2015/12/30/185405
79 名前:デフォルトの名無しさん mailto:sage [2018/07/06(金) 21:32:14.44 ID:gLP4VBNq0.net] androidアプリを開発できるようになるまでに どんな勉強過程が必要でしょうか? すっきり分かるjava(基礎、実践、sql、サーブレット) ↓ java魂 ↓ ... 独学希望です
80 名前:デフォルトの名無しさん mailto:sage [2018/07/06(金) 21:37:18.36 ID:bIgnTlFI0.net] まず生活の基本を学ぶことが重要です
81 名前:デフォルトの名無しさん mailto:sage [2018/07/07(土) 06:53:16.46 ID:a3tT5ELD0.net] >>77 書籍なんて買うな 一年で使えなくなる Googleの公式サイトの情報だけでいい koltin使え
82 名前:デフォルトの名無しさん [2018/07/07(土) 09:25:43.13 ID:WQWh8zSt0.net] スッキリシリーズと、 実践Javaコーディング作法、2014 Java 最強リファレンス、2014 EFFECTIVE 何々 第2版、2014 Kotlin の太郎本、2016 (広告規制で書き込めない)
83 名前:デフォルトの名無しさん mailto:sage [2018/07/08(日) 09:17:24.51 ID:Lc8bP1H30.net] >>79 >>80 ありがとうございます! 公式サイトも推奨書籍も参考にします!
84 名前:デフォルトの名無しさん [2018/07/08(日) 22:32:09.28 ID:xxHhxfq10.net] 広告規制?じゃあこれが書けたらもう規制されていないってことになるな。 スッキリわかるJava入門 第2版 (スッキリシリーズ) amzn.asia/9g0zliW スッキリわかる Java入門 実践編 第2版 (スッキリシリーズ) amzn.asia/alqE1va 実践Javaコーディング作法 プロが知るべき、112の規約と21の心得 amzn.asia/23rpAka Java最強リファレンス amzn.asia/3aurJOH EFFECTIVE JAVA 第2版 (The Java Series) amzn.asia/4YFRoaX Kotlinスタートブック -新しいAndroidプログラミング amzn.asia/7IfUpj4 Kotlin Webアプリケーション 新しいサーバサイドプログラミング amzn.asia/bD9xF5D
85 名前:デフォルトの名無しさん mailto:sage [2018/07/09(月) 11:54:18.64 ID:7rJHuXne0.net] 入門的な質問ですいません スッキリ分かるjava入門のサンプルコードなんですが 外側の繰り返しと書いてあるんですが外側の繰り返し(?)というのはjのことであってますか?どっちが外か入門書に書いてないんですけど… それと6行目と8行目はどういう原理で5行目に空白と改行を与えてるのかわかりません教えて下さい; public class Main{ public static void main(String[]args){ for(int i=1;i<10;i++){ for(int j=1;j<10;j++){ System.out.print(i*j); System.out.print(" "); } System.out.println(" "); } } }
86 名前:デフォルトの名無しさん mailto:sage [2018/07/09(月) 12:07:08.78 ID:hqnBC/A3M.net] iが外側ですが、これが入門書に説明がなくて理解できない、という状況が 理解できないので、すいませんがこれ以上は詳しく解説できません。 jが外側と判断したその理由を聞けば、なにをどう勘違いしたらそうなって しまったのかを説明できるかもしれませんが、Javaというより簡単な 日本語の領分かと思います。
87 名前:デフォルトの名無しさん mailto:sage [2018/07/09(月) 12:23:22.88 ID:7rJHuXne0.net] え、プログラミング始めたてのときでもどっちが外か内か飲み込めました? どっちの値が先に繰り返しされてるかなんて実行結果見ても分からないですし どちらが外か内か分からなかったです。疑問に持つ所がおかしいんですかね・・・・・・・ 教えてくれてありがとうございます
88 名前:デフォルトの名無しさん [2018/07/09(月) 12:57:41.59 ID:Xj/c9OYda.net] >>83 6行目は改行なしで空白のみ出力。 8行目は空白と改行を出力。 まあしかし8行目は System.out.println();だけでも良い筈なんだけどね。
89 名前:80 mailto:sage [2018/07/09(月) 13:20:22.89 ID:RPo/jFjY0.net] >>82 少し文章を変えると、Rock54 規制に掛からない 漏れは「書籍名、著者名、出版年」を書いていたら、書き込めなかった。 2, 3文字の短い文字列を、偶然に使っても、規制されることもあるし、たまたまなんだろう MANGO 板で、何回もテストすれば、どの文字列がダメなのか、わかるのだろうが
90 名前:デフォルトの名無しさん mailto:sage [2018/07/09(月) 13:40:50.44 ID:RPo/jFjY0.net] >>83 printf を使って、こうしてみ。 使い方は、printf を参照 for(int i=1;i<4;i++){ for(int j=11;j<14;j++){ System.out.printf("i =
91 名前:%d : j = %d%n", i, j); } } [] [ここ壊れてます]
92 名前:デフォルトの名無しさん [2018/07/10(火) 11:50:14.94 ID:noOOH4cI0.net] >>83 家の中、家の外。鬼は外、福は内。室内、室外。車内、車外。箱の内側、箱の外側。 箱の中の箱、ループの中のループ。 日本語では、先・後 ≠ 内・外 です。 どちらが先に繰り返しされるかではなく、iループのブロックの内側に(中に) jループのブロックがあるというイメージ。 よってjのループが内側の繰り返し、iのループが外側の繰り返し。 このような構造のループを入れ子になったループ構造、二重構造のループなどという。 6行目はjループの中、8行目はjループの外で実行される。
93 名前:デフォルトの名無しさん [2018/07/10(火) 12:01:40.11 ID:noOOH4cI0.net] >>83 追加。 合計、平均値、ソート、探索など簡単なやつでいいのでアルゴリズムも並行して学習 したほうがいいですよ。
94 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 06:10:31.09 ID:GJzpRcdJ0.net] 配列作成の宣言文はいくつかあるみたいですが どれ使ってもいいんですか?全て覚えないと後々問題抱えたりはしませんか int[] s= new int[5] int[] s =new int[]{1,2,34,4,4,5}; int[]s ={1,2,3,4,5,6,}; とか乗ってますが
95 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 07:58:36.31 ID:bofrUcNdM.net] それぞれ何が省略されているだけなのかと 省略できる仕組みが分かっていれば。
96 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 08:19:27.37 ID:GJzpRcdJ0.net] >>92 ありがとうございます ガベージコレクションの説明項でnewで確保された要素は普通の変数じゃないからブロックが終了しても 変数は寿命を迎えないみたいなこと書いてあるんですけど、宣言文とは関係ないことですか?
97 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 09:11:45.54 ID:OyfnAnImM.net] >>93 宣言文でプリミティブか参照型か決まるから、 関係はあるんじゃないかな。 参照型で宣言してスタックに参照があって実体がヒープに インスタンスを持つのがGC対象なのでこれはブロックの終了と 必ずしも連動しない。
98 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 17:50:22.07 ID:GJzpRcdJ0.net] >>94 すいません全然分からないです。難しすぎて…。 聞きたかったのはブロック内で宣言した変数はブロックが終わったと同時に消滅しますが newで確保された要素はブロックが終わっても消滅しないみたいなことが入門書に書いてあるので 配列変数の宣言文でnewを使った方がいいのか?って思って質問しました。
99 名前:デフォルトの名無しさん [2018/07/15(日) 18:10:43.63 ID:GQF9Hy3Z0.net] >>95 int[] s = new int[]{1,2,3}; int[] s = {1,2,3}; これはどっちも同じだよ コンパイルしたら↓こうなる int[] s = new int[3]; s[0] = 1; s[1] = 2; s[2] = 3;
100 名前:デフォルトの名無しさん mailto:sage [2018/07/15(日) 18:39:17.53 ID:FNEUyv360.net] >>95 それ多分要素に入れる値はブロックから抜けても解放されないって説明じゃないかな?
101 名前:s mailto:sage [2018/07/16(月) 06:29:43.68 ID:x0QANHoK0.net] >>97 ありがとうございます それのことです。配列の宣言の仕方によってはブロックから抜け出しても変数の値は消滅しないのかなと思ってしまったんですが 関係なかったですか
102 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 06:41:59.82 ID:Yej864Pfd.net] >>98 宣言の仕方は関係ない 配列に入れた値は配列自体が参照し続けるので開放されないってことをその本説明したいのだと思う この辺はJavaのデータがメモリへ値をどう確保するかってのとGCの対象になる値がどういう物か理解する必要がある
103 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 11:52:53.77 ID:80hpbb9v0.net] もし、配列が格納している要素が、primitive じゃないオブジェクトだったら、 配列のスコープを出た所で、配列は消滅するけど、 中に入っていたオブジェクトは消滅しないし、 それらにアクセスする参照だけが無くなっている つまり、メモリリークか? それとも、どこからも参照できないから、その
104 名前:後、 各オブジェクトのGC が呼ばれるのか? [] [ここ壊れてます]
105 名前:デフォルトの名無しさん mailto:sage [2018/07/16(月) 12:11:09.06 ID:F9mL4/4I0.net] そんなん仮に参照カウント方式でやってても循環参照がなければ普通に回収されるだろ……
106 名前:デフォルトの名無しさん [2018/07/16(月) 12:13:08.12 ID:u+9tbpzg0.net] >>100 どこからも参照されないのならGC対象になるよ { Integer[] a = new Integer[1]; a[0] = new Integer(1); } // ここではaもa[0]もGC対象になる
107 名前:デフォルトの名無しさん [2018/07/16(月) 22:36:19.23 ID:NBO34+YX0.net] { Integer[] a = new Integer[1]; a[0] = new Integer(1); } と { Integer[] a = new Integer[1]; a[0] = 1; } は、全く同じコードかそうでないか。答えと理由を述べよ。 👀 Rock54: Caution(BBR-MD5:1341adc37120578f18dba9451e6c8c3b)
108 名前:デフォルトの名無しさん [2018/07/17(火) 04:29:24.39 ID:EqDA6MfF0.net] >>103 a[0] = 1; はコンパイル時に a[0] = Integer.valueOf(1); に変換される Integerクラスはスタティック変数に -128〜127までのIntegerオブジェクトをキャッシュしていて valueOfメソッドは引数がキャッシュの範囲内であればキャッシュしている オブジェクトを返す。さもなくばnew Integerしたオブジェクトを返す。 new IntegerはJava 9からDeprecatedになっているから プログラムから直接呼び出さないことが推奨される。 a[0] = new Integer(1)よりも a[0] = Integer.valueOf(1)やa[0] = 1が 良いコードと言えるでしょう。
109 名前:デフォルトの名無しさん [2018/07/17(火) 04:33:11.31 ID:EqDA6MfF0.net] したがって { Integer[] a = new Integer[1]; a[0] = new Integer(1); } と { Integer[] a = new Integer[1]; a[0] = 1; } は全く同じコードとは言えない。 理由はコンパイル時に異なるバイトコードが生成されるからだ。
110 名前:デフォルトの名無しさん mailto:sage [2018/07/17(火) 05:33:47.16 ID:H2E1imdF0.net] 今Java環境ってどうなってるか知らんが それ全部実装依存じゃなくて、言語仕様で決まってるの?
111 名前:デフォルトの名無しさん [2018/07/17(火) 05:35:39.33 ID:EqDA6MfF0.net] >>106 言語仕様では決まってるわけないと思う
112 名前:デフォルトの名無しさん [2018/07/17(火) 05:36:11.14 ID:EqDA6MfF0.net] 言語仕様で縛るような話じゃないし 言語って結局文法だからね
113 名前:デフォルトの名無しさん [2018/07/17(火) 05:36:57.43 ID:EqDA6MfF0.net] ドキュメントも言語仕様とAPIはわけられてるし 一緒にして良いものではないと思う
114 名前:デフォルトの名無しさん [2018/07/17(火) 05:56:45.96 ID:EqDA6MfF0.net] と思いきや、ボクシングにvalueOfが使われるとは書かれてないけど -128〜127なら同じオブジェクトになるってことは書かれてる これはもう全部言語仕様と言って良いでしょう! 5.1.7. Boxing Conversion https://docs.oracle.com/javase/specs/jls/se10/html/jls-5.html#jls-5.1.7
115 名前:デフォルトの名無しさん [2018/07/17(火) 06:17:57.20 ID:EqDA6MfF0.net] 仮に実装依存だとするならば 実装によって異なる可能性が存在するわけであるから 全く同じコードかという命題は偽になる ゆえに、実装依存であっても偽になり、 実装依存でなくても偽になるわけであるから 恒偽命題と言って良いでしょう!
116 名前:デフォルトの名無しさん [2018/07/17(火) 06:29:53.56 ID:EqDA6MfF0.net] 恒偽命題とは、他の命題の真偽に依存することなく、常に偽になる命題です。 コードAとコードBが全く同じコードになるかという命題が真であると 仮定した場合、それが実装依存ならば偽となり、実装依存でないならば真となる。 ゆえに、実装依存かという命題は他の命題の真偽に依存するわけであるから恒偽命題とは言えないのです。
117 名前:デフォルトの名無しさん [2018/07/17(火) 06:33:23.84 ID:EqDA6MfF0.net] あなんかすみません、荒らしてるみたいで 全然そういうことやるつもりは無いんですけど 3連休で休息取りまくった結果、脳がフル活動してるっていうか そういう状況でいわばしかたがないんです
118 名前:デフォルトの名無しさん [2018/07/17(火) 06:38:48.39 ID:EqDA6MfF0.net] 違うなあ、命題という言葉の使い方を間違えてる 全部見なかったことにして欲しい ID:EqDA6MfF0 <- NG推奨ID
119 名前:デフォルトの名無しさん [2018/07/17(火) 12:20:35.21 ID:lbJGoJLra.net] >>103 オートボクシングで同じになる。
120 名前:デフォルトの名無しさん mailto:sage [2018/07/18(水) 21:41:39.40 ID:L7ofGWBt0.net] 別ファイルにあるクラスやフィールドやメソッドを参照するにはどうすれば良いのでしょうか? また、継承できるクラス(ファイル)は1つのみですよね 継承の
121 名前:場合はインスタンス化しなくてもそのまま使えるけど、 別ファイルの場合はインスタンス化してからでないと使えない という認識で合っていますか? [] [ここ壊れてます]
122 名前:デフォルトの名無しさん mailto:sage [2018/07/18(水) 22:37:42.36 ID:M6hVFp0xa.net] 上1行:importして使えばいい。 下4行:貴方にとって継承はオーバーテクノロジ。いったん忘れろ。
123 名前:デフォルトの名無しさん mailto:sage [2018/07/18(水) 23:28:54.65 ID:L7ofGWBt0.net] >>117 継承していようが親のフィールドを使う場合は 子でもインスタンス化は必須・・・で合っていますか; ありがとうございました。
124 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 09:52:14.22 ID:p8eAugKgM.net] >>118 合ってない。
125 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 12:18:52.55 ID:Op5duy3qM.net] >>119 え?
126 名前:デフォルトの名無しさん [2018/07/19(木) 13:40:15.59 ID:lzwulHPo0.net] 「インスタンス化」と「コンストラクタを書くこと」をごっちゃにしていないか?
127 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 13:59:01.76 ID:LewvICfod.net] クラスフィールド弄るのにインスタンスは関係ないし。
128 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 14:45:44.12 ID:Op5duy3qM.net] ではクラスフィールど以外のフィールドでは大正解なわけですね
129 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 15:03:32.13 ID:veHa4qNPa.net] フィールドを「使う」の使い方次第だけど、 getDeclaredFields()から使うなんてのもありなら クラスフィールド以外でもインスタンスにしなくても「使える」よ。 「クラスフィールど以外のフィールドでは大正解」 みたいな言葉遊びを始めたら、きりないと思うよ。
130 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 17:19:36.45 ID:Op5duy3qM.net] >>124 メソッド使うのにもインスタンスいるでしょw にわかですか?
131 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 17:27:03.52 ID:27UwT6HQM.net] >>125 classリテラルでも使ってください。 貴方が理解できるかどうかは知らんが。
132 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 17:49:47.54 ID:Op5duy3qM.net] >>126 クラスリテラルを使ったらインスタンス化しなくても継承先のフィールド使えるんどすか、それはステキザマスな
133 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 17:52:00.54 ID:Op5duy3qM.net] インスタンスフィールド使うんやったら インスタンス化せなあかんやろ
134 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 17:52:23.13 ID:Op5duy3qM.net] それを言うてんねんアホ共が
135 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 17:53:32.65 ID:Op5duy3qM.net] 誰やスタティックフィールドのこと言い出したんわ おしりペンペンや!
136 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 17:53:57.98 ID:Op5duy3qM.net] >>122 お前かおらあ!
137 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 17:55:42.08 ID:Op5duy3qM.net] >>124 言葉遊びしてんのはお前や ええ加減にせえ!
138 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 17:56:19.54 ID:AhuF8cwLa.net] Field[] fields = A.class.getFields(); 取り出したFieldの使い方について、 貴方がインスタンス経由で扱うというならそうなんだろう、 としか言いようないな。 使うの定義が狭い貴方なら成り立つ、これでいい?
139 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 17:58:05.39 ID:Op5duy3qM.net] >>133 誰がリフレクションの話してんのや オブジェクト指向を愚弄するな!
140 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 17:59:21.88 ID:Op5duy3qM.net] ほんまお前らしょうもない揚げ足取りでええ加減なことばかり言いやがって、親の顔が見てみたいわ
141 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 18:00:08.39 ID:Op5duy3qM.net] 親のフィールド使うんやったら インスタンス化は必須や、ええなこれで
142 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 18:00:37.20 ID:4YOUlG++a.net] 必須かどうかを聞かれたから、必須ではない、合ってないと 教えてあげただけなのに困ったもんだ┐(´д`)┌ヤレヤレ しかも理解できないときた。
143 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 18:01:10.65 ID:Op5duy3qM.net] 友達のいないキモオタ共がしょうもない知識ひけらかしおって
144 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 18:03:23.07 ID:Op5duy3qM.net] >>137 言葉を切り取るな、文脈を理解せえ アホなマスコミのようなことやりやがって
145 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 18:04:01.25 ID:cq7/kbbFM.net] >>136 貴方が己にそれが必須であるという制約を課すのを止めるつもりはない。 炎上学習法は成功したでしょ、これでclose。
146 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 18:06:27.08 ID:Op5duy3qM.net] >>140 なんの勉強にもならんかったわ アホがなんか言うとるで言うて 俺の教室盛り上がっとるでw やっぱ5chはこんなクズしかおらんわ言うて
147 名前:デフォルトの名無しさん mailto:age [2018/07/19(木) 18:08:10.59 ID:Op5duy3qM.net] リフレクションとかアホやろ スタティックフィールドはバカや インスタンスフィールドは賢い
148 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 18:36:03.20 ID:B62Oo3TMd.net] 落ち着けw まぁ人間的に言えば文脈から察しろだし プログラマ的に言えば正確に言わないのはNGってことでいいじゃないか 仕事場でそんな質問されたら俺は突っ返すけど
149 名前:デフォルトの名無しさん [2018/07/19(木) 20:39:37.77 ID:619JXZu+a.net] こんなやり取りしてるからデスマになるんだろうな
150 名前:デフォルトの名無しさん [2018/07/19(木) 21:12:54.03 ID:tifuZFloa.net] あれ?誰かがキレたの? 暑いからな。体には気を付けないとな。 水分取るの忘れずにな。
151 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 22:58:07.97 ID:ZayUTiVed.net] ID:Op5duy3qM ひさびさの究極のキチガイって感じだなw 生きている価値のない究極のゴミクズw
152 名前:デフォルトの名無しさん mailto:sage [2018/07/19(木) 23:02:15.68 ID:zpCf8yuT0.net] 言ってることは普通なのになんでこんなバカっぽく見えるんだろう?
153 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 06:15:14.35 ID:9jNWx6X+0.net] 入門書の例文なんですが5行目はなぜ書かないとエラーになるんですか? あとこの行は添字にiを代入してるですか? public class Main{ public static int[] makeArray(int size){ int[] newArray = new int[size]; for(int i = 0;i < newArray.length;i++){ newArray[i] =i; } return newArray; } public static void main(String args[]){ int array[]=makeArray(3); for(int i : array){ System.out.println(i); } } }
154 名前:デフォルトの名無しさん [2018/07/20(金) 06:32:53.49 ID:aSo4GDyF0.net] >>148 5行目って newArray[i] =i; でしょ 実行すればわかるけど5行目がなくてもエラーにはならない 配列のi番目に値を代入している
155 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 06:50:33.71 ID:9jNWx6X+0.net] 後スッキリ分かるjava入門6章の複数クラスによる開発って所は JDKっていうのダウンロードしないと学習できないですか?dokojavaだとエラーがでます・・
156 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 06:54:11.63 ID:9jNWx6X+0.net] >>149 ありがとうございます。 要素に代入してたんですね。もっかい5行目消して実行したら000で出来ました。すいません 配列変数は初期化しなくてもいいんですね
157 名前:デフォルトの名無しさん [2018/07/20(金) 07:06:08.67 ID:aSo4GDyF0.net] >>150 どういうプログラムでなんてエラーが出るのかしら?
158 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 07:16:22.26 ID:9jNWx6X+0.net] 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); } } public class Calc{ public static void main(String[]args){ int a =10;int b =2; int total = tasu(a,b); int delta = hiku(a,b); System.out.println("足すと"+total+"引くと"+hiku); } } クラスCalcLogicはpublicであり、ファイルCalcLogic.javaで宣言する必要があります Main.java(1行目) クラスCalcはpublicであり、ファイルCalc.javaで宣言する必要があります Main.java(10行目) シンボルを見つけられません シンボル: メソッド tasu(int,int) 場所: クラス Calc Main.java(13行目) シンボルを見つけられません シンボル: メソッド hiku(int,int) 場所: クラス Calc Main.java(14行目) シンボルを見つけられません シンボル: 変数 hiku 場所: クラス Calc
159 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 07:18:11.67 ID:9jNWx6X+0.net] って出ますね…他のコードも同じようなエラーで出来ないですね。 JDKって物をダウンロードしないと6章は飛ばすしかないんですかね
160 名前:デフォルトの名無しさん [2018/07/20(金) 07:42:16.58 ID:aSo4GDyF0.net] CalcLogicをCalcLogic.javaで宣言すればいんじゃないかな dokojavaのタブのところを押すとクラスファイル作れるっしょ そこでCalcLogic.javaを作ればいい Eclipseとか使った方が良いと思うけどね 本持ってないから6章を飛ばしたが良いかはわからん
161 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 10:11:12.07 ID:wmaa87srM.net] さすがにもうeclipseとかいう糞は忘れていい IntelliJかVSCodeを使おう
162 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 10:44:03.91 ID:p6o0GwEl0.net] クラス名・ファイル名を合わせないといけないとか、 パッケージを作ったら、それをフォルダ階層と合わせないといけないとか、 パッケージ化について、色々なルールがある
163 名前:デフォルトの名無しさん [2018/07/20(金) 10:51
] [ここ壊れてます]
164 名前::43.94 ID:+BuQOMxBa.net mailto: それが面倒な人は Kotlin へ [] [ここ壊れてます]
165 名前:デフォルトの名無しさん mailto:age [2018/07/20(金) 12:04:07.37 ID:I87x1UyWM.net] >>156 VSCでインクリメンタルコンパイラ使えるん?
166 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 12:16:49.35 ID:wmaa87srM.net] >>159 インクリメンタルコンパイルなんかeclipseもIntelliJもやってないぞ Javaコンパイラにそんな機能はない .class単位のインクリメンタルビルドのことならVSCodeも当然やってる デバッグ実行中のエディットコンティニューすら可能
167 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 12:24:50.67 ID:p6o0GwEl0.net] ここに書いておいた https://paiza.io/projects/5G9gtFuq0b7Uu2vL667kfw paiza.io では、ファイル名はMain.java、クラス名はMain にしないと動かない。 また、同一ファイルに、複数のpublic クラスを置けない。 CalcLogic.tasu のように関数名の前に、クラス名も必要 paiza.io では、別ファイルのクラスは、エラーになって読み込めない
168 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 12:28:53.04 ID:wmaa87srM.net] いやeclipseの内蔵コンパイラならインクリメンタルコンパイルできるのか https://marketplace.visualstudio.com/items?itemName=georgewfraser.vscode-javac によると、ファイル単位のコンパイルはクソ速いから必要ないという見解みたいだね
169 名前:デフォルトの名無しさん mailto:age [2018/07/20(金) 15:29:52.08 ID:I87x1UyWM.net] >>162 eclipseなら文字入力するとリアルタイムにコンパイルエラーがわかるんよ、超便利、超素敵、VSCでもそうなのかなって思っただけ
170 名前:デフォルトの名無しさん mailto:age [2018/07/20(金) 15:53:22.26 ID:I87x1UyWM.net] コンパイラの機能じゃないかも アナライザが動いてんのかな VSCでも型が間違ってたらすぐエラーがでる? スペルチェックみたいな感じで それができたら良いよね
171 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 17:04:28.88 ID:zCdAFSj50.net] eclipseを使ってると、プログラムの3分の1はeclipseに書いてもらうって感じだな。 インスタンス名の次にピリオドを入力するととメソッドの一覧が出るので、そこから選ぶだけだし。 自分がものすごくものぐさになった気がするわ。
172 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 17:16:51.69 ID:6o+QAuQB0.net] わかる
173 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 18:09:59.83 ID:9jNWx6X+0.net] >>155 ,>>161 dokojavaのクラス変更のタブいじってみましたがダミでした 使うコンパイラによってもルールが違うんですね・ やはりJDKというのをインストールしないとだめみたいですね・・・ サンプルコードまで・・・ありがとうございます
174 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 18:12:21.42 ID:ZHpYPCAkd.net] APIで提供されてるクラス名とかもな 3文字位打って候補出しちゃうわ
175 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 22:30:11.80 ID:p6o0GwEl0.net] >>167 paiza.io, codepad などで、ブラウザを使って、プログラミングすれば? それに一々、動かさなくても理解できれば、検索して何とかなるから十分 一々、動かして確認していると、時間を食う。 最初に、スッキリを3回読んでから、動かした方が手っ取り早い 読むだけなら、20時間で読める。 2回目は5時間、3回目は2時間で読める
176 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 23:13:14.67 ID:9jNWx6X+0.net] https://devnote.jp/jdk_windows/index.html の説明を詠みながらJDKを導入しようとしましたが失敗しました setx /M Path "%JAVA_HOME%\bin;%Path%" を入力すると エラー)構文が無効です。既定のオプションは2回より多く使えないみたいなエラーと javac -version といれると操作可能なプログラムまたはバッチファイルとして認識されていませんみたいなエラーが出ます 何回かやり直しましたが同じエラーが出て駄目でした 他にもう少し簡単に環境導入できて似たような
177 名前:機能が使えるお勧めのものはないでしょうか? [] [ここ壊れてます]
178 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 23:18:03.46 ID:9jNWx6X+0.net] >>169 プログラミング言語入門で・・・今までいじったこともないので見ただけで覚えるってのはちとハードル高いです APIとか複数クラスは後回しにしてもいいんですかね。アドバイスはありがとうございます
179 名前:デフォルトの名無しさん mailto:sage [2018/07/20(金) 23:57:17.90 ID:1XJtiOGK0.net] >>170 GUIで設定すれば? start C:\Windows\system32\rundll32.exe sysdm.cpl, EditEnvironmentVariables
180 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 00:54:54.11 ID:PL54dEXd0.net] >>172 https://eng-entrance.com/java-install-jdk-windowsも参照に再度試しましたが 同じエラーが出て駄目でした ありがとうございます。
181 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 02:20:09.67 ID:Lp20pfrp0.net] >>173 >(他の環境変数のパス) ;C:\Program Files\Java\jdk1.8.0_101\bin 複数のパスがつながっている場合は、前のパスの後ろに、区切り文字 ; が必要! PowerShell を起動して、以下を入力して、パスを表示してみ。 ひょっとしたら、前のパスとつながっているかも $env:Path.split(";") 他には、ファイルパス・ユーザー名など、 システムに半角英数字以外を使っていて、誤動作しているとか? OS のバージョン・ビット数、エラーメッセージも書いて。 まず正確なエラーメッセージで、検索するのが速い
182 名前:デフォルトの名無しさん [2018/07/21(土) 03:01:10.06 ID:5tjqiit90.net] >>173 コントロールパネル開けた?新しい Windows 10 (バージョン 1803) だとスタートの所で右クリックしても コントールパネルは出てこないわけだが。(メニューの中の「Windows システムツール」の中にある)。
183 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 17:16:21.54 ID:H1/LKYDwa.net] JDK10をMacにインストールしようとしたんですが Oracleのダウンロードページが全て404 not foundになっています どこかにミラーはないのでしょうか? Dmgファイルを探してみましたがファイルサイトだと 怪しいアドウェアしかないようです
184 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 19:48:56.13 ID:5tjqiit90.net] >>176 このページの Java SE 10.0.2 の JDK の所? www.oracle.com/technetwork/java/javase/downloads/index.html 普通にアクセスできるよ。
185 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 21:34:11.67 ID:PL54dEXd0.net] >>174 https://devnote.jp/jdk_windows/index.html ここの3-3の3を実行すると ”エラー:構文が無効です。既定のオプションは'2'回より多く使用することはできません と出ます。 また3-5のjavac -versionを入力すると"avac'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。"と出ます。 他は説明どおりに出来てるんですが・・・ 初めてこういうものを導入するのでPowerShellとかよくわからないです…
186 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 21:37:45.36 ID:PL54dEXd0.net] win10 64bitのノートpcでやってます
187 名前:デフォルトの名無しさん [2018/07/21(土) 22:37:30.39 ID:evbWgLmC0.net] >>178 構文が間違ってるんだと思うよ "とか省略してない? リンク先のそのまま貼り付けるんやで
188 名前:デフォルトの名無しさん mailto:sage [2018/07/21(土) 22:46:43.68 ID:PL54dEXd0.net] >>180 一応サイトの方からコピーで全て張ってましたけど駄目でしたね・・・ これがないと読んでる入門書の複数クラス・APIの章が実行できないんですが 飛ばしてオブジェクト指向の章に飛んでも後々支障ないですかね・・・
189 名前:デフォルトの名無しさん [2018/07/21(土) 23:07:23.91 ID:evbWgLmC0.net] >>181 もっかいやってみたら? コマンドの構文エラーくらい解決できるっしょ
190 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 11:29:10.88 ID:NHUbC5Q30.net] >>178 旗の(スタート)ボタンを右クリックすれば、PowerShell・PowerShell(管理者用)がある。 普通の(管理者用ではない)PowerShellを起動して、以下を入力して、 JAVA_HOME
191 名前:など、関係のある部分を書いて! すべての環境変数を表示する。JAVA_HOME を探して書いて。 ls env: すべての環境変数PATH を表示する。 $env:Path.split(";") 3-3.1 では、普通のコマンドラインプロンプト(cmd)ではなく、管理者用のcmdで設定している。 だから、普通のcmdではエラーになる 3-3.2, 3 では、setx /M と、/M が付いているから、 ユーザー環境変数じゃなくて、システム環境変数に設定している 念の為に、システム環境変数を設定した後に、PC を再起動して。 それと、書き込む時は、名前欄に最初に質問した時の、レス番号を書いて [] [ここ壊れてます]
192 名前:183 mailto:sage [2018/07/22(日) 12:32:58.77 ID:NHUbC5Q30.net] 3-3.2, 3 では、setx /M と、/M が付いているから、 ユーザー環境変数じゃなくて、システム環境変数に設定している コマンドではなく、画面操作でも設定できる エクスプローラーで、PC を右クリックして、プロパティー選択。 システムの詳細設定 > 環境変数 3-3.2 では、システム環境変数に、JAVA_HOME があるかどうかを確認する。 そして「C:\Program Files\Java\jdk-何々」と、 jdk をインストールしたフォルダを正しく、追加か修正すればよい 3-3.3 では、システム環境変数Path を修正して、「%JAVA_HOME%」を追加すればよい。 こうすれば、3-3.2で、JAVA_HOMEに設定した値が、Pathにも設定される 【Windows版】初心者のための!環境変数の基礎とPathの設定方法 https://yukiwet.com/setpath/
193 名前:170 mailto:sage [2018/07/22(日) 15:12:30.01 ID:ce6ubXtd0.net] 細かくありがとうございます powershellからやったら3-3の3,setx /M Path "%JAVA_HOME%\bin;%Path%"入力で 指定した値は保存できましたが javac -versionと入力すると>>178 と同じエラーです システムから環境変数を覗いたら以下全てありましたが・・・ 足りないものはないと思いますが何故でしょうか C:\ProgramFiles\Java\jdk-10.0.2\ C:\Program Files\Java\jdk-10.0.2\bin %JAVA_HOME%\bin;%Path%
194 名前:デフォルトの名無しさん [2018/07/22(日) 16:09:47.25 ID:YGqHpPTt0.net] >>185 Windowsの画面のメニュのところを右クリックして ファイル名を指定して実行で cmdを実行するっしょ その画面で dir "C:\Program Files\Java\jdk-10.0.2\bin" を実行してjavacが表示されなかったらパスが間違ってる 表示されるならパスが反映されてないだけだから 新たにcmdを実行すればよい
195 名前:デフォルトの名無しさん mailto:sage [2018/07/22(日) 17:11:59.27 ID:ItXQd3yx0.net] Program Files(x86)にインストールされたとかじゃね?
196 名前:183 mailto:sage [2018/07/22(日) 18:02:45.81 ID:NHUbC5Q30.net] >>185 >C:\ProgramFiles\Java\jdk-10.0.2\ >C:\Program Files\Java\jdk-10.0.2\bin ProgramFiles Program Files 半角空白が片方にしかないじゃん。両方に必要 >%JAVA_HOME%\bin;%Path% setx /M Path "%JAVA_HOME%\bin;%Path%"を入力したら、 「%JAVA_HOME%\bin」と表示されているだろ? 後ろに、%Path% は付かないだろ。 %Path%は、すべての環境変数PATH の文字列の事だから、 %JAVA_HOME%\bin を、それらの前に追加したという意味 PowerShellを起動して、以下の2つを入力して、 JAVA_HOME など、関係のある部分を書いて! すべての環境変数を表示する。JAVA_HOME を探して書いて。 ls env: すべての環境変数PATH を表示する。 $env:Path.split(";") >>184 間違って書いたので、修正します。 >3-3.3 では、システム環境変数Path を修正して、「%JAVA_HOME%」を追加すればよい 「%JAVA_HOME%」ではなく「%JAVA_HOME%\bin」です システム環境変数Path の画面で、直接書いた方が速いかも 最終的に、システム環境変数に、%JAVA_HOME% と、 システム環境変数Pathに、%JAVA_HOME%\bin 、1つずつがあるはず
197 名前:170 mailto:sage [2018/07/23(月) 05:21:38.77 ID:4YnpLRT90.net] インストールが失敗してるのか何度試しても同じ結果でした… 別のpcでまた今度試してみます。ありがとうございました(´Д`) 161さんが挙げてくれたコード使えばブラウザ上でも実行できたのでこれで代用してみます
198 名前:デフォルトの名無しさん mailto:sage [2018/07/23(月) 07:41:39.43 ID:SeSwW+Qt0.net] ラジオボタンやチェックボックス、テキストビューなどをデザインしなおすというか カッコいい見た目に作り直したいのですが、どのような勉強をすればいいのでしょか? 参考書やサイトなど教えてくださいませ、よろしくお願いします。
199 名前:デフォルトの名無しさん mailto:sage [2018/07/23(月) 08:17:06.01 ID:tja2UxRYa.net] >>190 普通にcss まさかとは思うが今時SwingやJavaFXなんか使ってないよね
200 名前:デフォルトの名無しさん mailto:sage [2018/07/23(月) 08:22:33.03 ID:SFDDqZpg0.net] GUI作るとき普通にswing使ってる・・・
201 名前:デフォルトの名無しさん [2018/07/23(月) 12:29:05.74 ID:dqTrBb4Wa.net] Swingみたいにawtから
202 名前:継承して色々なのを作れなくはない。 ようするに絵を描いてしまえば良いだけなので。 まあしかし自作するのは面倒くさいのと、そのソフト配布する時に必ずそのライブラリも付加しなければいけなくなり、それにバクがあったらまた自分で配布するとか、色々と面倒なので作る人は少ない。 [] [ここ壊れてます]
203 名前:デフォルトの名無しさん mailto:sage [2018/07/23(月) 12:51:10.39 ID:52m4LxuYM.net] そもそも醜悪なSwingの見た目を良くしようと思ったらIntelliJレベルまでフルカスタマイズする必要があるから、 どうしてもJavaクライアントでやるなら最初から見た目は諦めるのが一般的だね
204 名前:デフォルトの名無しさん mailto:sage [2018/07/23(月) 15:31:25.10 ID:2v0YBmtd0.net] >>50 あわびを股間に当ててやらないと・・・
205 名前:デフォルトの名無しさん [2018/07/23(月) 16:38:51.36 ID:VODOn8B/a.net] 中々斬新な誤爆
206 名前:デフォルトの名無しさん mailto:sage [2018/07/23(月) 16:53:31.52 ID:2v0YBmtd0.net] だろ?
207 名前:デフォルトの名無しさん mailto:sage [2018/07/23(月) 20:20:16.10 ID:SeSwW+Qt0.net] >>191 ありがとうござます。 javaでcssを使えるようになりたいのですが、おすすめサイトや本を教えてくださいませんか?
208 名前:デフォルトの名無しさん mailto:sage [2018/07/23(月) 22:09:51.35 ID:/85lFAZQ0.net] CSS は、JavaScript のjQuery か、Ruby のNokogiri Selenium WebDriver なら、数言語から使える
209 名前:デフォルトの名無しさん mailto:sage [2018/07/23(月) 22:28:13.38 ID:AIVQMcWf0.net] >>199 javaでgui作りたいのにjsやrubyが必要なのか?
210 名前:デフォルトの名無しさん [2018/07/24(火) 06:04:42.11 ID:vufwpevU0.net] >>200 違うやろ、お前が本当にやりたいのはRubyや!
211 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 10:23:56.20 ID:swVduOaV0.net] 昨今は、Java, Ruby, Go など、どの言語でも、 画面は、HTML, CSS, JavaScript になる
212 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 19:15:31.93 ID:xvO2H0Wx0.net] 皆様ありがとうございました。 ジャバのビューをcssでデザインしようとしたら レイアウトでCSSタグを使えばいいのでしょうか? そういうサンプルが豊富なテキストとかありませんでしょうか?
213 名前:デフォルトの名無しさん mailto:sage [2018/07/24(火) 20:22:59.08 ID:UCXwOjul0.net] JavaFXはスタイルシートっぽいの使えた気がするが現在微妙な立ち位置…
214 名前:デフォルトの名無しさん mailto:sage [2018/07/25(水) 09:06:39.89 ID:85zzKATD0.net] Javaに書いたhtmlだとformタグの子要素からeventを取得すると思いますが、どのようにしますか?
215 名前:デフォルトの名無しさん [2018/07/25(水) 09:26:35.97 ID:GNtg4sP8a.net] >>205 > Javaに書いたhtmlだと これはどういう状態の事を言っているのかがわからない。
216 名前:デフォルトの名無しさん mailto:sage [2018/07/25(水) 09:43:33.31 ID:85zzKATD0.net] >>206 Jlabelのインスタンス宣言時に、引数にhtmlを含んだStringを渡した時のことです
217 名前:デフォルトの名無しさん [2018/07/28(土) 12:20:25.55 ID:AyAWko9L0.net] 二ヶ月前に初めて、やっとJAVAと一緒に、JSP、SQL等つかえるようになってきたものです。 ただここから何作ればいいかわからず、途方にくれています。 JAVA覚えたてになにかいいプロジェクトなどありますか?
218 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 13:30:04.22 ID:Z2VlFyTVa.net] >>208 そこまでできれば最底辺奴隷PGとしては十分だから、普通にとりあえずどっかのブラック企業に就職して現場に投入してもらえばいい 仕事でやるつもりじゃないんならJavaは無用 NodeやRailsにでも行ったほうがいい
219 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 13:42:18.06 ID:XhNeQ3HeM.net] JavaのWebシステムって基本的に金のために作るのがわけだからオープンソースプロジェクトなんかほとんど無いし、 独学で習得できるノウハウも極めて限られてる 仕事して覚えるのが一番手っ取り早いよ 独学で頑張ったところで人材としての世間の評価は「未経験」だから、はっきり言って時間の無駄
220 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 14:06:23.60 ID:C+3FbN1g0.net] 不条理だよな 実務経験あってC++とかほかの手続き型言語の経験あったら JavaやらC#やらごときできないわけないだろ! そのへんのフレームワークも 業務経験でそこまで変わるとおもえん 趣味で使えるなら業務だからってそんな難しくなるか?
221 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 14:19:30.77 ID:CQV9Y2aY0.net] むしろ趣味でやってるやつの方が洗練されたプログラムを書く
222 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 14:35:08.40 ID:AyAWko9L0.net] <209-210 そうなんですね。。 自分の前職の内容洗い出してなにか作れないか考え直してみます。 面談受って早く現場いきたいなぁ・・
223 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 14:51:31.24 ID:XhNeQ3HeM.net] >>213 暇ならインフラやれば? サンプルをAWS上に立てたサーバーへデプロイするくらいまでやってみたらいい インフラに強いと一山いくらのPGの中ではかなりの差別化になるよ
224 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 17:04:41.65 ID:s8FQvaoRM.net] >>213 レスもまともに出来ないなら辞めとけ‥
225 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 19:21:35.28 ID:K/0n2MBX0.net] >>208 2か月でそんなできるようになるなんて凄いです 勉強方法を教えてもらえませんか?
226 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 19:41:34.26 ID:x9KNF6950.net] >>216 うちも実務でできるようになったぞ まあ、GUI絡むと死ぬけど
227 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 21:03:39.83 ID:K/0n2MBX0.net] いきなり実務って無理じゃないですか? 実務に入る前に前提知識を身に付けるとしたらどんな学習方法があるのでしょうか?
228 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 21:57:47.44 ID:kQ5RCDb7a.net] >>218 言語がだいたいわかってれば十分いきなり実務できるよ 心配しなくても未経験の最低単価のPGなんて使う方も大した期待はしていない 業務の開発なんてほとんどコピペだから、似たような処理をコピペしてきてちょっと弄るくらいできれば上出来
229 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 22:05:47.35 ID:kQ5RCDb7a.net] ついでにいうと、低級のPGに限らず、SI案件の実務なんて君が想像してるほどレベル高くないよ 初心者に毛が生えた程度の人達がひたすら右から左へデータを書き写す単純作業をしてるだけ
230 名前:デフォルトの名無しさん mailto:sage [2018/07/28(土) 22:12:50.83 ID:C+3FbN1g0.net] 失敬な 上流の人にゴマすったり 他人のコードにケチつけたり 書類の誤植をひたすらなおしたり いっぱいやることはあるぞ!
231 名前:デフォルトの名無しさん [2018/07/29(日) 01:44:24.96 ID:pFjYaTQt0.net] 「スッキリわかる Java入門 第2版」で、オブジェクト指向を学んだのなら、 「たのしいRuby 第5版、2016」を読んで、 無料のRails チュートリアルをやれば? これをやれば、すべてのフレームワークに応用できるし、製品の全工程がわかる。 作品も、Railsで作るのが楽 その後、掌田津耶乃のフレームワークの本を読めば? Spring Framework 4 プログラミング入門、2014 Spring Boot プログラミング入門、2016 Node.js超入門、2017 Python Django 超入門、2018 それか、Java 土方になるか。 土方の欠点は、製品の一部分しか作らないから、全工程がわからない事。 土方なら、以下の本 実践Javaコーディング作法 プロが知るべき、112の規約と21の心得、2014 Java 最強リファレンス、2014 EFFECTIVE JAVA 第2版、2014
232 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 05:01:52.49 ID:ROz5wbxP0.net] += これと = の使い分けが分からないので教えてほしいです a +=2 a = 2
233 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 06:27:19.95 ID:bwtbjTxx0.net] >>223 「a +=2」 == 「a = a + 2」
234 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 07:10:46.32 ID:ROz5wbxP0.net] >>224 ありがとうございます それが同じ意味だとは分かるのですが、使い分け方が分かりません 全く同じ意味なんですか?+=と=は
235 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 07:44:12.01 ID:HY6JPPPD0.net] 演算と同時に代入
236 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 07:49:27.01 ID:HY6JPPPD0.net] a +=2は「aの元の値に2を足してaに代入」 a = 2は「aの元の値が何であろうが2を代入」だ 全然違う
237 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 08:07:00.83 ID:ROz5wbxP0.net] >>227 ごめんなさい; 理解できました。ありがとうございます
238 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 10:06:49.41 ID:LcT2Y+8B0.net] >>219 自分は本業は違う業界なのでPGは独学です 有料のネット学習も考えてみましたがどうなのでしょう?
239 名前:デフォルトの名無しさん [2018/07/29(日) 12:25:27.18 ID:7lOBGcOb0.net] 完璧に使えるようになるまで実務では使わないという事にすると一生実務で使わない事になりかねないと思う。 言語そのものはすぐに覚えられるだろうが、あらゆる分野のあらゆるライブラリが次々と湧いて出てきて尚且つその一つ一つが日々バージョンアップして行くわけで、そんなの全部覚えられるわけがない。
240 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 13:11:24.87 ID:lzRBxehAa.net] 業務システムに必要な技術要素はこれだけ ・画面に情報を表示する&ユーザーの入力を取得する ・現在の状態を更新または取得する ・作ったものをユーザーが使える状態にする あとはそれぞれについて一つ道具を覚えたら一通りモノは作れる できる奴は本当にこれだけでできるし、できない奴はどれだけ独学で頑張っても仕事しない限り無理
241 名前:222 mailto:sage [2018/07/29(日) 13:30:36.71 ID:pFjYaTQt0.net] >>229 プロゲートで、Ruby をやって、 無料のRails チュートリアルをやるのが定番 YouTube で、セレブエンジニアの小松和貴という人が、 フリーエンジニアになる方法など、よく転職動画を挙げている
242 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 19:06:08.84 ID:LcT2Y+8B0.net] >>232 javaを身に付けたいのですが、rubyから入った方がいいのでしょうか? 今はスッキリjavaを呼んで、androidアプリ開発の教科書(斎藤)を読み終えようとしてるところです。
243 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 19:48:23.27 ID:g2ZFpFJd0.net] >>233 辞めたほうがいい JavaからRubyやるならわかるが、RubyからJavaはいろんな意味で混乱するぞ
244 名前:222 [2018/07/29(日) 20:34:57.81 ID:pFjYaTQt0.net] たのしいRuby 第5版、2016 時間効率では、この本を3回読んでも20時間で、得られるものも多い。 Rubyでしばらく遊んで、正規表現・配列のメソッドを覚えれば、 JavaScript, jQuery へ移行できる JavaScript, Kotlin などは、Rubyに似せてくるから、 Rubyのプログラミングのやり方の多くが使える それに、ファイル・テキスト処理では無敵だし、 他の言語の基礎になるから、やって損はしないのでお勧め!
245 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 20:41:48.46 ID:LcT2Y+8B0.net] >>235 ありがとうございます。 初学者なので教えていただけると嬉しいのですが RubyとPythonは同じような位置づけの印象がありますが PythonよりRubyの方がいいのでしょうか?
246 名前:デフォルトの名無しさん mailto:sage [2018/07/29(日) 20:45:44.14 ID:ZNkzy5HU0.net] これを一番の参考にすべきでしょう。 プログラマー年収ランキング2017!言語別、第1位はScalaの626万円 https://jp.stanby.com/media/programming_ranking2017/
247 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 06:36:07.38 ID:jE1kRg0J0.net] できれば、個人的にandoroidアプリを開発できるようになりたいと考えて
248 名前:ワす その場合の学習進路として、、java→SQL→サーバーサイドって感じになりますか? [] [ここ壊れてます]
249 名前:デフォルトの名無しさん [2018/07/30(月) 06:39:30.81 ID:HJqNjAI+0.net] >>238 android勉強しなよ
250 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 06:48:22.59 ID:rPrBkWVy0.net] >>238 koltin
251 名前:デフォルトの名無しさん [2018/07/30(月) 06:50:55.04 ID:HJqNjAI+0.net] プログラムは、順次、選択、繰返しで実装できることがわかってるんだから if文とwhile文がわかったら十分 SQLもサーバサイドも必要になってから調べれば良い androidの開発がしたいならandroidの実装の仕方を勉強しないと
252 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 07:04:17.38 ID:EYjHLRR70.net] 論理演算子の または〜って縦棒と変換して使うとエラー出るんですけど なんて変換すればいいですか? かつ(&&)は出るんですけど・・・
253 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 07:07:38.43 ID:EYjHLRR70.net] すみません。逆でした 且(&&)はエラーでないんですけど または(‖)と打つとエラーが出ます。
254 名前:デフォルトの名無しさん [2018/07/30(月) 07:09:46.37 ID:HJqNjAI+0.net] && ||
255 名前:デフォルトの名無しさん [2018/07/30(月) 07:12:39.54 ID:HJqNjAI+0.net] 文字が違う
256 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 07:15:16.17 ID:EYjHLRR70.net] >>244 ありがとうございます。 コピーしたら使えるんですけど、なんて変換したら出るか教えて下さい 自分のパソコンだと’縦’で変換しても同じのが出ません><;
257 名前:デフォルトの名無しさん [2018/07/30(月) 07:26:14.47 ID:HJqNjAI+0.net] >>246 キー配列がJapaneseなら Shift+\ で出るよ
258 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 07:29:21.70 ID:EYjHLRR70.net] >>247 おかげさまでいけました! ありがとうございます。
259 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 08:40:16.78 ID:qnQc5JETM.net] >>241 Androidアプリ一個もリリースしたことなさそう
260 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 08:48:15.71 ID:EokvRzKZ0.net] なんで記号を変換で打ってるんだろ? そのもののキーあるのに
261 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 11:52:06.89 ID:+mfJwdNa0.net] 夏休み
262 名前:デフォルトの名無しさん [2018/07/30(月) 11:56:24.86 ID:kNimcJUea.net] スマホならわかるがPCは滅多に触らないので勝手がわからないのかも知れない
263 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 13:50:18.67 ID:s9CMcrrz0.net] プログラミングの勉強について 制御や配列などの基本的な部分を理解したら ・ 深く考えずサンプルプログラムを打ちまくる ・ 時間をかけてサンプルプログラムをしっかり理解しながら進める どっちが正解なのでしょうか? javaの勉強の進め方は クラスやオブジェクトを総覧しておいて 何を作るにはどのクラス、メソッドを組み合わせるか という視点を中心として進めればいいのでしょうか?
264 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 13:59:05.70 ID:EokvRzKZ0.net] 優れたコードを沢山読んで理解
265 名前:デフォルトの名無しさん [2018/07/30(月) 14:11:11.18 ID:kNimcJUea.net] >>253 > ・ 時間をかけてサンプルプログラムをしっかり理解しながら進める こっちだろうなやはり。 > javaの勉強の進め方は > クラスやオブジェクトを総覧しておいて > 何を作るにはどのクラス、メソッドを組み合わせるか > という視点を中心として進めればいいのでしょうか? そうだな。 それと逆引き辞典みたいな本があるといいかも。ネットで検索してもいいけどね。
266 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 15:27:50.75 ID:s9CMcrrz0.net] ありがとうございます!
267 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 17:31:28.20 ID:s9CMcrrz0.net] インスタンスの取得に関してなのですが、 自分で作成したクラスや、Overrideしたクラスは、インスタンスをnewで取得し importして使うクラスに関しては、戻り値でインスタンスを取得するという感じなのでしょうか?
268 名前:デフォルトの名無しさん [2018/07/30(月) 18:40:50.03 ID:xHVHgAPAa.net] >>257 いやそれはどういう設計なのかによる。 まあしかしだいたいは new してインスタンス作ると思ってて良い。
269 名前:デフォルトの名無しさん [2018/07/30(月) 18:41:40.34 ID:xHVHgAPAa.net] import するかどうかは関係ない。
270 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 18:43:18.75 ID:s9CMcrrz0.net] そうなのですね、ありがとうございます。 newしていないのに戻り値でオブジェクトが返
271 名前:されたりすると コードを読んでいて混乱してきてしまってます newされていない時に、リファレンスで戻り値を確認しながら読んでいきます。 いつもありがとうございます。 [] [ここ壊れてます]
272 名前:デフォルトの名無しさん [2018/07/30(月) 19:52:51.96 ID:oxH0veC50.net] >>249 話は変わるけど服部栄養専門学校の服部先生は調理師免許持ってないんだって
273 名前:デフォルトの名無しさん mailto:sage [2018/07/30(月) 20:35:26.48 ID:r0zEs9EBa.net] >>261 え?俺は情報関係の資格一つも持たずに学校でC言語教えてたよ。 もちろん学校って言っても大学なので教員免許みたいなものもなしだよ。
274 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 07:08:54.24 ID:0WPHgBA60.net] <<250 BUFFALOの安いキーボードだと'め'と\がどっちもスラッシュで印刷されてて・・・ 全く気づきませんでした
275 名前:デフォルトの名無しさん [2018/07/31(火) 08:59:47.57 ID:2hPyQPU6a.net] 旧石器時代に作られたjavaのコードを調べてたら、 javax.swingみたいな組み込みのパッケージに直接オリジナルのクラスを追加している(そしてそのせいで最大にバグを引き起こしている)実装を見たんだけども、 こういう手法ってかつては一般的だったの? どう考えてもアンチパターンな気がするんだけども
276 名前:デフォルトの名無しさん [2018/07/31(火) 10:22:26.10 ID:+/oTEV5Ja.net] >>263 よくわからんが日本語キーボードは「め」が「/」で「ろ」が「\」ではないか?
277 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 10:33:30.64 ID:hozPgbYqa.net] 日本語変換でコード打つなら欧米人はどうやって打つんだろうか? 基本プログラミング時は日本語変換はOFFだ コメントや出力文字列で使うくらい
278 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 10:36:07.86 ID:hozPgbYqa.net] >>264 いや、普通の思考ならパッケージ分けると思う ズボラし過ぎだろう
279 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 11:20:13.29 ID:DldqvCwIa.net] >>267 だよね。最終更新が2001年らしいから、その時代には普通だったのかもしれないと思った。 そうじゃないなら遠慮なく怒れるわ。ふざけんなナメた実装してんじゃねえよ無能。
280 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 11:28:34.08 ID:DldqvCwIa.net] ちなみにおそらく意図としてはpackage privateなクラスやプロパティを直接触りたかったんだろうな、と。 publicになってないものを直接触らなくちゃいけなくなった時点で根本的に設計間違えてるって気づけよ、、
281 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 15:23:33.80 ID:K11t53A/0.net] 気づいたときには時すでにお寿司
282 名前:222 mailto:sage [2018/07/31(火) 19:36:06.06 ID:M5dn2TAr0.net] >>236 たのしいRuby 第5版、2016 みんなのPython 第4版、2017 この2冊は双子。 ただし、Pythonの方が難しいから、先にたのしいを3回読むこと。 たのしいをみっちり勉強すると、みんなのがスラスラ読める Pythonで考えて、Rubyに変換するよりも、 Rubyで考えて、Pythonに変換する方が簡単 「たのしいRuby」「スッキリわかる Java入門 第2版」 この2冊をみっちり勉強すると、基礎体力が付いているから、太郎本も読める Kotlinスタートブック -新しいAndroidプログラミング、長澤 太郎、2016 ただし、Android の勉強のほとんどは、フレームワークの勉強。 言語じゃないから、言語を勉強しても、何も作れない! だから、Rails などのフレームワークをやっていない人は、大変。 製品を作る全過程がわからないから Java 土方は、製品の一部分しか作らないから、全体像を知らない
283 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 20:22:10.38 ID:rMUR8HCB0.net] とすると、推奨本をしっかり読みこんだのち Railsを学ぶといいということでしょか?
284 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 20:32:17.55 ID:AgEH6KDfM.net] 明確な目標があるなら普通にそれをやるべき 勉強本マニアになったところでしょうがない
285 名前:デフォルトの名無しさん mailto:sage [2018/07/31(火) 20:34:06.22 ID:rMUR8HCB0.net] ありがとうございます! とりあえず、2冊
286 名前:テキストを読んだので、アプリ作れるか試してみます! [] [ここ壊れてます]
287 名前:222 mailto:sage [2018/08/01(水) 00:34:44.18 ID:GZaAdjmn0.net] フレームワークを勉強する定番は、 無料のRails チュートリアル
288 名前:デフォルトの名無しさん [2018/08/01(水) 20:49:51.16 ID:WDXOLOCva.net] フレーム枠
289 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 03:15:06.62 ID:fAfw4oAh0.net] 16進数について教えて下さい 2進数は入門サイト等見てなんとなく分かってきましたが、16進数が分かりません 0x000FF1 これは10進数にするといくらなんでしょうか?解読の仕方も教えてほしいです
290 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 03:51:34.23 ID:vClc7nAi0.net] >>277 n進数というのは一桁でn個の値を使えるということで、16進数なら1桁の中は16種類の文字を数値ということにして扱う。 一般的な10進数だと 0 〜 9 までしかなくて足りないので A 〜 F も一桁の数を表す事にして1桁で16段階を表せるようにする。 1桁で 0 〜 F が10進数の 0 〜 15 に相当する。一つ上の桁の 10 は10進数だと16になる(16^1ということ)。 もう後は算数の問題なのでわかるよな。 0x000ff1 は 15 * 16^2 + 15 * 16 + 1 = 4081 だ。
291 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 04:55:14.62 ID:fAfw4oAh0.net] >>278 すいません、ありがとうございます。 0x00FFF1だったら 15*16^3 + 15*16^2 + 15*16 +1 こういう感じで合ってますか?理解できたかもです><
292 名前:デフォルトの名無しさん [2018/08/02(木) 09:38:59.03 ID:Cp7uV85Za.net] >>279 そうそう。それで良い。
293 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 12:14:47.15 ID:yvP4ulwr0.net] 16進すうを、2しん数に直してみれば? 0xAF → 0b1010_1111 A=10, F=15 (NG ワードで書き込めないから、変な文章になった)
294 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 12:19:40.59 ID:dCoTR4Ex0.net] 2進数で説明しようとすると、なぜかNGワードになるな・・・
295 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 12:22:24.78 ID:dCoTR4Ex0.net] >>277 2進を理解しているのなら、16進を2進に変換すると足し算だけで出来る 16進:00 0F F1 2進:1111 1111 0001 2進はただの2^nのフラグなんで、 (2048 + 1024 + 512 + 256) + (128+64+32+16) + (1) =4081 将来的にbit演算でANDとかORとか右シフトとか左シフトとかする時は、2進で考えた方が楽
296 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 13:12:11.32 ID:lJdnLKf/d.net] まぁ2進数も16進数もあまり10進数に変換したりはしないよな
297 名前:デフォルトの名無しさん [2018/08/02(木) 13:34:49.36 ID:Cp7uV85Za.net] そうだな。むしろ10進のままだと分かり辛くて16進に変換する方が多いかな。
298 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 17:01:41.94 ID:0VvnPUup0.net] 昔は0からFまでビットパターンがすっと出てきたが、もうすっかり忘れてしまった。
299 名前:デフォルトの名無しさん [2018/08/02(木) 17:32:08.59 ID:TzqUENB30.net] case0と4と8のrandがエラーになります アドバイスください https://ideone.com/2uM5q1
300 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 18:39:23.05 ID:0VvnPUup0.net] >>287 aとbが0から3で、かつ同じ数字でないという条件なら switch (a+b) case (1) return 2 ; case (2) return 1; case (3) return 0;
301 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 18:40:28.63 ID:0VvnPUup0.net] 間違い。0から3じゃなくて0から2ね。
302 名前:デフォルトの名無しさん [2018/08/02(木) 19:06:35.74 ID:SFe9zIxEa.net] >>287 言語は何?Javaではないよね?見た感じCのようだが。 C言語の質問はC言語のスレでするように。ここは Java のスレだ。 まあだいたいの Java プログラマはCもわかるとは思うがここに書いたらスレチだ。 Javaの情報を求めるものにはノイズにしかならない。
303 名前:デフォルトの名無しさん [2018/08/02(木) 19:50:05.85 ID:J3O8/chO0.net] >>290 黙れ無能
304 名前:デフォルトの名無しさん mailto:sage [2018/08/02(木) 20:03:56.37 ID:dPAstyc30.net] Cに見えるんだってwww
305 名前:デフォルトの名無しさん [2018/08/02(木) 20:50:37.59 ID:J3O8/chO0.net] >>287 できまちた https://
306 名前:paiza.io/projects/Gscp1N0GhBv_HhDZj_f_YQ ・randに()がついてない ・you = ans 代入になってる を修正したらok [] [ここ壊れてます]
307 名前:デフォルトの名無しさん [2018/08/02(木) 21:10:07.77 ID:J3O8/chO0.net] >>271 ファイルのダウンロードについて教えてください CSVファイルを動的に作成してそれをダウンロードする機能を 作成しているのですが、サーバのメモリが少なくてメモリに 出力するとメモリーオーバーフローのエラーが発生します そこでCSVファイルを一旦HDDに出力してそれをレスポンスとして 返そうと思うのですが、ダウンロードの途中に中断されたとか ネットワークエラーが起こったときに一時ファイルがサーバに残ってしまい いずれストレージを圧迫するのではないかと危惧しています このようなときはどのように実装すれば良いのでしょうか? 一時ファイルのクリーニングをどうやれば良いのか教えて欲しいです 他に良いやり方をご存知でしたら教えて欲しいです どうぞよろしくお願いいたします
308 名前:デフォルトの名無しさん [2018/08/03(金) 00:55:46.70 ID:98gPvf7X0.net] >>294 CSVファイルを特定のディレクトリ以下に毎回新しいファイル名で作る事にして、 新しいファイルを実際に作り始める直前にそのディレクトリ以下の古いファイルを 削除する、なんてのどう? 時間で制限すると短時間に沢山リクエストが来た時にまずいという場合は更に ファイル数でも制限して新しいファイルが100個以上残らないようにするとかね。 あと、ファイルの内容が同じなら古いファイルのタイムスタンプを更新して新たに 作ったことにして実際に新たに作った方はすぐ削除するとかね。同じ内容の CSVになる事が事前に与えられたパラメータからわかるのであれば最初から 作らないっていう手もある。
309 名前:デフォルトの名無しさん [2018/08/03(金) 06:08:02.22 ID:KD3tz5Tj0.net] >>295 ありがとうございます
310 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 10:43:18.14 ID:ioCor75Ha.net] >>296 CSVを作成し始めた時点でテーブルにファイル名等々を保存、レスポンスを返したらそのレコードに正常終了のフラグを立てて、ファイル本体は削除 任意のタイミングでそのテーブルを舐めて、正常終了にならないまま時間が経ってるCSVはファイル削除してデータ上は失敗ステータスに更新 という実装をしたことがある。メリットとしてはどういうCSVがいつ失敗したのか把握しやすい
311 名前:デフォルトの名無しさん [2018/08/03(金) 16:53:38.35 ID:X+nM2ZWla.net] >>287 俺が Kotlin で大幅に書き換えてやったから参考にしなさい。 無駄な処理はガバッと削除したので小さくなった。 https://paiza.io/projects/so9F6hmbk2mnHO_KKsg85Q
312 名前:デフォルトの名無しさん [2018/08/03(金) 19:41:38.60 ID:GOZ9L8DI0.net] >>297 ありがとうございます
313 名前:デフォルトの名無しさん [2018/08/03(金) 19:45:26.78 ID:GOZ9L8DI0.net] >>298 えげつない記述力ですね
314 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 19:57:48.67 ID:seFAJe100.net] // ドアが3つならどのドアをオープンしたかは // 求める必要がないので省略。 これだめだろ そんなこと言ったら変更ありなしで固定確率の結果返せばいいじゃん
315 名前:デフォルトの名無しさん [2018/08/03(金) 20:21:23.49 ID:X+nM2ZWla.net] >>301 最初は馬鹿正直に作ったのだがオーブンするドアを求めても表示しないのなら無駄になることに気づいたんだよ。 ということは処理そのものが無駄だと。 ということで人力で超最適化。
316 名前:デフォルトの名無しさん mailto:sage [2018/08/03(金) 20:52:06.74 ID:seFAJe100.net] 多少頭がいいばっかりに火傷するタイプだな(遠い目
317 名前:デフォルトの名無しさん [2018/08/04(土) 00:45:40.61 ID:2zclIjyW0.net] ドア開けバージョンはこれだ。結果を毎回出力するので出力が多い。 https://paiza.io/projects/BC39iPHBLiGoCzaRE03jOg
318 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 09:43:44.1
] [ここ壊れてます]
319 名前:6 ID:+vznLLf60.net mailto: ついでに最終選択ドアも出力してください [] [ここ壊れてます]
320 名前:デフォルトの名無しさん [2018/08/04(土) 17:19:57.47 ID:2zclIjyW0.net] ドア変更がある場合に変更後のドアも出すならこんな感じか。 https://paiza.io/projects/LLQwJ1l5cFMab6otYcI74A
321 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 17:51:43.93 ID:+vznLLf60.net] println("[$i] You=$you, Open=$opn,${if (change) " You2=${changeDoor(you, opn)}," else ""} Ans=$ans, $wlstr") エレガント?なコードがちょっと要件に沿うよういっただけで一瞬でエディタもバグる超スパゲッティに てかkotlinきめえw
322 名前:デフォルトの名無しさん mailto:sage [2018/08/04(土) 17:58:42.48 ID:2zclIjyW0.net] >>307 ${} を入れ子にしたからな。外にも出せるよ。Java と同じ String の連結で + も使える。
323 名前:デフォルトの名無しさん mailto:sage [2018/08/06(月) 12:40:16.38 ID:fu+3+K8Ia.net] >>307 そりゃわざとキモくなるような書き方してるからだろw
324 名前:デフォルトの名無しさん [2018/08/07(火) 01:32:48.21 ID:oBkDl7ym0.net] 色々変えて見やすくなった。 https://paiza.io/projects/Jxs2ws2XzZ8MrquYAjYMFg
325 名前:デフォルトの名無しさん mailto:sage [2018/08/07(火) 16:08:14.49 ID:VuYJRj/9M.net] この夏java極めようと思っていたのですがもうオワコンなんですか…? Androidエンジニアになりたいです
326 名前:デフォルトの名無しさん [2018/08/07(火) 17:21:08.43 ID:r/NXRNz/a.net] そんなあなたに Kotlin 結局は Java 覚える事になりそうだけどなw
327 名前:デフォルトの名無しさん mailto:sage [2018/08/08(水) 02:39:32.48 ID:o1XsaDKS0.net] Cに書き直してみた。 https://paiza.io/projects/8aPAf5jUp4-nIZ_T6iS-tw
328 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 09:09:40.78 ID:GW9IT4yi0.net] kotlinってjava覚える必要ある? 結局はインスタンスやメソッドの取り扱い方を覚えるだけでしょ java→kotlinといより kotlin→場合によってjava調べる的な
329 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 09:17:01.61 ID:4t5DQamya.net] 他のOO言語の経験があるならあえてJavaやらなくてもサンプルコードくらいはなんとなく読めるだろうから 経験ないならいきなりKotlinはまともな初心者向けの書籍ないから無理
330 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 09:54:41.39 ID:4ie0qQxWM.net] 長澤さんのKotlin本はどのくらいのレベルが対象?
331 名前:デフォルトの名無しさん mailto:sage [2018/08/10(金) 12:55:08.73 ID:xghqpyUKa.net] Twitterで本人に聞いてみれば
332 名前:デフォルトの名無しさん [2018/08/13(月) 03:04:53.34 ID:hqkLiaZ40.net] コメント化ってどんな時に使えばいいんですか? 今やってるプロジェクトで一切コメントを置いてないせいでコードがスパゲッティから毛糸のほつれに進化しかけています。 //と/**/はどっちの方がいいのか、どのタイミングで入れたらいいか等が知りたいです
333 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 08:10:45.77 ID:CiYwNC/na.net] メソッドやクラスにはできるだけJavaDocコメントを付けて、そのメソッドやクラスの説明を書く そして原則として、メソッドの中にはコメントは極力書かない 説明を一言書きたくなるようなパッと見何やってるか分かりにくい部分は、コメントの代わりに別のメソッドとして切り出してメソッド名で説明する それを徹底してればprivateメンバなんかはいちいちJavaDocコメント書かなくても問題にはならない
334 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 08:23:54.17 ID:HTY6GtFCa.net] >>318 「リーダブルコード」という、素晴らしい名著があるからそれを読んでみることをおすすめする。
335 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 10:15:39.16 ID:9hQNlq880.net] 企業によるアンチ規約あるあるだな
336 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 15:56:23.52 ID:8BISUvphd.net] ローカル変数に引数を代入する
337 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 16:38:50.33 ID:9hQNlq880.net] 参照でなければ引数自体がローカルなんだがw
338 名前:デフォルトの名無しさん mailto:sage [2018/08/13(月) 17:00:44.15 ID:3xCIU7sj0.net] クリップボードについて質問です。 Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); Transferable object = clipboard.getContents(null); String s = "Test"; // 保存するテキスト StringSelection selection = new StringSelection(s); clipboard.setContents(selection, null); String str = ""; try { str = (String)object.getTransferData(DataFlavor.stringFlavor); } catch(UnsupportedFlavorException e){ e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } System.out.println(str); まずエディタか何かで人力でクリップボードに何かの文字列をコピーします。例えば"ABC"をコピーして、 このコードを走らせると ABC と表示されます。そしてそのままもう一度このコードを走らせると、今度は Test と表示されます。ABCと表示されるのは何が悪いんでしょうか?
339 名前:デフォルトの名無しさん [2018/08/13(月) 21:22:00.43 ID:wBJkicYb0.net] >>324 なるほど、完全に理解した clipboard.setContents(selection, null); これのあとに Transferable object = clipboard.getContents(null); これを書けばおk
340 名前:デフォルトの名無しさん [2018/08/13(月) 23:25:56.73 ID:z6+TJcGX0.net] >>324 そのプログラムだとこうなってるよね。 1. 2行目の getContents() でエディタでコピーした "ABC" が取り出される。 2. setContents() で "Test" がクリップボードにセットされる。 3. 1で取得した object の中身を取り出して出力する。(取り出されるデータは "ABC")。 "ABC" が出力されて当然の作りになっている。 上記の3の所で "Test" を取り出したいなら 2 の直後で 1 の処理をしなければならない。
341 名前:デフォルトの名無しさん [2018/08/14(火) 07:07:01.81 ID:IYCmiTRH0.net] Listを複数のリストに分割したいのですがやり方がわからず教えていただきたいです // たとえば要素の数が10のリストがあったとして List<Integer> list = new ArrayList<>(); for (int i = 0; i < 10; i++) { list.add(i); } // それを4つのリストに要素の数ができるだけ均等になるように分割したいです List<Integer> list1 = new ArrayList<>(); // <- 要素は0,1,2 List<Integer> list2 = new ArrayList<>(); // <- 要素は3,4,5 List<Integer> list3 = new ArrayList<>(); // <- 要素は6,7 List<Integer> list4 = new ArrayList<>(); // <- 要素は8,9 どうぞよろしくお願いいたします
342 名前:デフォルトの名無しさん [2018/08/14(火) 07:31:28.19 ID:IYCmiTRH0.net] >>327 自己解決しました、もう良いです 返信しないでください
343 名前:デフォルトの名無しさん mailto:sage [2018/08/14(火) 09:51:15.67 ID:nGrU4rwG0.net] >>325 ありがとうございます。それはうまく行きました。しかしごめんなさい。どうも私が問題をちゃんと把握出来ていなかったようです。 try { Thread.sleep(7000); } catch (InterruptedException e1) { // TODO 自動生成された catch ブロック e1.printStackTrace(); } Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); Transferable object = clipboard.getContents(null); String str = ""; try { str = (String)object.getTransferData(DataFlavor.stringFlavor); } catch(UnsupportedFlavorException e){ e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } System.out.println(str); どうもJTextField が関係しているらしいです。このプログラムにはテキストフィールドがいくつかあるのですが、 そこに"ABC"と入力し、それを選択、Ctrl+C でコピーします。 そしてこのコードを走らせ、スリープしている7秒の間に別のエディタで Test をクリップボードにコピーします。 すると出力が ABC となります。7秒の間にエディタ上でペーストするとちゃんとTestがペーストされます。 ABCをコピー、続けてTestをコピーしてからこのコードを走らせるとちゃんとTestとでます。 ABCをエディタでコピーした時はこの症状は出ません。
344 名前:デフォルトの名無しさん mailto:sage [2018/08/14(火) 22:37:46.47 ID:w7/teWcla.net] public static void main()って メソッドなんですか?
345 名前:デフォルトの名無しさん mailto:sage [2018/08/14(火) 22:44:24.53 ID:z3VJK4Uca.net] メソッドです。 Javaで書かれたプログラムはMainクラスのmainメソッドを実行すると決まっています。
346 名前:デフォルトの名無しさん mailto:sage [2018/08/14(火) 23:13:33.44 ID:w7/teWcla.net] なるほどkotlinのmain ()関数のようにエントリポイントになっているんですね コンストラクタもメソッドですか?
347 名前:デフォルトの名無しさん mailto:sage [2018/08/15(水) 00:49:57.59 ID:
] [ここ壊れてます]
348 名前:BN2igdfy0.net mailto: >>331 クラス名は Main じゃなくてもいいんだよ。 [] [ここ壊れてます]
349 名前:デフォルトの名無しさん mailto:sage [2018/08/15(水) 05:08:46.27 ID:JGyCTF+Aa.net] >>332 どちらもその理解で合ってる
350 名前:デフォルトの名無しさん mailto:sage [2018/08/15(水) 05:10:31.45 ID:JGyCTF+Aa.net] >>333 あ、はい
351 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 08:36:03.18 ID:nBIOAicW0.net] すいません教えてもらってjdkは何とか導入成功したんですが eclipseってやつと日本語化のを導入してコードを実行しようとしたら 選択は起動できず最近の起動もありません。とエラーが出て実行できません。何度か再インストールしましたが結果変わらず。 何が原因なのでしょうか?導入で参考になるサイトあれば教えてほしいです 後JDKだけじゃjavaのコードを実行とか出来ませんよね?eclipseってやつを導入して初めて意味があるものって認識で大丈夫ですか・ そこら辺もかなり曖昧なのですが…
352 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 09:15:49.93 ID:z0v/PTWta.net] >>336 間違ってる。JDKが入っていればあとはメモ帳でjavaのプログラムを書いて実行できる。 eclipseはあくまで超高機能なメモ帳だと思ってればいい。 で、そのeclipseなんだけど、そもそも古くて昔から使ってる人以外はもうほとんど誰も使ってない。 理由は今まさに君が直面しているように、自分の期待する動きをさせるのがとても大変だから。あと重い。 今からプログラムを始めるならIntelliJ IDEAの無料版か、Android Studio (無料)を使うことをお勧めする。 どちらも基本的には同じメーカーが作ってるほぼ同じものだけど、ただjavaを書くだけならIntelliJの方が余計なものが入ってなくていいかもしれない。
353 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 09:18:39.00 ID:z0v/PTWta.net] >>336 IntelliJの無料版のインストールをしてる記事も見つけたから貼っとくね。 https://qiita.com/syu_chan_1005/items/46f94412f7493d6e60eb
354 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 11:06:42.84 ID:nBIOAicW0.net] >>337 レスありがとうございます メモ帳でもプログラムの実行って出来るんですか。テキストドキュメントですよね? コンパイルとかも勝手にしてくれるなら一番軽くて楽そうですね >>今からプログラムを始めるならIntelliJ IDEAの無料版か、Android Studio (無料)を使うことをお勧めする こちらの方も特性まで教えていただきありがとうございます。調べてみます 後、C++やろうと想ってvisualstudio入れてあるんですけど、これはjavaでは使えないですよね
355 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 11:54:47.10 ID:nBIOAicW0.net] https://gyazo.com/e3fe0cd9ac22553f62241cbe9285f1d1 手順IntelliJ IDEAの構成のここまで出来たんですが説明にある(Project name)のついたフォルダの横にある▶を押して見ましょう。 というのが見当たらず詰みました;どこにあるのでしょうか
356 名前:デフォルトの名無しさん [2018/08/16(木) 13:00:59.59 ID:yLNqa6vha.net] >>340 それのプロジェクト名は untitled だからそれの左横。 ていうかプロジェクト名を自分で入力しないで先に進んじゃったようだね。
357 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 13:39:19.41 ID:nBIOAicW0.net] >>341 おかげさまで見つかりました。ありがとうございます! フォントもdokojavaよりかっこよくモチベーション上がりそうです Run押したら下に結果表示されたので全て導入うまくいってそうです 本当にありがとうございます
358 名前:デフォルトの名無しさん mailto:sage [2018/08/16(木) 16:06:09.21 ID:OpTecYpPa.net] うまくできたようで良かった。 IntelliJは本当に素晴らしくて、入力補完も神がかってるから勉強にはちょうど良いと思う。
359 名前:デフォルトの名無しさん mailto:sage [2018/08/17(金) 13:27:44.81 ID:GpawSU9CM.net] aかbかどちらか値が入ってる方を使いたく defaultIfEmptyという便利なものを見つけたのですが aもbもどちらも初期値というわけではないんですよね 初期値設定以外で使うのは変ですか?
360 名前:デフォルトの名無しさん [2018/08/18(土) 00:59:17.77 ID:jNUruXDd0.net] 言語そのものじゃない質問ですが、IDE(Android Studio とか IntelliJ IDEA)使ってても、ビルドツールって必要なんでしょうか? もしくは有用なんでしょうか?
361 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 16:56:22.20 ID:ouPv64vz0.net] 今まで Eclipse からしかプログラムを走らせたことがなかったのですが、昨日プログラムをエクスポートしてノートPCに持って行ったら、 A JNI error has occurred, please check your installation and try again というエラーが出ました。色々試行錯誤しているうちに、「実行環境JREの使用」の問題らしいと分かりました。 JavaSE-9だとエラーになって、JavaSE-1.8だと大丈夫です。 他の人にプログラムを使ってもらう時とか、どうすればいいんでしょうか? プロジェクト固有のJREの使用という項目もありますが、このあたりは何を意味してるんでしょうか?
362 名前:デフォルトの名無しさん [2018/08/19(日) 17:23:49.79 ID:Kq0ObHsK0.net] >>346 スタックトレースを見ないとエラーの原因がわからないよ 原因がわからないと解決策もわからないよ コマンドから実行したらスタックトレースが出力されると思うから それを教えてちょんまげ
363 名前:デフォルトの名無しさん mailto:sage [2018/08/19(日) 17:41:46.22 ID:KG8+gtiYF.net] JREが9ならJDKも9 でコンパイルしなければね
364 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 19:57:08.28 ID:4jiZ931E0.net] >>347 Error: A JNI error has occurred, please check your installation and try again Exception in thread "main" java.lang.UnsupportedClassVersionError: handymanPackage/HandymanBMain has been compiled by a more recent version of the Java Runtime (class file version 53.0), this version of the Java Runtime only recognizes class file versions up to 52.0 ノートPCがwindowsアップデートでクラッシュし、再インストールという惨事に見舞われてしまってレスが遅くなってしまいました。 JREは昨日初めてインストールしたのに、何でこんなことになるんでしょうか?最新版じゃないんでしょうか?
365 名前:デフォルトの名無しさん [2018/08/20(月) 20:20:40.35 ID:7cywDiIN0.net] >>349 翻訳 | handymanPackage / HandymanBMainはJava Runtime(クラスファイルバージョン53.0) | のより新しいバージョンでコンパイルされていますが、このバージョンのJava Runtimeは | クラスファイルバージョンを52.0までしか認識しません バージョン53.0はJava9 バージョン52.0はJava8 Java9以上のJDKでコンパイルしたものを Java8のJREで実行しようとしてるんじゃないかな 対応策は、実行環境にJava9を入れるか もしくは、Java8でコンパイルするかってところ 他の人にプログラムを作ってもらう時は実行環境のバージョンと 同じかそれよりも古いバージョンでコンパイルしてもらえば良い
366 名前:デフォルトの名無しさん mailto:sage [2018/08/20(月) 20:41:39.99 ID:4jiZ931E0.net] >>350 だいたい分かりましたが、よく分からないのが1.8の次が何で9なんでしょうか? 1.9とか2なら分かるんですが、何でいきなり9になるんでしょうか?
367 名前:デフォルトの名無しさん [2018/08/20(月) 21:53:30.11 ID:7cywDiIN0.net] >>351 Java9からバージョンの形式が変わったんだよ 変えられた理由は ・メジャーアップデート ・マイナーアップデート ・セキュリティアップデート を区別しやすくするため
368 名前:デフォルトの名無しさん [2018/08/20(月) 23:26:30.62 ID:D6aa3xEz0.net] ソースコード読むときにインスタンスなのかメソッドなのかがすぐに分からないんだけど、 ソースコードを読むときのコツみたいなものってありますか?
369 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 00:31:47.69 ID:kxzeRRBS0.net] VSCode などでマウスホバーすれば、宣言が表示されるのでは?
370 名前:デフォルトの名無しさん mailto:sage [2018/08/21(火) 12:02:11.35 ID:5hCHO/+ya.net] java本格入門って本を勧められたのですが読んだことある方います?感想が聞きたいです
371 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 08:02:55.21 ID:9OhLuljd0.net] すいませんスッキリわかるjava入門をやってるのですがファイルの分割の項が 環境が本
372 名前:ニ違うので分かりません; intelli IDEAを使ってるのですがどのようにすればいいのでしょうか? [] [ここ壊れてます]
373 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 08:20:12.87 ID:9OhLuljd0.net] 今までずっと閉じるを使って来たので保存方法も分かりません ググっても自動保存をオフにするとかそういう記事しか出てきません; どこをいじればいいのでしょうか https://gyazo.com/62228b87ec37fdce11d0b0ebfae7626d
374 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 09:28:06.86 ID:Q+aoBvc3M.net] Javaはビルド周りが腐っててファイルの配置やパスの設定に対してかなりセンシティブなんだよ そのへんで嵌るとJavaに慣れてる人でも結構厄介だから、諦めて本の通りの環境を用意したほうが結果的に時間の節約になる 今の君の経験値で取り組むべき優先度の高い問題ではないし、ましてファイルの保存方法すら類推できないレベルでは、 今目の前の問題だけ付け焼き刃で解決できたところで今後同様の問題にぶち当たったときに自分で解決できるとは思えない
375 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 20:01:02.13 ID:9OhLuljd0.net] 多分自己解決しました save allを押したのにPCから何も応答がないので出来てないのかと思ってました
376 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 20:16:08.41 ID:jFi7Ee350.net] 普通に左側にProjectペインを出してファイルを作りたい場所の上で右クリックするだけでしょ。 そもそもパソコンをあまり使ったことがない?
377 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 21:51:35.73 ID:9OhLuljd0.net] いえ、3年使ってます ただゲームくらいでしか使ってなかったのであまり分かりません;
378 名前:デフォルトの名無しさん mailto:sage [2018/08/23(木) 22:36:06.37 ID:jFi7Ee350.net] ああ、まあそれじゃあしょうがない とりあえず大抵のことをやっても壊れはしないから、調べたり聞いたりする前に適当にいじってみるのも大事だよ それで勘みたいなものを覚えていくものだから
379 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 03:33:02.64 ID:5X50Ptai0.net] パソコンは壊れないけど環境はよく壊れる
380 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 07:43:07.07 ID:sP/ywaCGa.net] そうしたらそれを直すのもまた勉強
381 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 08:23:38.59 ID:0hzqlpOdM.net] 説教臭いスレだな
382 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 13:36:26.24 ID:J3AVJGwl0.net] スッキリ分かるjava入門の多態性の説明がよくわからないんですが 親クラス型の配列を作って派生先クラスのインスタンスを代入して配列を回して一気に似たような処理を簡単に記述する のが多態性って認識であってますか? もうちょっと分かりやすく説明してる所あったらお願い致します
383 名前:デフォルトの名無しさん [2018/08/24(金) 13:45:30.50 ID:MEArwTdwa.net] >>366 ま、配列に入れて使うとは限らないが親クラスまたはインターフェースの型でインスタンスを扱えるって事だよ。 こういうのは実装を隠したい時にも使える。
384 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 14:33:37.18 ID:J3AVJGwl0.net] >>367 ありがとうございます abstract,interfaceのクラス型でインスタンスを作れないから、このやり方を使って インスタンスを扱えるようにするってことですかね? 親の所にないメソッドは使えないみたいなので利便性がよくわかりませんが・・
385 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 14:41:49.42 ID:ZgK6e0Tb0.net] cat.cry dog.cry 猫は猫のように鳴き、犬は犬のように鳴く。 親は親のように泣き、子は子のように泣く 自動的に実体に応じた、動作をする
386 名前:デフォルトの名無しさん mailto:sage [2018/08/24(金) 14:59:55.60 ID:l959lfiYd.net] >>368 そこが最大の利点でだな 同じ親を持つ個別のクラスを比較して比較したりとか ファイルのオープン/クローズとデータベースのオープン/クローズを使う側は同じ処理で使えるようにするとかが出来る
387 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 06:57:20.11 ID:b/emt3jR0.net] >>370 ありがとうございます この
388 名前:{自体があまり計算問題を使って解説してないのでメリットがパッとしませんが とりあえず何となくで覚えとこうと思います [] [ここ壊れてます]
389 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 07:56:40.41 ID:BMpD23L5a.net] >>371 それはJavaというかオブジェクト指向の特徴なんだけど、いずれもうちょっと複雑なことをするようになれば自然にメリットがわかるよ。 今はそんなもんか程度の理解でいい。
390 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 08:03:03.50 ID:b/emt3jR0.net] すいませんフィールドにnullなんて入れてないのにnullって表示されるんですけど どこ直せば正常に名前が呼び出されますか? https://ideone.com/lfTf9n やっぱりあまり理解できてなかったかもです;
391 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 09:19:55.50 ID:EHvwSMrp0.net] >>373 これの見方がよくわからんのだけど何がnullになってるの?
392 名前:374 [2018/08/25(土) 10:26:08.92 ID:EHvwSMrp0.net] 自分もjava勉強中なので試しに作ってみた これで動いたよ 違うところだけ書いてみる public class Hero extends Caractor { Hero(String name){ this.name = name; } public void attack(Caractor m){ System.out.println(this.name + "のこうげき!"); System.out.println(m.name + "に10のダメージを与えた!"); m.hp -=10; } } public class Slime extends Caractor { Slime(String name, int hp){ this.name = name; this.hp = hp; } public void run(){ System.out.println(this.name+"は逃げ出した!"); } } あとはだいたい同じです。
393 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 10:36:53.08 ID:EHvwSMrp0.net] あ、あとキャラクターのフィールドがprivateになってるからprotectedにしたら動いたよ これが綺麗なコードかはわからないけどとりあえずどうでしょうか
394 名前:デフォルトの名無しさん mailto:sage [2018/08/25(土) 11:33:36.67 ID:ldpy0bgQ0.net] >>373 継承先のクラスで同じ名前でフィールドを定義しても別のフィールドになる attackメソッドにSlimeのインスタンスを入れているけど Monsterクラスのnameを見てるのでSlimeに設定したnameは表示されないでnullが表示される
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] >>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 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています