質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

1回答

739閲覧

【Java】クラスで入力した内容を反映させたい

退会済みユーザー

退会済みユーザー

総合スコア0

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

1クリップ

投稿2020/01/11 04:13

編集2020/01/11 06:08

調べても理解できなかったので質問させていただきます。

入力した数値の結果を出力する、という内容ですが、
以下が私が作成した内容です。

public class test_nyuryoku { public static void main(String[] args) throws IOException {   BufferedReader Write = new BufferedReader(new InputStreamReader(System.in)); String STR = Write.readLine(); int NUM = Integer.parseInt(STR); if (NUM >= 0) { System.out.println("0以上が入力されました"); } else { System.out.println("マイナスの値が入力されました。"); } } }

こちらは問題ありませんが、この内容の4~6行目を削除して、入力処理クラスを作成して、
そのクラスを呼び出す、ということをしたいのですが、
「NUMを変数に解決できません」と構文エラーが表示されます。

◆作成したコード

import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class test_nyuryoku { /** * Stringをint型にして値をかえす、try~catch文でキャストする * キャスト不可の場合は-1を返却 */ public static int Int_HENKAN(String str) { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int NUM; System.out.print("数字を入力してください。>"); try { str = br.readLine(); NUM = Integer.parseInt(str); } catch (IOException e) { // TODO 自動生成された catch ブロック e.printStackTrace(); return -1; } return NUM; } public static void main(String[] args) throws IOException { // BufferedReader Write = new BufferedReader(new InputStreamReader(System.in)); // String STR = Write.readLine(); // int NUM = Integer.parseInt(STR); Int_HENKAN(NUM); if (NUM >= 0) { System.out.println("0以上が入力されました"); } else { System.out.println("マイナスの値が入力されました。"); } } }

Int_HENKAN(NUM)で入力した内容を代入すると認識しておりましたがどうにもうまくいきません。
どう探しても解決策が見えません。ご教授ください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2020/01/11 04:28

コードはマークダウンのcode機能を利用してご提示ください
退会済みユーザー

退会済みユーザー

2020/01/11 06:09

申し訳ございません。Code機能を使用してコードを貼り付けました。
guest

回答1

0

ベストアンサー

こういうことがしたいのかな?

ついでに、

  • クラス名は大文字開始、アンダースコアなしにしましょう
  • メソッド名、ローカル変数名は小文字開始、アンダースコアなしにしましょう
  • 定数はすべて大文字にしてアンダースコアで接続します

java

1import java.io.BufferedReader; 2import java.io.IOException; 3import java.io.InputStreamReader; 4 5class Input { 6 public int readInteger() throws IOException { 7 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 8 System.out.print("数字を入力してください。>"); 9 return Integer.parseInt(br.readLine()); 10 } 11 12 void check(int num) { 13 if (num >= 0) { 14 System.out.println("0以上が入力されました"); 15 } else { 16 System.out.println("マイナスの値が入力されました。"); 17 } 18 } 19} 20 21public class Main { 22 public static void main(String[] args) { 23 Input input = new Input(); 24 try { 25 int num = input.readInteger(); 26 input.check(num); 27 } catch (NumberFormatException e) { 28 System.out.println("数字以外が入力されました。"); 29 } catch (IOException e) { 30 System.out.println("入力エラーが発生しました。"); 31 } 32 } 33}

投稿2020/01/11 05:51

編集2020/01/11 06:10
shiracamus

総合スコア5406

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問