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


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

☆★Java質問・相談スレッド177★★



1 名前:デフォルトの名無しさん mailto:sageteoff [2016/03/15(火) 18:14:06.66 ID:9bB8/RTg.net]
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    pc11.2ch.net/hp/
Webプログラミング pc11.2ch.net/php/
をご利用下さい。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 (p)ttp://www.wikiroom.com/java/?path,classpath
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
・String に == は使うな。equals() を使え。※

質問時の心得
・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。
・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。

前スレ
★★Java質問・相談スレッド176★★ [無断転載禁止](c)2ch.net
echo.2ch.net/test/read.cgi/tech/1453305105/

802 名前:デフォルトの名無しさん mailto:sage [2016/06/02(木) 06:51:49.01 ID:n2zNmuVe.net]
>>798
内部でリダイレクトすりゃいいだけでしょ
直接ストリームを触らせる必要はない
Javaの基本的な設計思想として直交性を重視するというのがあって、
ストリームと同じようなメソッドを別のクラスのstaticメンバとして持たせるのは嫌だったんだろう
System.outはfinalフィールドではない(setOutがあるからね)ので外から直接代入できてしまうはずなんだけど、
なんとJavaの言語仕様で特別扱いされていてSystem.outやinだけはユーザーが代入できないという醜い仕様になっている
そこまでして直交性に病的に拘ってるんだよ

803 名前:デフォルトの名無しさん mailto:sage [2016/06/02(木) 08:27:55.85 ID:Y8jyUZeK.net]
今スッキリ分かるjava入門のオブジェクト指向のところをやってるんですが
オブジェクトクラス内で、 this.を使う場合と使わない場合がいまいちよくわからないんですが
どういう時に使えばいいんでしょうか?

804 名前:デフォルトの名無しさん mailto:sage [2016/06/02(木) 10:34:06.44 ID:mspBW4t7.net]
オブジェクトクラスとは具体的にこれを指す
docs.oracle.com/javase/jp/7/api/java/lang/Object.html
で、どこでthisを使いたいんだい

805 名前:デフォルトの名無しさん mailto:sage [2016/06/02(木) 12:02:22.47 ID:eu+qHMXE.net]
何故初心者向けに作らないといけないのか

806 名前:デフォルトの名無しさん mailto:sage [2016/06/02(木) 12:11:41.64 ID:TIu4sgpj.net]
初心者はプログラマ人口の多くを占める。また、多くの初心者は自身が習得した一部の言語機能に拘泥しがちであり、知識を広げようとはしない。従って、初心者への配慮は重要であると考えられた[1]。

807 名前:デフォルトの名無しさん [2016/06/02(木) 12:17:10.70 ID:R0axCxde.net]
スタンリーのゲームなんだけど条件分岐で右、左と設定してその先にさらに条件分岐を作りたいんだけど
どうすれば      a b
↓  ↓
         a b c d e f

なるかな
とりあえず、現状のソースをうpとくわ
package test7;

import java.util.Scanner;

public class test7 {
public static void main(String[] args)
{
System.out.println(

808 名前:デフォルトの名無しさん [2016/06/02(木) 12:21:17.22 ID:R0axCxde.net]
こっちに貼った
ideone.com/FS6rYH

809 名前:デフォルトの名無しさん mailto:sage [2016/06/02(木) 12:52:20.45 ID:soSMk704.net]
Stateパターン!

810 名前:デフォルトの名無しさん mailto:sage [2016/06/02(木) 16:49:04.97 ID:Y8jyUZeK.net]
>>802
使いたいわけじゃないんですけど、どういうときに使うのか知っときたいです
入門書で基礎を勉強してる最中なので何か作りたいわけではないんですが



811 名前:デフォルトの名無しさん mailto:sage [2016/06/02(木) 16:59:55.79 ID:3pGrCwvw.net]
thisなんて使う必要があるときだけ使えばいいんだよ
むやみに使うと初心者が混乱する

812 名前:デフォルトの名無しさん mailto:sage [2016/06/02(木) 18:25:02.84 ID:j7BsBWqH.net]
>>808
thisは自分自身の事、例えば

class A{
int a;
void set (int a){
this.a = a;
}
}
こう書くとset呼び出しで自分(クラスAのインスタンス)の持つ変数aに引数で指定された値aが代入される
(たまたま同じ名前aなので区別が必要)

初心者スレのが詳しく教えて貰えるかと

813 名前:デフォルトの名無しさん [2016/06/03(金) 00:18:29.41 ID:eOByu9EQ.net]
>>789
togetter.com/li/756319

814 名前:デフォルトの名無しさん [2016/06/03(金) 01:23:09.87 ID:Hu6W5Twy.net]
>>809-810
入門書に書いてあるから覚えようとしてたんですが今はそんな必要じゃないんですね
ありがとうございました

815 名前:デフォルトの名無しさん mailto:sage [2016/06/03(金) 02:10:46.15 ID:fVYd85Q0.net]
インスタンス変数・ローカル変数を区別している
this.a = a

Pythonでは、self.a = a
Rubyでは、@a = a

816 名前:デフォルトの名無しさん mailto:sage [2016/06/03(金) 02:54:46.14 ID:aDP5A1Yp.net]
コンストラクタのオーバーロードかもしれんぞ

817 名前:デフォルトの名無しさん mailto:sage [2016/06/03(金) 09:50:59.14 ID:cjkmsXsO.net]
>>812
thisが必要なときは大体こんな感じ
・自身のオブジェクトをメソッド呼び出し時の引数に渡す
・同名のインスタンス変数とローカル変数を区別する
・コンストラクタ内で同じクラス内に定義しているコンストラクタの呼び出し

ちなみに匿名クラス内で定義元クラスのオブジェクトを参照する場合は「定義元クラス.this」って記述する

818 名前:デフォルトの名無しさん mailto:sage [2016/06/03(金) 09:53:46.55 ID:cjkmsXsO.net]
むやみにってのは、インスタンス変数を参照するだけ、インスタンスメソッドを呼ぶだけで使うこと

819 名前:デフォルトの名無しさん mailto:sage [2016/06/04(土) 23:07:10.93 ID:F2beNYcE.net]
swing初心者なんですけどGraphics2Dで図形などを描画するときコンポーネントの後ろに描画するにはどうしたらいいのでしょうか

mainメソッドでコンポーネントを設定してsetVisible(true)
paintメソッド内でGraphics2Dでdrawすると後者が前面に出てボタンやラベルが隠れてしまうといった感じです

820 名前:デフォルトの名無しさん [2016/06/04(土) 23:34:48.02 ID:Umdhk7VS.net]
ラベル01:while(){
 ラベル02:
 if(){
 continue ラベル01;}
 if(){
 continue ラベル02;}
}


ラベル02に行くにはどうすればいいのでしょうか?よろしくお願い致します。



821 名前:デフォルトの名無しさん [2016/06/04(土) 23:41:26.48 ID:3F7VjM1T.net]
定期考査で英語のアクセントは何番目にあるかっていう問題が出たんだけど0番目から数えてしまった
上に番号振っていなかった教師が悪いのか、俺が悪いのか?

822 名前:デフォルトの名無しさん mailto:sage [2016/06/05(日) 00:20:16.79 ID:bEHxSIM9.net]
>>817
ボタン・ラベルを、隠す・削除する

>>818
ラベル01:while(){
 ラベル02:
 if(偽){
 continue ラベル01;}
 if(真){
 continue ラベル02;}
}

>>819
何番目とインデックスは異なる。
1番目は、インデックスが0

823 名前:デフォルトの名無しさん mailto:sage [2016/06/05(日) 01:01:14.99 ID:f33EmFKv.net]
インデックスにも0-indexと1-indexがあるしな

824 名前:デフォルトの名無しさん mailto:sage [2016/06/05(日) 09:10:58.30 ID:iMrWFgNq.net]
>>820
>>817です。
アドバイスありがたいんですけどよくわかりません
自分がやりたいのはJLabelとGraphics2Dのdraw()を同時に描画して
かつJLbelのほうを真上に表示することです

イベントとか透明度とかいろいろいじったんですけどどうしてもdraw()のほうが上に描画されてしまいます

825 名前:デフォルトの名無しさん mailto:sage [2016/06/05(日) 12:06:54.56 ID:f33EmFKv.net]
stackoverflow.com/questions/24493236/paint-hidden-java-swing-component
stackoverflow.com/questions/7734277/setvisibletrue-immediate-repaint

826 名前:デフォルトの名無しさん [2016/06/05(日) 16:22:36.78 ID:Qy2zNNAa.net]
Javaのラベル文の質問です

ラベルの中にラベルを貼ることは可能ですか?

ラベル1:〜{
 ラベル2:〜{
 System.out.println("こんな形");
 }
}

>>820を参考にしましたが、よく分かりません
ラベル2:〜{continue ラベル2;}でラベル2まで飛べますか?
また、ラベル2:〜{continue ラベル1;}でラベル1まで飛べますか?

何度もすいません、お願いします。

827 名前:デフォルトの名無しさん mailto:sage [2016/06/05(日) 16:41:41.46 ID:odhU5/tC.net]
>>824
ラベルは使うな
どうラベルを使うかではなく、使わずに目的を達成する方法を考えろ

828 名前:デフォルトの名無しさん [2016/06/05(日) 19:14:01.58 ID:/bruxSbe.net]
>>824
14.16. The continue Statement
docs.oracle.com/javase/specs/jls/se8/html/jls-14.html#jls-14.16
| The scope of a label of a labeled statement is the immediately contained Statement.
| The continue target must be a while, do, or for statement, or a compile-time error occurs.

ラベルのスコープはラベル直後のステートメント
continueの対象はwhile, do, forに限る


ちゅうことなんでラベルは貼れても飛ぶことができないかと
こういうのだったらできるんだけどねー

int i = 0;
Label_1: while (i < 3) {
 Label_2: while (true) {
  if (i % 2 == 0) {
   i++;
   continue Label_1;
  } else {
   i++;
   continue Label_2;
  }
 }
}

829 名前:デフォルトの名無しさん [2016/06/05(日) 19:46:12.67 ID:FIzAHdVg.net]
>>826
ありがとうございます

ありがとうございます

830 名前:デフォルトの名無しさん mailto:sage [2016/06/05(日) 19:50:45.05 ID:5XbRe77x.net]
今の子たちは行番号も構造化BASICも知らない世代なんだから
ラベルやgoto/setjmpが新鮮なんだろうよ
できればその労力をlambda式に使った方がいいと思うけどね



831 名前:デフォルトの名無しさん mailto:sage [2016/06/05(日) 20:06:33.58 ID:hOWXyYQQ.net]
ボレロ

832 名前:デフォルトの名無しさん [2016/06/05(日) 21:51:27.70 ID:pxS74riA.net]
村上。

833 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 13:25:30.14 ID:JZtx2nlJ.net]
staticメンバだけのクラスで
クラスロード後、コンストラクタを通さずあらかじめ自動で文を実行させるおく事って可能でしょうか?

834 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 13:35:20.02 ID:9aadMFJw.net]
>>831
class Hoge
{
static {
System.out.println("はげ");
}
}

835 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 14:01:46.42 ID:p52I8MXM.net]
ハゲハダマッテロ
    ∧___∧    / / / /
  ⊂( ・∀・)  、,Jし //  パン
   (几と ノ   )  て.彡⌒ ミ 
  //'|ヽソ 彡  Y⌒Y( ´;ω;`)   
/ノ / | \ 彡      l r  Y i|
ヽ/、/ヽ/ ヽ/        U>>832|:_|j

836 名前:デフォルトの名無しさん [2016/06/06(月) 18:05:22.48 ID:d2PTajMw.net]
マルプラなDTアプリを作るのはElectronとSwingはどっちがいいのでしょうか?
それぞれのメリット、デメリットを教えてください

837 名前:831 mailto:sage [2016/06/06(月) 18:18:10.06 ID:AvO2qKU5.net]
>>832 はげしく感謝!

838 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 18:36:27.97 ID:lERWlKku.net]
>>834
Swing(というかJavaでGUIアプリを作ること全般)が適しているケースなんか存在しない
Javaというだけで-100点からのスタートだということを肝に銘じておけ

839 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 18:46:44.26 ID:/ojbA3WN.net]
Javaの入門書でクライアントGUIアプリを教えるのはいい加減やめりゃいいのにな
初心者はアプリといえばクライアントアプリしか想像できない人が多いんだから、あのせいで独学者はみんな勘違いする

840 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 18:54:13.19 ID:LbzoRXHI.net]
なぜだ
格好悪かろうと一言語で全て完結するという理想を満たしている
腕が上がって他へ移るかは本人が決めること



841 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 18:58:58.88 ID:wkSg93q8.net]
役に立たない理想なんか衒学趣味のタコ助野郎だけ学んでろ

842 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 19:04:27.00 ID:pvK3vfp5.net]
理想もない猿は黙ってろよ。

843 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 19:09:29.77 ID:d2PTajMw.net]
>>836
つまりメリットはないということですか?
V2Cはswingみたいですが

844 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 19:27:23.03 ID:e+TlXwYN.net]
swingと聞いて思い浮ぶのはPureJava、JTable、産廃
異論は認める

845 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 19:43:30.64 ID:AvO2qKU5.net]
自分用ツール作るとかに便利じゃないです?
コード使い回せるし

846 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 20:29:31.64 ID:kYOSRyqE.net]
そう思うならやれよ勝手に

847 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 21:49:23.05 ID:HSh/i7Wo.net]
VBよりはいいだろ

848 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 22:06:53.77 ID:Tzc6nBCT.net]
Eclipseは?

849 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 22:09:27.12 ID:9d27o1oJ.net]
>>834
ElectronはJavaScript、SwingはJava、Electronはスレ違。
JavaでGUIやるならだいたいSwingかJavaFX。まぁSwingで問題なし。
Swing駄目って言っているやつは、ただSwingに挫折した無能だから気にする必要なし。

850 名前:デフォルトの名無しさん mailto:sage [2016/06/06(月) 22:11:38.23 ID:HjHXlP56.net]
ク    ク   || プ  / ク   ク  || プ  /
  ス  ク ス _  | | │ //. ス ク ス _ | | │ //
  / ス   ─  | | ッ // /  ス   ─ | | ッ //
  / _____  // /          //
.  /   l⌒l l⌒l \  ))   ____
. / / ̄| ,=| |=、| ̄ヾ   / 



851 名前:Q___ヽ
/ ̄/ ̄.  ー'●ー'  ̄l ̄ |  | /, −、, -、l  ))
| ̄l ̄ ̄  __ |.    ̄l ̄.| _| -| ,=|=、 ||
|. ̄| ̄ ̄  `Y⌒l__ ̄ノ ̄ (6.   ー っ-´、}
ヽ  ヽ    人_(  ヾ    ヽ    `Y⌒l_ノ
  >〓〓〓〓〓〓-イ   /ヽ  人_(  ヽ
/   /  Θ  ヽ|  /    ̄ ̄ ̄ ヽ-イ
[]
[ここ壊れてます]

852 名前:デフォルトの名無しさん mailto:sage [2016/06/07(火) 14:25:52.84 ID:D7k3fKbj.net]
swingは今更ねーわ。
electron 〉javafx 〉ローカルホストでweb 〉swing
今からやれと言われて検討するならこうなる。

853 名前:デフォルトの名無しさん mailto:sage [2016/06/07(火) 15:55:02.34 ID:JWprMCTU.net]
eclipseで使ってるのはSWTというやつでSwingともまた違う
swing/swt/javafxいずれも専用スレがある

854 名前:デフォルトの名無しさん mailto:sage [2016/06/07(火) 16:20:24.00 ID:AqghDwj4.net]
>>849
electronはjsだ

855 名前:デフォルトの名無しさん mailto:sage [2016/06/07(火) 16:21:02.89 ID:AqghDwj4.net]
>>849
ローカルでwebとか意味不明。馬鹿?

856 名前:デフォルトの名無しさん mailto:sage [2016/06/07(火) 16:23:11.24 ID:RIjMUPE/.net]
次のページ(research.nii.ac.jp/~uno/codes-j.htm)の、「FREQT」もしくは「FREQT ver4」プログラムを動かしたいのですが、 やり方が全く分かりません。

プログラミング経験は、C言語はfor文等を使って数値計算をしたことがある程度です。Javaは経験は無かったのですが、JDKはダウンロードしました。

「FREQT」プログラムをjavacでコンパイルしようとしても、どうにもうまくいきません。JAXPというものが絡んでいるようですが、ここ数日取り組んでみて結局うまくいきませんでした。

もしプログラミングに詳しい方がいらっしゃいましたら、どうか動かし方を教えて頂けないでしょうか?

857 名前:デフォルトの名無しさん mailto:sage [2016/06/07(火) 16:43:16.23 ID:uoaKuNhz.net]
JavaでGUI(おそらくWindwos)を作るって事は、既存のライブラリ資産を活かしたいからだろ
別にSwingでもいいんじゃない

858 名前:デフォルトの名無しさん mailto:sage [2016/06/07(火) 17:03:24.50 ID:GM81CXhl.net]
Electronが選択肢にあるんだからJavaでなくてもいいんだろ
明らかにElectronが正解

859 名前:デフォルトの名無しさん mailto:sage [2016/06/07(火) 18:28:58.83 ID:dHr3PrBM.net]
素人がElectron使うとXSSで爆発するけどね

860 名前:デフォルトの名無しさん mailto:sage [2016/06/07(火) 20:29:14.56 ID:/ZO0bpA6.net]
jspでセッション情報の保持は
ヘッダ情報にcookie:xxxxx
みたいな形で保持されてるらしいですが、
セッション情報が残っている時に、
ブラウザのcookieを消すとセッション情報が消えるのはなぜですか?
jspならhtml形式だからcookieとは違うはずなのに



861 名前:デフォルトの名無しさん [2016/06/07(火) 21:17:20.48 ID:Guppn9xI.net]
void hoge(String shape) {
switch (shape)
case

862 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 04:30:31.82 ID:E3Y0fydP.net]
>>853
JAXP (Java API for XML Parsing)
JAXPは、米Sun Microsystems社が提供するJava言語用の標準XML APIである。
SAX 2.0, DOM 2, XSLTなどの機能を含む

JavaのXMLは、よく知らない。
Groovyなら、XmlParser, XmlSlurper を使うけど

正確なエラーメッセージで検索すればいいよ。
エラーメッセージが無ければ、漏れらにもわからない

863 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 08:59:24.49 ID:VWzAs+2U.net]
>>853
https://xml.apache.org/svn.htmlからcrimsonをダウンロード
具体的には`svn co svn.apache.org/repos/asf/xml/crimson/trunk/ xml-crimson`みたいにする
あとはmakeと打って、エラーが出るDomWrapperとPatternをjavac -classpath .:xml-crimson/srcつけて手動でコンパイル
コンパイルはできたけど動作確認はしてない

864 名前:デフォルトの名無しさん mailto:sage [2016/06/08(水) 21:43:45.88 ID:Of4rxDsn.net]
俺たちのやる作業レベルでは大した速度の違いはない

865 名前:デフォルトの名無しさん [2016/06/09(木) 02:40:45.99 ID:86wjM1QZ.net]
そういえば Java ってミリ秒単位で現在時取れるけどマイクロ秒とかナノ秒では取れないの?

866 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 06:53:39.91 ID:W1J6KNMM.net]
μとかナノ単位で取れたとしても使いみちなくなくない?

867 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 07:41:15.69 ID:sulveNBl.net]
>>862
OSで計れる時間を勉強してから出直して来い

868 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 07:55:51.57 ID:Uf/9VKKE.net]
バージョン1UUIDのタイムスタンプが100ナノ秒単位

869 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 08:36:20.04 ID:PZQxvZoz.net]
スッキリjavaにjava8からマイクロとれるようになったって書いてあった気がする

870 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 08:51:24.33 ID:dIu2vu4F.net]
勘違いじゃねーの
Java8 DateTime APIはナノ秒の精度で時刻を格納してるけど
ナノ秒の精度で現在時刻を取得できるわけではない
情報源がSystem.currentTimeMillisだから精度上げようがない
nanoTimeってのもあるが、あれは時刻じゃない



871 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 09:32:53.36 ID:CSH5zx3A.net]
たかがPCのおまけ内蔵時計にマイクロ秒単位の精度求めるのん?
CPU占有してインターバル求める位ならまだなんとかなるかもだが

872 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 09:58:27.87 ID:aGzbUoMt.net]
そもそも、量子力学の知見によれば、この物理世界そのものも、何秒以下では、時間が連続していないわけで

873 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 10:08:07.57 ID:8bnSb6E3.net]
>>868
現在時刻が欲しいんじゃなくて差分を利用して処理にかかった時間を計測したりとかの用途でしょ

874 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 10:42:12.37 ID:U9CsIV6v.net]
862が現在時って言ってるから現在時の話をしとるんだろうがコルァァァァァァア

875 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 15:59:12.13 ID:PZQxvZoz.net]
>>867
そういう事だったのか
さんくす

876 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 16:01:07.29 ID:PZQxvZoz.net]
System.nanoTimeっていうのもあるらしい

877 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 16:04:50.36 ID:lRCEzphN.net]
さっさといねよ、厨房

878 名前:デフォルトの名無しさん [2016/06/09(木) 19:47:04.21 ID:z86Am/NW.net]
void createShapr(String shape){
if (shape.equals(

879 名前:デフォルトの名無しさん [2016/06/09(木) 19:47:55.21 ID:z86Am/NW.net]
"Triangle"){ hoge.add(new Triangle())}
else if (shape.equals("Circle") {hoge.add(new Circle())}
else if (shape.equals("Square") {hoge.add(new Square())}
else if .......
}

こういうコードのリファクタリングはどのようにするべき?

880 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 19:59:20.36 ID:VbYktpbq.net]
Decorator のように見えるけど Chain of Responsibility かもな



881 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 20:54:43.93 ID:ifPE+NTk.net]
>>876
HashMap<String, ShapeFactory>

882 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 21:24:55.29 ID:5jXMB1Ia.net]
>>857
まず大前提として、createXxxって名前つけたんなら
void createShapr(String shape){hoge.add(new Circle());} // 条件等省略
↑こういうのじゃなくて
Shape createShape(String s) {return new Circle();} // 条件等省略
↑こういうふうにしてほしい。
さらに、クラス名をShapeFactoryとしてしまっていい場合は、
メソッド名も単にcreateだけでよくてスッキリ。

あ、あくまでこれは個人的感想ね。

883 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 21:26:23.12 ID:rWnG5Ha6.net]
おっと…>>875だった。

884 名前:デフォルトの名無しさん mailto:sage [2016/06/09(木) 21:28:21.88 ID:kVyFEPmq.net]
釣れるネタ

885 名前:デフォルトの名無しさん [2016/06/09(木) 23:0 ]
[ここ壊れてます]

886 名前:1:38.63 ID:z86Am/NW.net mailto: 875だえす。

名前はsetShapeかaddShapeにしたほうが良かったと思う。
[]
[ここ壊れてます]

887 名前:デフォルトの名無しさん [2016/06/10(金) 02:07:11.83 ID:iCsTtZ3L.net]
Factoryをリフレクションでやればよくね

public static Shape create(String shape) {
String fqn = Shape.class.getPackage().getName() + "." + shape + "Shape";
Class<Shape> classe = (Class<Shape>) Class.forName(fqn);
Shape obj = classe.newInstance();
return obj;
}

public abstract class Shape {
protected Shape() {}
}

public class TriangleShape extends Shape {
}

public class CircleShape extends Shape {
}

888 名前:デフォルトの名無しさん mailto:sage [2016/06/10(金) 10:46:09.29 ID:XvceIi0Z.net]
静的解析出来ない依存性はやだなぁ

889 名前:デフォルトの名無しさん mailto:sage [2016/06/10(金) 20:27:09.88 ID:FpIylB97.net]
classA.classB.classC[hoge]->hage()
classA.classB.classC[hoge].sun()
classA.classB.classC[hoge]["pikapika"]=true;

って感じになってて長いので
myFunc(classA.classB.classC[hoge]){
->hage();
.sun();
["pikapika"]=true;
}
的なことってできませんか

890 名前:デフォルトの名無しさん [2016/06/10(金) 20:36:52.18 ID:u+tsBWPR.net]
>>885
それはJavaですか?



891 名前:デフォルトの名無しさん mailto:sage [2016/06/11(土) 16:49:29.94 ID:lGk3iJgb.net]
>>885
c++(11以降)ならこんな感じで
auto& a = classA.classB.classC[hoge];
a->hage();
a.sun();
a["pikapika"]=true;

892 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 20:50:46.64 ID:jWym4ASr.net]
書き込み先間違えても謝らないなんて
C++erって糞やな

893 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 22:25:30.78 ID:QKWa7och.net]
しーぷらぷらーって読めばいいの?

894 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 22:29:32.84 ID:Vqz0UhNC.net]
アメリカ人なら スィープラスプラスアウゥ って言うだろうな

895 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 22:35:38.40 ID:4cZJjeON.net]
シー!
ぷらぷら
アーッ!

896 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 11:46:01.74 ID:L+tKyIDw.net]
jarファイルの中にある sample.libs.hoge.classのメソッドを5つ、メンバ変数を2つ追加(メンバ変数一つに対し、set/get + HogeA )
したHogeAを作りたいのですが

//修正前
import sample.libs.hoge;
Hoge hoge = new Hoge(); // => 設定関係が勝手にセットされrun()が自動的に実行される


//修正後
import sample.libs.hogeA; // => hogeを拡張したhogeEX的な存在
HogeA hogea = new HogeA();
Hogea.setURL("www.sample.com./ababa/");
Hogea.setTimeout(5);
Hogea.run();

こんな感じにしたいのですが 可能ですかね・・・

897 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 12:20:38.11 ID:A1KXN1Y2.net]
HogeAがThreadクラスをextendsしてればできるんじゃね?
hogea.start()だけどな

898 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 12:22:56.04 ID:A1KXN1Y2.net]
ああ、インターネットにアクセスするだけならThreadいらないわな

899 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 12:25:18.40 ID:A1KXN1Y2.net]
度々御免。
インターネットアクセス中に処理が戻ってきてほしいならThread
処理が止まってもいいならThreadいらないな

900 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 13:00:32.24 ID:Mj2HqjrQ.net]
>>892
アクセスレベルが判明しない以上はわからない、publicとかprivateとか
https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html



901 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 15:56:32.25 ID:h4KLgWKn.net]
>>892
よく言いたいことがわからないけど、継承させればいいんじゃね?
finalが付いていなけりゃだけど

継承できないならリフレクションすればいいし

902 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 19:15:55.13 ID:qjbwxnFC.net]
すいませんあのー
入門書にある多態性のざっくり捉えることのメリットについての説明がよくわからないんですが
何か簡単なプログラム例を出して教えていただけないですか?

903 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 19:19:12.08 ID:Q+rj ]
[ここ壊れてます]

904 名前:Y21+.net mailto: 検索したのかよ? []
[ここ壊れてます]

905 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 19:38:55.88 ID:NNE4K5OW.net]
変態でぐぐれ

906 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 19:43:22.61 ID:h4KLgWKn.net]
俺の画像がトップに来たわ

907 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 20:10:35.38 ID:L+tKyIDw.net]
悩んでて聞いたのは良いけど自分のレベルが足りなすぎて何を言われてるのかわからない・・・ゴメン・・・
thread・・・リフレクション なんかリフレクションって全て弾き返しそう ちょっと強そう Hogeはほぼ全てprivateで書かれてます Hogeにはfinalはありません。

イメージ伝わるかな・・・
/* HogeA.java*/(今回作るプログラム ~/${project_name}/lib/HogeA.javaに格納)
import sample.lib.Hoge; //(sample_lib_001.jarの中に格納されてる)
class HogeA extends Hoge{
public void HogeA(){}// 呼びだされた時は特に何もしない
public void setURL(string _url){ //プライベートの所に値入れる// Hoge::url => private String
url = _url;
}
public void setTimeout(int _time){ //プライベートの所に値入れる// Hoge::time は存在しないのでHogeA::time(0-?)をprivateで作りたい
time = if(_time<60)?time:60:;
}
//↓困ってる所-1- 1,2行更新するために全部コピペしないとダメ?
public boolean _run(){ /* Hoge()が呼び出されていた時に実行されていた処理を全て行う。更新/追加されたメンバー変数(time/url)を使用。*/; return true; }
private int time=60; // private メンバ変数 timeの追加(HogeA::setTimeout/HogeA::getTimeout(省略)にて使用)
}

/* main.java */
import override.sample_lib_001.lib.HogeA; //←困ってる所2 今回作ったHogeAをこんな感じで呼びたい
import Logger;
class main{
public Logger log = new Logger("/dir/aaa.log");
public void main(){boolean flag=false;HogeA hogea = new HogeA();hogea.setURL("www.sample.com./ababa/");flag = hogea._run();log.info("run : "+if(flag === true)?"success":"failed"); }//
}

908 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 20:14:38.66 ID:qjbwxnFC.net]
>>899
はい。java多態性入門で検索しました。
ただ入門ぽい入門者に対して説明されてるとこが見つかりませんでした。

909 名前:デフォルトの名無しさん [2016/06/13(月) 20:58:17.73 ID:0tlfaplt.net]
>>902
全部コピー?継承さらてわじゃないの?

てか、コンパイルした結果はどうなの?エラー出たの?そらともコンパイルできたけど意図した通りに動かないの?

910 名前:デフォルトの名無しさん [2016/06/13(月) 20:59:23.62 ID:0tlfaplt.net]
あ。タイプミスった。スマホのフリック入力でミスると変なタイプミスになるな。w



911 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 21:02:23.29 ID:zP9qG/5E.net]
>>898

デザインパターンとか調べると分かるかも

912 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 21:11:00.63 ID:zP9qG/5E.net]
>>898
追記
ストラテジーパターンが、わかりやすいかも

2つのクラスで共通するメソッドを使えるので、重複するコードを減らせる

913 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 21:12:19.48 ID:L+tKyIDw.net]
>>904
やりたいことが多すぎてごっちゃになっててたのに今気がついた。
import の所がそもそも動いてなくてテストができてない・・・

全部っていうのはメソッドの中の処理全部・・・
hoge()//元のメソッド
{
↓コピペ1
......
.....
..
..
↑ここまで
修正したい場所1←
修正したい場所2←
↓コピペ2
..
....
.....略
↑コピペ2
}
↑こんな感じで修正したいヶ所はたった2ヶ所だけなんだけど

hogeA()//Hoge継承?してきて2行修正しただけのhogeAメソッド
{
コピペ1
修正ヶ所1
修正ヶ所2
コピペ2
}
全部コピペしないとだめかな。ここのコピペ部分どうにか省略出来・・・る訳無いか・・・

914 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 21:15:34.40 ID: ]
[ここ壊れてます]

915 名前:qjbwxnFC.net mailto: >>906
デザインパターン java 入門 でいいですか?
ありがとうございます!
[]
[ここ壊れてます]

916 名前:デフォルトの名無しさん [2016/06/13(月) 21:33:43.26 ID:0tlfaplt.net]
>>908
詳細わからねえからなんとも言えんが、多分できない。

917 名前:デフォルトの名無しさん [2016/06/15(水) 02:33:32.00 ID:gHR2VZA2.net]
>>902
なんかHogeとHogeAの関係性が逆なんじゃないの

class HogeA {
private String url;
private int time;
public void HogeA(){};
public void setURL(String url) { this.url = url; }
public void setTime(int time) { this.time = time; }
public void run() {…}
}

class Hoge extends HogeA {
public Hoge() {
setURL(“XXX”);
setTime(0);
run();
}
}

HogeとHogeAを用意する意図が分からないので疑問を挟まず要件を満たすならこんな感じ

918 名前:デフォルトの名無しさん [2016/06/15(水) 11:26:32.12 ID:RLysB/OD.net]
java初心者なんだけどいい?
コマンドラインから1〜6打ち込んでその数字を乱数で比較して勝ち負けを判定するものつくりたいんだけど
C++みたいに1〜6で数字の入力を制限することができないんだけどソースどーやって書くの

919 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 11:29:51.22 ID:yd8lnPA+.net]
外国の方ですか?

920 名前:デフォルトの名無しさん [2016/06/15(水) 11:46:43.75 ID:RLysB/OD.net]
>>913
外人ぽい日本人が聞いてる



921 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 11:48:50.82 ID:6xgxkumJ.net]
なぜコマンドラインなのかButtonで入力しては駄目なのか単体テストで済む話じゃないのか

922 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 11:55:57.41 ID:3GkgPPDP.net]
>>910 (´・ω・`)残念
>>911 jarファイル(Hoge含む)は私が作ったものではなく、更に毎月更新される。
なので直接修正せず何らかの手段でその部分だけ修正できないかなと 試行錯誤してます(´・ω・`)

923 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 12:06:18.74 ID:7bfVMXbn.net]
設計センス皆無な奴が作ったウンコシステムを使う人は大変だなあw

924 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 12:08:44.12 ID:7bfVMXbn.net]
>>914
あだ名はミャンマーとかですか?

冗談はさておき、C++での入力制限はどのようなコードを書いたんだ?
外国の方だと思われたのは日本語が意味不明だからだ
コードで話そうではないか

925 名前:デフォルトの名無しさん [2016/06/15(水) 12:28:32.12 ID:i4R0HEqY.net]
それはヘイトスピーチではないのか。

926 名前:デフォルトの名無しさん [2016/06/15(水) 12:39:43.70 ID:1MMqiU3V.net]
そういやC++でどうやって入力制限してるんだ?標準入力からただ入力したら普通できないよな。入力後に調べて弾くならできるが、それならJava でもできる。

927 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 14:02:33.32 ID:TGiPX2zL.net]
>>912
キーボード入力は、
java.util.Scanner(System.in).nextLine()

>>916
Groovyのメタプログラミングでは、

Category, MOP(Meta Object Protocol), MetaClass, Expando,
AST(Abstract Syntax Tree)変換とか?

928 名前:デフォルトの名無しさん [2016/06/15(水) 22:16:22.75 ID:gfdIm+Z1.net]
import java.util.Random;
import java.util.Scanner;

public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Random rnd = new Random();

System.out.println("ようこそ占いの館へ");
System.out.println("あなたの名前を入力してください");
String name = sc.nextLine();
System.out.println("あなたの年齢を入力してください");
String ageString = sc.nextLine();
int age = Integer.parseInt(ageString);
int fortune = rnd.nextInt(4);
fortune++;
System.out.println("占いの結果が出ました!");
System.out.println(age + "歳の" + name + "さん、あなたの運気番号は" + fortune + "です");
System.out.println("1:大吉 2:中吉 3:吉 4:凶");

sc.close();
}
}
【質問】
Scannerオブジェクトは.close()しないとリークするのに、Randomオブジェクトは
リークしないのですか?.close()できないのですか?
Java歴2日目です。

929 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 22:30:41.51 ID:/d5kHJwB.net]
net beansを使ってjavaでweb作成をしています。
サーバーはtomcatです。
データベースアクセスをして、何レコードか抽出される結果を
画面に表示したいのですが、やはり繰り返し処理を行い、
抽出結果の分だけテーブルに追加していくしか方法はないでしょうか。
レコードを配列化し画面と関係づけることで、画面に表として
表示させるような効率的なやり方はないものでしょうか。

930 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 22:40:32.12 ID:Zx+tyMGv.net]
jspの使い方でも覚えろよ



931 名前:デフォルトの名無しさん [2016/06/15(水) 23:00:03.59 ID:Qb3yFOnx.net]
>>923
そもそも何を言っているのか分からない。

932 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 23:20:20.27 ID:018mCAnd.net]
>>923
フレームワークを学ぼう。

933 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 23:28:47.56 ID:D1dVQYB8.net]
>>923
HPのサンプルを動かすか、本読んで出直して来い

934 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 07:33:12.28 ID:tOwQ8tvq.net]
スッキリわかるサーブレット&JSP入門

推薦本

935 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 07:44:32.90 ID:Wdxtt7hg.net]
>>923です。
すみません、言葉足らずでした。
回答ありがとうございます。

JSPでやろうとしています。
JSPでjavaで取得した結果を抽出することはでききますが、
それを表のように枠線がついた形式で表示させるには、
やはり1レコードずつ<tr></tr>タグで囲って
動的に出力するしかないでしょうか。

struts等のフレームワークも確認してみましたが、
必要最低限以外のインストールはしたくなく
(他の人も保守するかもしれないので)、
一般的なやり方でDBからの抽出結果を簡単に表形式で
表示する方法はないかと思い、
質問させていただきました。

936 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 09:18:00.34 ID:LOakJq83.net]
アホ?

937 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 09:21:08.29 ID:dX5NIqBg.net]
紛れもないな

938 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 10:04:40.92 ID:tOwQ8tvq.net]
そんなの一々、自分でしないよ。

フレームワークが勝手にやってくれる

939 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 10:32:33.07 ID:3KkN92+a.net]
>>929
jspでやろうとしてるかどうかは聞いてねえ
「jspの使い方を覚えろ」と言ったんだ

この言葉だけまずは理解しろ
分かったら帰れ

940 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 10:41:28.70 ID:FCR2MGZl.net]
人に理解してもらうには言葉足らずだということだね



941 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 10:55:13.18 ID:4n71OsAj.net]
>>934
マシンとしか向き合えないコミュ障だから
プログラマーやってるんでしょ。
察してあげなよ。

942 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 11:30:59.53 ID:G8mFGz+4.net]
マシンの方が女より扱いやすい

943 名前:デフォルトの名無しさん [2016/06/16(木) 12:31:08.78 ID:CbGXrP8u.net]
>>922
乱数って計算してるだけだからな・・・

944 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 13:13:28.57 ID:v9L+DCnp.net]
RANDOM関数はBASICの時代ではRANDOM(-TIME)という使い方が多い
(BASICのRANDOM関数は引数が負数だった場合それぞれの数値に固有の値を返す)

945 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 13:34:49.95 ID:jO0P8oj4.net]
seedを考えないのであればMath.random()の方が単純だな
擬似乱数で困る場合は乱数発生器を買ってくるとか、結構いい値段する

946 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 14:01:04.04 ID:tOwQ8tvq.net]
>>922
オブジェクト.close()など、終了処理するのは、
外部リソースを握りこんでいるようなオブジェクトで、リソースを解放するため

普通の単純なオブジェクトは、.close()など特別な終了処理をしなくても、
生存するスコープから外れると、自然消滅する

947 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 15:33:51.49 ID:bI+aCDek.net]
javaでクライアントサイドのブラウザ制御っていうのはあまりやらないんですか?
アプレットっていうのは今使われないと聞いて
サーバサイドのjavaからクライアントに何か複雑な事させたい時はjsとかhtml5?とかのスクリプトをコールする感じですか?

948 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 15:36:15.40 ID:7yZ+E296.net]
ブラウザでjava動かないからな。やるやらないじゃなくて動かない。
gwtとか使えばjavaからjsにコンバートして動かすことはできる

949 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 15:44:22.50 ID:bI+aCDek.net]
>>942
そういう技術もあるんですね
有り難うございます

950 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 18:58:53.05 ID:Os9UABDT.net]
RuntimeException(を継承したクラス)をthrowするときって
javadocの@throwsは書くとして
メソッド名うしろのthrowsには書くもの?書かないもの?



951 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 19:54:25.75 ID:bUrMWU8W.net]
とんちかな?

952 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 19:55:10.72 ID:bUrMWU8W.net]
javadocがなにかわかってないだろ

953 名前:922 [2016/06/16(木) 20:03:38.56 ID:eFMzQDZe.net]
ご回答ありがとうございます。両者の違いを理解しました。

954 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 20:12:03.39 ID:q/qD4Mvc.net]
>>944
検査例外

955 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 20:29:14.03 ID:bUrMWU8W.net]
ツールが便利になった反面、変な勘違いをしてる人多くない?

956 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 21:38:18.50 ID:eFMzQDZe.net]
九九を出力するコードを書きました。
欠点がありましたらご指摘ください。
Java歴3日の者です。

public class Main {
public static void main(String[] args) {
for(int y = 1; y < 10; y++) {
for(int x = 1; x < 10; x++) {
int ans = y * x;
String str = "" + ans;
if(ans < 10) {
str = " " + str;
}
if(x != 9) {
str += " ";
}
System.out.print(str);
}
System.out.print("\n");
}
}
}

957 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 22:25:10.82 ID:1TqtMSCm.net]
>>950
プラス演算子での文字列の連結はだめ!!

958 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 22:30:47.48 ID:1TqtMSCm.net]
あと個人てきに数値から文字列にするときに空文字と連結させて文字列にするのきらい!!

959 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 22:33:35.61 ID:eFMzQDZe.net]
>>951 >>952
ありがとうございます。ほかのもっといい方法があるのですね。
調べてみます。

960 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 22:35:10.40 ID:g+b64nNx.net]
>>951
この規模でも+連結しちゃだめなの?



961 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 22:53:20.80 ID:mb8wywpH.net]
いや>>950の場合はむしろ+でいいよ
実質はごく短い文字列をせいぜい2回連結してるだけ(最初のは最適化される)だから、
数値→文字列の変換やprintlnのコストに比べたら誤差にもならん

962 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 22:57:01.14 ID:eFMzQDZe.net]
StringBuilderと.valueOf()を覚えました。
public class Main {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder();
for(int y = 1; y < 10; y++) {
for(int x = 1; x < 10; x++) {
int ans = y * x;
String str = String.valueOf(ans);
if(ans < 10) {
sb.setLength(0);
str = sb.append(" ").append(str).toString();
}
if(x != 9) {
sb.setLength(0);
str = sb.append(str).append(" ").toString();
}
System.out.print(str);
}
System.out.print("\n");
}
}
}

963 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 22:59:41.94 ID:eFMzQDZe.net]
Cはよく分かってるほうなので.append().toString()とか
気持ち悪いですね(笑)

964 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:01:01.60 ID:L6uV1SZP.net]
+は絶対ダメって訳じゃ無い

str = " " + str;
str += " ";

これだと無駄にインスタンス生成されるけど

1ステートメントで
String str = " " + String.valueOf(ans)
てやるなら問題なし

965 名前:950 mailto:sage [2016/06/16(木) 23:06:44.83 ID:eFMzQDZe.net]
みなさま、いろいろ

966 名前:ネアドバイスありがとうございます。
九九表示プログラムだけでもこんなにも学べるものなんですね。

おやすみなさい
[]
[ここ壊れてます]

967 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:20:02.46 ID:/dCrOS1l.net]
System.out.println();で
""を表示させるにはどうすればいいですか

968 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:23:31.49 ID:c2UI9Bfi.net]
>>951
==比較は駄目だけど+はいいだろ
何処に駄目と書いてあった?

969 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:23:46.35 ID:L6uV1SZP.net]
"\"\""

970 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:24:52.40 ID:jO0P8oj4.net]
>>956
甘い
sbのままappendしつづけ、2度のforを潜り抜け、
最期に1度だけSystem.out.print(sb)を唱えるのじゃ
StringBuilder.append(int i)があるのでvalueOfは無駄手間じゃのう



971 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:25:01.41 ID:c2UI9Bfi.net]
>>960
System.out.print("");
何故やるのか理解できないが

972 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:25:56.11 ID:c2UI9Bfi.net]
>>956
StringBuilderって何?

973 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:35:54.86 ID:/dCrOS1l.net]
>>964
ありがとうございます

System.out.println("この記号→"←を表示したい");
除外コマンドみたいなのってありませんでしたっけ

974 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:38:06.37 ID:G8mFGz+4.net]
>>962がスルーされててワロタ

975 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:39:12.65 ID:c2UI9Bfi.net]
>>966
それメソッドの問題じゃなくてリテラルの問題…
「java 文字列リテラル エスケープ」でググレ

976 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 00:44:32.11 ID:iaYON6Q8.net]
¥x22

977 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 03:15:42.57 ID:PTNjRm2Y.net]
\"

978 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 07:33:28.38 ID:Ox7oWvp9.net]
>>962
>>968
ありがとうございます

979 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 08:18:45.45 ID:442rGUo0.net]
次スレ

★★Java質問・相談スレッド178★★ [無断転載禁止]©2ch.net
echo.2ch.net/test/read.cgi/tech/1466119015/

980 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 10:35:35.54 ID:uuTM5EAb.net]
toString()呼ばれた時に 各get****()っていうのをつなげて返したいんだけどなんかいい方法無いかな!!
public String toString()
{
String result="[";
result += "method1 : "+getMethod1();
result += "method2 : "+getMethod2();
result += "]";

return result;
}
みたいな感じでええのん?



981 名前:デフォルトの名無しさん [2016/06/17(金) 13:07:45.21 ID:7/Cp3IRC.net]
>>973
ああ。それでもよし。

短時間に何回も呼び出すようなら効率上げるために return の直後に全部繋げるのを書くか StringBiffer 使って全部 apend() して toStrong() すれば良いと思う。

982 名前:デフォルトの名無しさん [2016/06/17(金) 13:12:57.98 ID:7/Cp3IRC.net]
>>965
Java 1.5 からあるやつだ。StringBuffer 互換で動機化保証しないやつ。詳しくはドキュメント読め。

983 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 14:16:54.08 ID:kcSK/gtD.net]
うめ

984 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 14:17:54.06 ID:91m52La+.net]
てんてぇ

985 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 17:58:43.84 ID:Ox7oWvp9.net]
吉野家先生……

986 名前:koro sensee mailto:sage [2016/06/17(金) 18:24:27.67 ID:A0dgar5u.net]
null, fu, fu, fu

987 名前:デフォルトの名無しさん [2016/06/17(金) 19:02:34.65 ID:8l6QBeuv.net]
あ、変換間違えてた。動機化じゃなくて同期化。
動機化ってなんだよ。w

988 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 04:03:52.72 ID:wJLjXt7N.net]
うめ

989 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 05:37:46.95 ID:w9zLlF5g.net]
てんてー

990 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 07:58:04.34 ID:tSisMXdT.net]
★★Java質問・相談スレッド178★★ [無断転載禁止]©2ch.net
echo.2ch.net/test/read.cgi/tech/1466119015/



991 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 11:03:05.02 ID:/nZnQa3x.net]
うめ

992 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 11:07:43.60 ID:UnDxRKSP.net]
UME

993 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 14:15:50.78 ID:kiFN8nsu.net]


994 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 14:21:30.20 ID:tRBFzY8N.net]
質問いいですか?

995 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 14:24:08.30 ID:/nZnQa3x.net]
>>987
まだはええよw

996 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 14:24:16.43 ID:w9zLlF5g.net]
銅像

997 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 15:24:53.55 ID:tRBFzY8N.net]
まだ早かったみたい

998 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 16:37:56.38 ID:tarWYkxx.net]
うめ

999 名前:デフォルトの名無しさん [2016/06/18(土) 16:46:07.65 ID:mKo0ibfd.net]
public class Ume {
public static void main(String[] args) {
System.out.println("埋め");
}
}

1000 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 16:48:57.27 ID:pG9pCEms.net]
for(int i=0;i<7;i++){
  _2ch.write("tech",1458033246,"","sage","埋め");
}



1001 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 16:51:19.82 ID:RY58SNRu.net]
産め

1002 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 16:56:50.59 ID:w9zLlF5g.net]
throw new ThreadCloseException("梅");

1003 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 17:03:01.67 ID:by2sfxCb.net]
初心者なんですけど可変長×可変長の二次元配列みたいなのを作りたいんだがどんなやり方がありますか?

太郎 "リンゴ"
次郎 "リンゴ" "バナナ"
三郎 "ぶどう" "リンゴ" "バナナ"
.
.
みたいにしたいんだが
List<ArrayList<String>> nanelist = new ArrsyList<String>>();
List<String> fluitlist = new ArrayList<String>();
fluitlist.add("リンゴ");
namelist.add(fluitlist);
だと人物名を入れられませんよね?
人物のリストをリスト入れても二次元にする意味あまり無くなりますよね
リストのインデックスからそのインデックスの人物名や果物の配列を取得したいのですが。
人物の追加とその人物の果物リストの追加は同じひとつのループ上でやります
for(int i=0;i<a;i++){
人物リスト[i]に人物名追加
for(int x=0;x<b;x++){
人物[i]の果物リストに果物[x]追加
}
}
のようにします
参照するときは
for(int i=0;i<人物リスト.size;i++){
for(int x=0;x<人物リスト[i]果物リスト.size;x++)
Sysyemout.println(人物リスト[i] + 人物リスト[i]の果物リスト[x]);
}
}
みたいな感じにします

1004 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 17:12:45.66 ID:pG9pCEms.net]
埋め

1005 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 17:17:04.84 ID:pG9pCEms.net]
>>996
HashMap<String,String[]> unko=new HashMap<>;
unko.add("太郎",["リンゴ"]);
unko.add("次郎",["リンゴ","バナナ"]);
unko.add("三郎",["ぶどう","リンゴ","バナナ"]);

1006 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 17:18:57.52 ID:by2sfxCb.net]
>>998
ありがとうごさいます!

1007 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 17:20:47.91 ID:RY58SNRu.net]
hashMapだと名前かぶると使えないけどな

1008 名前:1001 [Over 1000 Thread.net]
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 94日 23時間 6分 42秒

1009 名前:1002 [Over 1000 Thread.net]
2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


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

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

▼ プレミアム会員登録はこちら ▼
premium.2ch.net/
pink-chan-store.myshopify.com/


1010 名前:過去ログ ★ [[過去ログ]]
■ このスレッドは過去ログ倉庫に格納されています








[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<234KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef