2016-05-23 10 views
-3
public class learningJava 
{ 
    public static String last4(String s) 
    { 
     String str = "something"; 
     //int length = str.length(); 
     String substr = str.substring(str.length() - 4); 
     if (str.length() < 4) 
     { 
      return str; 
     } 
     return str.substring(str.length() - 4); 
    } 

} 
+1

とそのコードに基づいた質問は何ですか? –

+0

私は彼がこのメソッド(コードでは表示されていない)を呼び出していると推測しており、文字列を渡すことはありません。 –

+0

申し訳ありませんが、主なものを投稿するのを忘れました...はい、コンパイラはエラーを返します:空のパラメータフィールド。それはなぜそうですか?文法エラーはありません... – JayZ

答えて

0

この関数では、パラメータとしてString sが必要です。おそらく、このエラーはパラメータを追加せずにどこかでこの関数を使用しているためです。

あなたはこの機能を使用したい場合はあなたのようなコードを使用する必要があります:あなたはそれを使用する必要はありません実際には

String y; 

String x = last4(String y); 

あなたは文字列を削除することができますので、あなたの関数は、任意のパラメータを必要としません。あなたのような機能を使用してください。

public class learningJava 
{ 
    public static String last4() 
    { 
     String str = "something"; 
     //int length = str.length(); 
     String substr = str.substring(str.length() - 4); 
     if (str.length() < 4) 
     { 
      return str; 
     } 
     return str.substring(str.length() - 4); 
    } 

} 

と、あなたは、あなたの機能で「何か」を他の文字列を使用したい場合には

String y; 
y = last4(); 

それとも、あなたがそのようにそれを変更することができます好きなようにそれを使用することができます。

public class learningJava 
{ 
    public static String last4(String y) 
    { 

     //int length = y.length(); 
     String substr = y.substring(y.length() - 4); 
     if (y.length() < 4) 
     { 
      return y; 
     } 
     return y.substring(y.length() - 4); 
    } 

} 

この関数は、私の最初の例のようにパラメータを使って呼び出すことができます。

+0

このような徹底的な答えのために多くのGloominessをありがとう。 – JayZ

+0

あなたの問題を解決し、あなたの応答に感謝してうれしいです。 – ReadyFreddy

0

あなたはlast4メソッドに渡されたsパラメータを使用していません。 また、クラス名は大文字で始まる必要があります。したがって、LearningJavaである必要があります。

public class LearningJava { 
    public static String last4(String s) { 
     if(s.length() < 4) { 
      return s; 
     } 
     String subs = s.substring(s.length() - 4); 
     return subs; 
    } 

    public static void main(String args[]) { 

     System.out.println(LearningJava.last4("something")); 
    } 
} 

(注)substringメソッドを使用する前であれば(s.length()< 4)の部分を実行したい:

は、私が何をしたいことは、このようなものだと思います。そうしないと、エラーが発生します。

+0

ありがとうございました。 – JayZ

関連する問題