- ベストアンサー
for文内の変数を外でリターンしたい
- for文の中の変数を外で返す方法を教えてください。
- for文(拡張)内の変数(ローカル)を外で返す方法が知りたいです。
- for文のブロック内での変数を最終的に外で返したいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- 拡張for文の型変換について
Javaでプログラミングを勉強しております。 拡張for文で変数宣言をする時についての質問です。 argsに数字を入れてString型をInt型に変換する時、変数宣言はどう書けばいいのでしょうか? 拡張for文に入れる前に Int num = Integer.parseInt(args[0]); と宣言してから for(int num : array){ 処理 } とするのか for(int num : array){ num = Integer.parseInt(args[0]) …ほかの処理 } みたいにfor文の中に埋め込むのか分かりません。 argsのString型を拡張for文でInt型にするにはどう書いたらいいでしょうか
- 締切済み
- Java
- return文について質問
以下は、あるJavaの参考書の問題を僕が解いてソースコードに起こしたものです。その際のエラーが出てしまうことについて、その原因を質問させていただきます。 package 第16章; public class 練習16_4_4 { public static void main(String[]arg){ double[]dt={55.1,23.0,168.8,25.6,33.1,101.5}; System.out.println(isOver100(dt)); } public static boolean isOver100(double[]a){ for(double x:a){ if(x>100.0){ return true; }else{ return false; } } } } 質問:『public static boolean isOver100(double[]a){』、ここの部分でエラーとして「このメソッドは型booleanの結果を戻す必要があります」と表示されます。何故ですか?だって、return文で型booleanであるtrueやfalse返してるのに、、 まったく原因わかりません。
- ベストアンサー
- Java
- 静的変数と静的メソッドの使い方について
独習JAVAにてJAVAを学習しています。「コマンドライン引数を受け取り、それをスペイン語表記に変換して表示するアプリケーションを作成しなさい。例えば、OneはUno、・・・、FiveはCincoになります。静的メソッドを使って実現しなさい」という問題で躓きました。以下、私が作成したプログラムです。 class Language { static String st[] = new String[5]; //静的初期化ブロックは実行しない。 //コマンドライン引数を受け取るmainメソッドが使えないため //静的メソッド static String translation(){ for(int i = 0; i < st.length; i++) { if(st[i] == "One") return st[i] = "Uno"; if(st[i] == "Two") return st[i] = "Dos"; if(st[i] == "Three") return st[i] = "Tres"; if(st[i] == "Four") return st[i] = "Quatro"; if(st[i] == "Five") return st[i] = "Cinco"; } } //21行目 } class StaticalMethodPractice { public static void main(String args[]) { //mainメソッドが登場したので、静的変数を初期化する for(int i = 0; i < Language.st.length; i++) Language.st[i] = args[i]; //静的メソッドを実行 System.out.println(Language.translation()); } } このプログラムに対して、21行目return文が指定されていませんというエラーメッセージが出てくるのですが、そもそもreturnの使い方もよく分からないので右往左往している状況です。低級な質問かもしれませんが、よかったらアドバイスの方よろしくお願いします。
- 締切済み
- Java
- for文の()内のメソッドは?
普通、String型の変数strの長さを知りたいと 思ったら str.length() で調べると思うのですが、 for 文中では、こういう風になりますよね‥‥ for (int i=0; str.length; i++) ただ、while文の()内では、ちゃんとlengthメソッドの 後に()を付けていたはず。 for文の場合の()は特殊なのかなと思うのですが、 これってどういう理屈なのでしょうか? # ;(セミコロン)がどうも怪しい感じなのですが。
- ベストアンサー
- Java
- for文の中の参照変数について
以下のように、 for文(例えば、10回ループ)の中で参照変数を宣言した場合、 1回目のループが終わったタイミングで、cccという変数はメモリ上から削除されるのでしょうか? 削除されないとしたら一つのメソッド内で同じ変数名が繰り返し宣言されることになるので 毎回削除されているのだとは思いますが。。 -------------------- method() { for(AAA aaa : bbb){ CCC ccc= null; } } -------------------- 教えて下さい。
- ベストアンサー
- Java
- ParseとTryParseを実装するなら
こんにちは。c#初心者です。 c++にも、c#にもintにParseメソッドと、TryParseメソッドがあると思いますが、intのように比較的簡単に解析できるもの(比較的簡単なメソッド)ならParseメソッドをコピペして、例外の部分を「return false;」に変えるだけで十分だと思うのですが、問題は、Color構造体のような(やや)複雑なものです。 R, G, Bに加え、α値があり、また、名前で色を表す可能性もあります。考えただけで(intと比べると)かなり面倒なメソッドになることが分かると思うのですが、とりあえずParseメソッドを実装したとしましょう。 次にどうせならTryParseメソッドも実装したいところなのですが、初心者が考えた方法は3つあります。 1、Parseメソッドをコピペして(FormatExceptionなどの)例外部分を「return false;」に変える。 2、Parseメソッドをtryブロックに入れて、catchブロックで「return false;」とする。 3、privateなtryParseメソッドを用意し、それをベースにする。戻り値はException型で、Parseメソッドではnullで無ければスロー、TryParseメソッドでは「return exception == null;」とする。 (ソースコードは一番下) 1は保守性上、少々問題ありかと。2は利用側がちょっと楽になることには変わりないが、パフォーマンス重視には向かない(というかテキストを解析している時点でパフォーマンス低いかな?)、3は1、2の問題を克服しているもののこのような設計でよいのか自信なし。 という訳で悩んでいます。どれが一番良いでしょうか? もっと良い案があればそれでも良いです。どなたかわかる方がいらしゃいましたら教えてください。 ----------- 簡易ソースコード -------------- c#で書いています。また読みやすく(なっているかどうかは分かりませんが)するため、1行で書けるところも2行以上で書いている部分もあります。 案1 public static Color Parse(string text) { …… if ( invalid ) throw new FormatException(); …… } public static bool TryParse(string text, out Color result) { …… if ( invalid ) { result = Color.Empty; return false; } …… } ------------------------------------------------ 案2 public static Color Parse(string text); // 略 public static bool TryParse(string text, out Color result) { try { result = Parse(text); return true; } catch ( FormatException ) { result = Color.Empty; return false; } } --------------------------------------------------- 案3 private static Exception tryParse(string text, out Color result) { …… if ( invalid ) { result = Color.Empty; return new FormatException(); // スローせずに返す } …… } public static Color Parse(string text) { Color result; Exception exception = tryParse(text, out result); if ( exception != null ) throw exception; else return result; } public static Color TryParse(string text, out Color result) { Exception exception = tryParse(text, out result); if ( exception == null ) return true; // 例外が無ければ成功 else return false; }
- ベストアンサー
- C・C++・C#
- java for文、if文を使っての三角形
例:1 23 456 78910 ・・・・・・のようにひょうじさせるプログラムを作成するのに、for文とIf文を使っての三角形を 作成したいのですが、If文の条件式が分からないのとどうしたら、上記のようなプログラムが 出来るのか教えてください。お願いします。 public static void main(String[] args) { // TODO 自動生成されたメソッド・スタブ // 行に表示させる個数を表現するための変数がないため今回、新たに変数を用意する。 int a = 1; //行の終わりを改行して1増やすための変数がないため今回、新たに変数を用意する。 int b = 1; // 1~100までの数字を用意する。 for (int i = 1; i <= 100; i++) { //変数iをSystem.out.printを使って変数iをコンソールの中に出力させる。 System.out.print(i); //System.out.println("")を使って改行する。 System.out.println(" "); //変数iに1増加して数字を順番にする。 i++; if(a <= i){ System.out.print(a);
- ベストアンサー
- その他(学問・教育)
- ヒアドキュメントの中のfor文
ヒアドキュメントの中のfor文 function maindata($data) { $result = <<<EOD <tr> <td>$data[0]</td> <td>$data[1]</td> <td>$data[2]</td> <td>$data[3]</td> <td>$data[4]</td> <td>$data[5]</td> </tr> EOD; return($result); } を、 function maindata($data) { $result = <<<EOD <tr> for($i = 0; $i <= 4; $i = $i + 1){ <td>$data[i]</td> } </tr> EOD; return($result); } のように書きたいのですが、このままだとエラーになります。 どう書けばよいのでしょうか?
- ベストアンサー
- PHP
- for文
質問お願い致します。 これのソースのfor文を一つの文にするにはどのように書いたらよいでしょうか? お願い致します。 //指定された文字列が"a"と"b"の両方を含む場合はtrue、なければfalseを返す public class Mondai { public static void main(String[] args) { System.out.println("解答 :" + charBothContain("Habllow")); } public static boolean charBothContain(String str) { boolean answer1 = false; boolean answer2 = false; for (int i = 0; i < str.length(); i++) { char c = str.charAt(i); if (c == 'a') { answer1 = true; break; } } for (int i = 0; i < str.length(); i++) { char c = str.charAt(i); if (c == 'b') { answer2 = true; break; } } return answer1 && answer2; } }
- ベストアンサー
- Java
- 教えて下さい。for文内での変数宣言について
Javaのプログラムで困っています。 for文内でfor分だけ変数を宣言したいのですが、 その際変数名に数字(ナンバリング)を付与した形にしたいと考えています。 例) String Test1 String Test2 : : 上記の様な場合、for文をどの様に作成したらいいですか? num = 5; for(int i = 0; i < num; i++){ String Test = null; } ⇒このままだと変数Testが1つしか出来ない・・・ 変数の後にナンバリングしたいのですが上手くいきません。 numの数はユーザの指定で毎回変更されるため、 for文でその数だけ変数を作成したいと考えています。 どなたかご教授宜しくお願い致します。
- ベストアンサー
- Java
お礼
なるほど、 外で宣言した変数をブロック内で、受け取り役として使うわけですね。 どうもありがとうございました。簡潔明瞭で助かりました^^