java
1private String Num(String inData){ 2 int value01= Integer.parseInt(inData.substring(i,i+1)); 3 int num02 = (value01+1)% 10; 4 5return n 6}
int num02 = (value01+1)% 10; この+1というのはだた受けた値に対して+1をしているのか、
受けたinDataがString型だから0からはじまっているから番号を合わせるために+1をしているのか、
上記両方違うのかわかりません。
もし、inDataが20200831の場合このメソッドだけ見ると
(20200831+1)%10でまちがいないでしょうか?
ほかもっと考慮する点はどこか教えていただきたいです。
そもそもreturnしているnが何なのか不明です。
メソッドの目的が不明なので答えられません。
以前の質問とも共通しますが、変数名が正しくなくて「突然何者かわからない変数が出現する」ようなコードを提示されても、誰も理解できません。
20200831 は 2020 年 8 月 31 日のことですね。
ここから substring で 1 文字抜き出し、数値に変換しています。抜き出すのは文字列の先頭から i 番目(0 ベース)の文字です。それに 1 を加えて 10 の剰余を取ることにより、0 から 9 までの数値を 1 から 10 の数値にした上で 10 を 0 に変換しています。
そこまではこのコード内にありますが、その前後で何をしているかわからないため、結果として
10 を 0 に変換しています。とのことですが、これは+1しなければ、0はなく1から9までになりますか?
> もし、inDataが20200831の場合このメソッドだけ見ると
(20200831+1)%10でまちがいないでしょうか?
String inData なので、inData が 20200831 という int ではあることは考えられません。
inData が "20200831" という String の場合、ということでしょうか?
定義した Numメソッドを呼び出す部分のコードも追加してください。
> ほかもっと考慮する点はどこか教えていただきたいです。
> int value01= Integer.parseInt(inData.substring(i,i+1));
変数 i はどのように宣言されていて、ここでの値は何ですか?
> return n
メソッド Num が String を返すので、n は String でないといけないはずですが、
変数 n はどうように宣言されていて、ここでの値は何ですか?
retrun n; のようにセミコロンを付けないとコンパイルエラーになるはずです。
正しい回答がほしければ、必要な情報を省略せずに全部書いてください。
> +1しなければ、0はなく1から9までになりますか?
もともとの 0 が加工さ
>ほかもっと考慮する点はどこか
質問するときにエラーで困ってないのでしたら、エラーの出ない、コード全てを提示してください。そもそもコンパイルできないコードを提示されても応えようがないのです。考慮と言うより配慮が足りません。
回答1件
あなたの回答
tips
プレビュー