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

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

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

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

Q&A

解決済

2回答

1185閲覧

substring関数について

退会済みユーザー

退会済みユーザー

総合スコア0

Java

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

0グッド

0クリップ

投稿2020/08/21 01:54

private static final int NUMB=10;
String num01= syokaiNo.substring(0,NUMB); //① String num02= syokaiNo.substring(NUMB);//②

substring関数について質問したいです。
変数定義してある値からsubstringを使い値をとるのに、
コメントの①と②の違いがわかりません。
①は値の0番目からNUMBの値全て取れ、②も同じようにNUMBの値が全て取れると思いましたが、
結果は違うのでしょうか?

①と②の結果の違いを教えていただきたいです。

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

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

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

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

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

swordone

2020/08/21 01:58

実際に実行してみてください。 ただし、shokaiNoは11文字以上の文字列にしてください。
y_waiwai

2020/08/21 01:58

実際に動作させた場合の結果はどうなるんでしょうか
退会済みユーザー

退会済みユーザー

2020/08/21 02:01

Eclipseを使っているのですが、どのように動かせるのかわからないのですが、教えて頂けないでしょうか?
swordone

2020/08/21 02:02

> どのように動かせるのかわからないのですが、教えて頂けないでしょうか? まずその勉強が先では?
dodox86

2020/08/21 02:13

> Eclipseを使っているのですが、どのように動かせるのかわからない Eclipseの使い方が分からないのか、Eclipse上でString#subsringの確認の仕方、動かし方が分からないのか、どちらだか分かりづらいですね。swordoneさんが書かれているように、まず動作できるようにするのが先決だと思います。そうでないと今後、いちいち質問することになってしまいます。
退会済みユーザー

退会済みユーザー

2020/08/21 02:17

Eclipse上でString#subsringの確認の仕方、動かし方が分からないです。値をどのようにメソッドに渡してsubstringの結果を確認できるかわからないです。何かいい本などありますでしょうか?
m.ts10806

2020/08/21 02:22

デバッグの仕方が分からないということでしょうか。 調べてください。幾らでも出てくる内容です。
dodox86

2020/08/21 02:25

String#substringの使い方を理解したいわけなのでしょうから、もとの文字列に対してこういう値を引数として渡したら、想定としてこういう出力が得られるはずだ、と言う前提を自分で考えて試すのではないのでしょうか? テスト、つまり自分が目的とすることと手順は自分で考える必要があります。そんな大げさな話ではないはずなのですが、それも思い付かない、と言うことでしょうか。
退会済みユーザー

退会済みユーザー

2020/08/21 02:29

デバックの仕方で調べてみます。ありがとうございます。
guest

回答2

0

substringメソッド | Javaコード入門

とりあえずわかりやすい(と思われる)解説です。

投稿2020/08/21 02:02

y_waiwai

総合スコア88026

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

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

退会済みユーザー

退会済みユーザー

2020/08/21 02:14

わかりやすい資料ありがとうございます!!
guest

0

ベストアンサー

①は値の0番目からNUMBの値が全て取れるのは合っています。
②はNUMB以降の値が全て取れます。NUMBより前の値はとれません。

subStringの文字列と番号の関係は
NUMBが10の場合、①は以下のイメージの0から10の間の文字です。
②は10より後のイメージです。
分からなくなったら、以下のイメージを思いだしてください。
イメージ説明

投稿2020/08/21 02:00

編集2020/08/21 02:32
root_jp

総合スコア4666

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

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

退会済みユーザー

退会済みユーザー

2020/08/21 02:05

教えて頂きありがとうございます。NUMBより前の値とは例えば、”2019NUMB0821”のような連携した値で①は”2019NUMB0821”が全て取得でき、②はNUMBの値のみということでしょうか?
root_jp

2020/08/21 02:09 編集

NUMBが10の場合 ①2019NUMB08 // 1番目から10番目の文字 ②21 // 10番目より後の文字全て
退会済みユーザー

退会済みユーザー

2020/08/21 02:13

なるほど。全然結果が違うんですね。勉強になりました。ありがとうございました。
root_jp

2020/08/21 02:32

イメージを追記したので、参考にしてください。
退会済みユーザー

退会済みユーザー

2020/08/21 02:38

ホントありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問