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

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

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

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

Q&A

4回答

935閲覧

char suffix; の意味が分からない

退会済みユーザー

退会済みユーザー

総合スコア0

Java

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

0グッド

1クリップ

投稿2024/08/30 00:18

public class Matango {
int hp;
final int LEVEL = 10;
char suffix;
public void run() {
System.out.println("お化けキノコ" + this.suffix + "は逃げ出した!");
}
}

この中で、char suffixがどういう意図で何に使われるために記述されているのかが分かりません。
また、
System.out.println("お化けキノコ" + this.suffix + "は逃げ出した!");
はどのように出力されますでしょうか?

よろしくお願いいたします。

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

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

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

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

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

melian

2024/08/30 02:08

当該のソースコードは「スッキリわかるJava入門」のサンプルコードの様にみえます。使用例として Main.java が以下の様に記述されていますので、suffix は matango インスタンスの ID なのではないかと思います。(正確なことは書籍に説明が記載されているでしょう) public class Main {  public static void main(String[] args) {   Hero h = new Hero();   h.name = "ミナト";   h.hp = 100;   Matango m1 = new Matango();   m1.hp = 50;   m1.suffix = 'A';   Matango m2 = new Matango();   m2.hp = 48;   m2.suffix = 'B';   // 冒険のはじまり   h.slip();   m1.run();   m2.run();   h.run();  } }
otn

2024/08/30 02:12

> char型の変数、suffixを定義しているのは分かっており、その上で質問させていただいております。 そういう意味ではタイトルが適切ではないですね。 > どうしてこの質問がされているのか、質問者は何が分かっていないのか、をもう少し深く考えて汲み取ることが出来ると、この質問以外にも的を得た解答を出来るようになるのではないですか? まで考えることが出来る人であれば、ちゃんと質問文を書けば良いのにと思ってしまいます。 「この文脈で、suffix というのはどういう目的の変数で、何を保持するのでしょうか?」 的な質問文だけで良かったのでは?(もうちょっと練った方が良いと思いますが) それが分かれば、 > System.out.println("お化けキノコ" + this.suffix + "は逃げ出した!"); > はどのように出力されますでしょうか? は自明なので質問に書く必要がない。 質問に帰ると、短い断片だけ示されて、変数の意図を聞かれても分かるわけがない。 suffixに代入するコードや他のsuffixを使っている部分も全部見ないと。 (長いコードだと見る気がしませんが) "お化けキノコ" + this.suffix + "は逃げ出した!" から推測すると、キノコが複数あって、それらの区別のために"お化けキノコA" "お化けキノコB"みたいな物かということくらいですが、それくらいは「char suffix;」の文法的な意味とsuffixという英単語の意味が分かっている人であれば、他人に聞かなくても推測できるだろうし、この断片からはそれ以上分かるわけないです。
quickquip

2024/08/30 02:57 編集

この質問の仕方だと「書籍のサンプルコードだけ見ていて書籍は読んでない」か「説明がろくにされてない適当なコードだけのWeb記事を読んでいる」かのどちらかかな、と想像します。書籍を読んでいてわからないところを質問しているとは到底思えません。(「嘘だろ?」と思いました) 状況として何を伝えれば十分なのか? がわからないのが初心者ですから、質問者側の状況を汲んで回答してほしい、はもちろんわかります。 書籍の説明が足りてないのもわかります。 でも「もう少し深く考えて汲み取って」なんて、説明をサボった人が、質問だけから汲める範囲のストレートな回答に対して言うことではないでしょう。 この書籍のここのサンプルコードについて質問しています、とか、melian さんが引用したこれを使っているコードくらいは今からでも追加するといいと思います。
melian

2024/08/30 03:24

-_-Zzzzz さんがコメントした旨を報せるメールが届いているのですが(11:59投稿)、手元のブラウザ(Chrome, FireFox)では表示されません。内容はベストアンサー云々ということですが、-_-Zzzzz さんの自己回答・承認でよいかと思います。
guest

回答4

0

この中で、char suffixがどういう意図で何に使われるために記述されているのかが分かりません。

char型の変数、suffixを定義しています。
そこらへんは入門書などを読み、文法をきちんとマスターしましょう

投稿2024/08/30 00:31

y_waiwai

総合スコア88059

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

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

退会済みユーザー

退会済みユーザー

2024/08/30 01:36

残念ながら、どういう意図で何に使われるために記述されているのか、の解答になっていません。 char型の変数、suffixを定義しているのは分かっており、その上で質問させていただいております。 どうしてこの質問がされているのか、質問者は何が分かっていないのか、をもう少し深く考えて汲み取ることが出来ると、この質問以外にも的を得た解答を出来るようになるのではないですか? >入門書などを読み、文法をきちんとマスターしましょう イラっとしました。読んでるんですけど。 とは言えどうもありがとうございました。
y_waiwai

2024/08/30 02:42

提示されたコードは不完全なもので、正常に動作するものではありません どうやらそういうことさえ理解できていないようだ、というのを前提として回答させていただきました。
guest

0

umimi さんの回答にあるように

お化けキノコAは逃げ出した!
お化けキノコBは逃げ出した!

みたいなのを想定しているのでは ?

デモコードを作りました。

java

1/*public*/ class Matango { 2 public int hp; 3 public int LEVEL = 10; 4 char suffix; 5 public void run() { 6 System.out.println("お化けキノコ" + this.suffix + "は逃げ出した!"); 7 } 8} 9 10public class GameMain { 11 public static void main(String[] args) { 12 Matango a = new Matango(); 13 a.suffix = 'A'; 14 a.run(); 15 Matango b = new Matango(); 16 b.suffix = 'B'; 17 b.run(); 18 } 19} 20 21/* 22 * 【実行結果】 23 * お化けキノコAは逃げ出した! 24 * お化けキノコBは逃げ出した! 25 */ 26

投稿2024/09/22 21:23

JavaCommons

総合スコア86

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

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

0

何に使われるか → 表示に使われている
どういう意図で → オブジェクトを区別して表示するために

という以外にはコードからは読み取れないですね。
コードを読むのに慣れていない方は「何か大層な理由があるのでは」と深読みしようとしてしまいますが、実際は全然そんなことは無くて「Matango オブジェクトを区別して表示するの?じゃ変数入れとくか」程度だったりします。
なぜ String じゃなくて char なのかとかなら「1文字だけだから」(最大 26 体前提?)てことでしょうね。

投稿2024/08/30 07:44

jimbe

総合スコア13230

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

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

0

[香車]東上☆Aho(エイホ)☆海美「

お化けキノコAは逃げ出した!
お化けキノコBは逃げ出した!

みたいなのを想定しているのでは ?

投稿2024/08/30 00:22

umimi

総合スコア526

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.34%

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

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

質問する

関連した質問