Java入門・初心者質問スレ Part.5©2ch.net

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん 転載ダメ©2ch.net2017/09/29(金) 17:53:25.24ID:XnizQSCA
Java初心者のためのスレッドです。

※前スレ
Java入門・初心者質問スレ Part.4
http://mevius.2ch.net/test/read.cgi/tech/1498828456/

0952デフォルトの名無しさん2017/12/13(水) 12:34:11.76ID:+Pd2/l4g
>>950
可能。

ていうか考えてないでやれってレベルだと思うが、そこまで配列のことがわからないレベルなのか?

0953デフォルトの名無しさん2017/12/13(水) 20:01:33.50ID:feBdtpVD
学校で出た課題をwarファイルの形で家に持ち帰り作業後再度学校で開いたところエラーで全く開けなくなりました
動的webプロジェクトなのですが、jspで同プロジェクトもmodelパッケージ内のjavaファイルインポートが出来ずにエラーを吐いています。
再度家に帰ってみると普通に開く始末。学校でも家でもeclipseを使っています。原因としてどんなことが考えられるでしょうか。

0954デフォルトの名無しさん2017/12/13(水) 20:02:24.40ID:feBdtpVD
同じプロジェクトも→同じプロジェクトの

0955デフォルトの名無しさん2017/12/13(水) 20:39:22.98ID:6RipZ3Bg
> warファイルを持ち帰り
この時点でおかしいからどうでもいい
解決する必要なし
eclipse使ってるならワークスペースもごと持ち運べばいい

0956デフォルトの名無しさん2017/12/13(水) 21:07:10.44ID:feBdtpVD
warファイルで持ち運びダメだったんですか
エクスポートで簡単に作れるしチーム間で受け渡ししたりするのに使ったりしてたのですが……

0957デフォルトの名無しさん2017/12/13(水) 21:13:19.01ID:6RipZ3Bg
github使えば

0958デフォルトの名無しさん2017/12/14(木) 01:48:06.73ID:bGPtLfUR
学校と家のEclipse だろ

両方のEclipseで認識できる、
プロジェクトフォルダ・ワークスペースごと持ち運ぶべき

war とは、サーバーに配置するように、変換された書庫。
開発中のフォルダ階層とは、異なる

0959デフォルトの名無しさん2017/12/14(木) 01:56:43.63ID:QpnWgrRB
>>950
添字は zero origin だから、label[0] から label[4] のようになる。

0960デフォルトの名無しさん2017/12/14(木) 03:40:16.00ID:H/S0UKdu
コマンドプロンプトに
java -jar atm.jar
と入力しても、atm.jarにメイン・マニフェスト属性がありません、
と表示されてしまうのですが、どう対処すればよいでしょうか?

0961デフォルトの名無しさん2017/12/14(木) 12:22:40.90ID:ilEErt9I
>>960
jarを作るときに適切なマニフェストを指定する
jarとはアーカイブで中にマニフェストファイルが含まれていることが期待される
そこにはどのクラスのmainから始めるかなどが書かれてる
アーカイブを展開して探してみればいいよ

0962デフォルトの名無しさん2017/12/14(木) 22:06:53.34ID:bGPtLfUR
「java jar manifest」で検索!

0963デフォルトの名無しさん2017/12/14(木) 22:54:39.21ID:5BWwfj6A
DecimalFormat df = new DecimalFormat("#####") ;

これで5桁未満の数字を表示した時に左詰めになっちゃうんだけど
5桁未満の時は左はその分空白にして右詰めで表示したいんですがどうすればいいのでしょうか。

09649602017/12/14(木) 23:44:56.28ID:H/S0UKdu
>>961 >>962
やってみます。
ありがとうございました。

0965デフォルトの名無しさん2017/12/15(金) 01:17:56.31ID:i/+5VHc3
>>963
String.format("%5d", x) でやれば?

0966デフォルトの名無しさん2017/12/15(金) 18:45:00.26ID:RLTFESXZ
javaが3個存在してて
中身のある奴とかファイルが足りなり奴とか
パスが通ってるけど環境変数は作ってないとか

いったん綺麗に消してちゃんとしたいんですけど
アンインストールにあるアップデート消してから
インストーラーで削除して
残ってるjavaのフォルダを手動で消して
最後に?パスを消せばいいですか?

このパスを消す作業が一番怖いです

0967デフォルトの名無しさん2017/12/15(金) 18:53:05.47ID:PEAcDAlo
この訳のわからない文面は35歳か?

0968デフォルトの名無しさん2017/12/15(金) 21:15:53.42ID:lQx5kyAI
プロジェクト持ち運びの件だが、やっぱEclipseのバージョンも揃えたほうがいいのかな

家と会社で使ってるんだけど、会社での制定版がちょっと古いんだよね

0969デフォルトの名無しさん2017/12/15(金) 21:33:42.73ID:Tb0OcKpN
そろえられるものは全部そろえるの原則な気がする…
可能ならOSごとVMで持ち歩きたいぐらい

0970デフォルトの名無しさん2017/12/15(金) 21:46:58.38ID:qyzTygXP
もうAWSのWorkspacesでも使えよ
プロジェクトフォルダを家に持ち帰るようなお粗末な会社ならセキュリティ的にもその方が遥かにマシだ

0971デフォルトの名無しさん2017/12/15(金) 23:39:47.26ID:i/+5VHc3
>>966
よくわからんがとにかく全部アンインストールしろ。話はそれからだ。

0972デフォルトの名無しさん2017/12/16(土) 00:08:02.31ID:ccTSk315
>>966
正しくアンインストールすれば、環境変数PATH も、元に戻してくれないの?

0973デフォルトの名無しさん2017/12/16(土) 12:27:29.47ID:2+3GS8kh
基礎を理解してないやつはこれだから
IDEによる促成栽培は危険

0974デフォルトの名無しさん2017/12/16(土) 17:22:59.07ID:kbqZOSZW
java(eclipse)でメインから呼び出されるクラスを作成したのですが、
呼び出し元がまだ出来ていないので、自分のクラスのテストだけをしたいと思っていますが、
自分のクラスにはmainがないので実行できません。
テスト用にダミーのmainクラスを作ってデバッグしようかと思っておりますが
他に方法等があるのでしょうか?

0975デフォルトの名無しさん2017/12/16(土) 17:23:53.15ID:xdxhx7GN
junit

0976デフォルトの名無しさん2017/12/16(土) 17:26:09.67ID:YpuPdgcL
JUnitでテストケース書けばいい

0977デフォルトの名無しさん2017/12/16(土) 17:31:59.32ID:xdxhx7GN
学校出たあとデジタル土方として長くやっていきたいなら自動テストなんかに傾倒するのはお勧めしないけどね
代わりのmain書いてシコシコ手で実行してたほうがいい
現場の実態とのギャップにショックを受けて辞めたくなるから

0978デフォルトの名無しさん2017/12/16(土) 18:10:30.03ID:R5wdKqfC
自分用に書けばOK

逆に呼び出すクラスがまだなくてインターフェースだけ決まっていればmockito

0979デフォルトの名無しさん2017/12/16(土) 19:05:10.22ID:Bt/T1sYp
>>977
かつてそう思ってたが
テストツールでスタブを差し込む方法と
テストが現状に追随して死なないように書くコツがわかってから考えかわった

あれはいいものだ

0980デフォルトの名無しさん2017/12/17(日) 02:50:44.23ID:R741zDgD
質問です。
commons-langを使って作成したクラス、
https://ideone.com/PTi08F
をクラスパス付きでコンパイルし、それをテストしようと
https://ideone.com/vaqvJE
をクラスパス無しでコンパイルし、クラスパス無しで実行したら
例外が発生しました。
(下のクラスに)クラスパスを付けてコンパイル/実行しようとしても
上手くいきません。
どなたかアドバイスをお願いします。

0981デフォルトの名無しさん2017/12/17(日) 14:58:32.92ID:rjtVjcmj
>>975-979
974です。JUnitについて調べて見ます。ありがとうございました。
難しそうで、覚えるのに時間がかかりそうです

0982デフォルトの名無しさん2017/12/18(月) 16:07:16.27ID:+a7cb1uP
>>980
アドバイス?
エラーメッセージを読め
それでもわからないならエラーメッセージを含め
どうやったか、どうなったかを具体的客観的に書け

考えてくれる人に最大限の労力をかけさせたいならスルーしてくれ

0983デフォルトの名無しさん2017/12/18(月) 16:09:26.30ID:+a7cb1uP
どうなって欲しいかもだった

09849802017/12/18(月) 20:22:40.94ID:QPuoLlJ+
>>982-983
お手数をお掛けします。
(980の)上のコードは
javac -cp (省略);(省略) Bank229.java
で無事コンパイルできました。
下のコードも
javac -cp (省略);(省略) Main229.java
で無事コンパイルできました。
また、このコードは
java -cp (省略);(省略) Main229
で無事実行できました。
つまりキチンとやったら自己解決出来ました。
ありがとうございました。

0985デフォルトの名無しさん2017/12/19(火) 21:03:59.79ID:Nox9HERS
ビルドパスに追加したJAR同士のクラスの重複でエラーが出た。
追加する順番を変えてエラー回避したけど、根本的解決じゃないような。
姑息な解決策で、いつかまた問題が浮上しそうで怖い。
何十個もあるファイルから重複クラスを探すだけでも気が遠くなる。

0986デフォルトの名無しさん2017/12/19(火) 21:05:44.73ID:z1fMJoxx
パッケージ名をちゃんとしましょう

09879802017/12/20(水) 00:29:20.69ID:CrYve97q
たびたび失礼します。

https://ideone.com/QhI9r8
上記のコードのように、Bookクラスを一通りオーバーライドし、Mainクラスで
フィールドをあえて空にしてequalsメソッドで比較したら例外が発生して
しまいました。
きちんとfalseが返るようにしたいのですが、どのように対処すればよいでしょうか?

どなたかよろしくお願いします。

0988デフォルトの名無しさん2017/12/20(水) 03:01:20.68ID:7jCEWR4I
フィールドが null の場合に equals が例外を吐かないようにしたいのなら、
フィールドが null の場合は falseを返し、null でないときだけ equals で比較
すればいいのでは。

0989デフォルトの名無しさん2017/12/20(水) 08:10:41.79ID:lugKio2h

0990デフォルトの名無しさん2017/12/20(水) 09:32:03.96ID:qKaJgYX4
>>987
エラーの中見たら一発で原因解ると思うんだけど、
ちゃんと自分で考えたの?
色々考えて色々試してみたけどどうしても解決出来なくて聞きに来た感じでは無いんだけど。
「もう初心者は脱している、馬鹿にするな」とか豪語しておいてこれ自力で解決出来ないとか、職場にいたらぶん殴るレベルですよ?

解決方法は他の偉い人が丁寧に書いてくれているから、こちらから言うことはないんだけど、
35歳はその解決方法はちゃんと理解した?
「こうやればぬるぽにならないんだ、へー」ってコピペするだけだと、次に同じような問題に直面したときにまた解決出来ないという事態が発生するんだけど、大丈夫?
次に同じような問題発生して「分かりません、教えてください」とか言ったらやっぱりぶん殴るレベルですよ?

0991デフォルトの名無しさん2017/12/20(水) 09:59:01.39ID:mfpnsd3d
>>985
探すプログラム作れば?

あ、でも既に誰か作ってそうだな。

0992デフォルトの名無しさん2017/12/20(水) 14:10:20.54ID:Hytkl7Fo
>>985
バージョン違いとかなら、ファイルシステムのシンボリックリンクで必要なものを唯一のバージョンに見えるよう指すようにする

09939872017/12/20(水) 16:46:14.70ID:CrYve97q
>>988 >>989
回答ありがとうございます。

俺なりに修正してみましたのでよろしければご覧下さい。
https://ideone.com/e2hyln

>>989
難しい書き方をされますね。

>>990
本に書いてありませんでしたよ、こんなこと。
それをぶん殴るとか言われても困ります。

09949872017/12/20(水) 17:21:51.77ID:CrYve97q
修正しました。双方nullの場合はequalsはtrueを返すようにしました。
https://ideone.com/e2hyln
テストにおける網羅率100%です。

0995デフォルトの名無しさん2017/12/20(水) 18:26:12.47ID:G+HsRZSm
>>993
本に書いてある事しかできないなら向いてないからやめた方がいい

0996デフォルトの名無しさん2017/12/20(水) 20:37:01.18ID:hdiwc0BB
31掛けてるのってなんで?

0997デフォルトの名無しさん2017/12/20(水) 22:52:58.66ID:7jCEWR4I
>>995
なんかわかる気がする。
プログラマーでも致命的だけど、百歩譲ってプログラマーで生きていけても
エンジニアにはなれない。

てかプログラムに限らずあらかじめ定義された手順でしか物事進められ
なかったら終わってるべ。仕事だけじゃなく万事。

09989872017/12/20(水) 23:42:14.14ID:CrYve97q
>>996
本のサンプルコードを参考にしました。
31倍した後、フィールドのhash値を加えていました。

>>995
知識で、要求されている事を出来ないとなれば、常識で考えます。
それでも分からなければ、質問します。

0999デフォルトの名無しさん2017/12/20(水) 23:48:01.94ID:B/1LYJ5G
>>997
プログラマーからしてもお断りだよ
プログラムから状況を読みとろうともしないやつは邪魔なので来ないで下さい

コーダーなら相手してくれるんじゃない?

>>998
質問する前に調べな

1000デフォルトの名無しさん2017/12/21(木) 00:22:12.87ID:hxAUg2rz
Hash で、31を掛けるのは、「スッキリJava」を読んでいるのか

10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 82日 6時間 28分 48秒

10021002Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


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

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

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

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php

レス数が1000を超えています。これ以上書き込みはできません。