1

私はこのフォーラムに初めて参加し、groovy の問題について助けを求めます: 以下のコードが EOF エラーを返す理由がわかりません...

arUserName=UserName.split(" ");

UserLastName='';

for ( i in 1..arUserName.length -1 )
{
UserLastName=UserLastName + arUserName[i];
}
UserLogin=UserLastName;
UserLogin=UserLogin.toLowerCase();

返されるエラーは次のとおりです: groovy 関数を実行できません: 起動に失敗しました: Script225.groovy: 1: EOF が必要です。'UserLogin' @ 行 1、列 134 が見つかりました。UserLogin= ^ 1 エラー

何か案が ?

前もって感謝します!ラローン

4

2 に答える 2

0

これは、split()を呼び出しているときにUserNameがnullまたは未定義であるために発生するエラーです。

UserName.split( "")で

したがって、arUserNameもnullまたは未定義になります。

したがって、UserNameに値を割り当ててから、適切な結果が得られているかどうかを確認してください。

于 2012-07-06T10:28:27.480 に答える
0

コードをGroovyコンソールに貼り付けます(動作するように上部にUserNameを追加します):

UserName = 'Tim Yates'

arUserName=UserName.split(" ");

UserLastName='';

for ( i in 1..arUserName.length -1 )
{
UserLastName=UserLastName + arUserName[i];
}
UserLogin=UserLastName;
UserLogin=UserLogin.toLowerCase();

正常に動作します。

コード スタイルに関するものではありませんが、変数名の前に小文字を付けるのが通常であり、コードは次のようにより Groovy な方法で記述できます。

userName = 'Tim Yates'

userLogin = userName.split(" ")    // Split on space
                    .drop( 1 )     // Drop the first element
                    .join()        // Join strings together
                    .toLowerCase() // Convert to lowercase
于 2012-07-06T07:16:28.747 に答える