0

文字列のペアを指定して、それらを制限するか、ペアで提供される長さに応じて余分な文字を追加するプログラムを作成したいと思います。たとえば、次のように動作する必要があります。

 create (new Line[] {"try","chicken"},
 new Couple[] {new Couple(’t’,3),new Couple(’c’,3)})

戻るべき

{"try", "chi"}

上記は、長さ(指定された数)が指定された単語以下の場合です。以下は、長さが単語よりも大きい場合の例です。

create (new Line[] {"try","chicken"},
new Couple[] {new Couple(’t’,3),new Couple(’c’,9)})

戻るべき

{"try", "chickenPP"}

つまり、残りのスペースを文字 P に置き換えます。

これが私が試したことです:

import java.util.Arrays;

public class Learn {

    private char firstChar;
    private int length;
    private char chars;
    private char FILL_CHARACTER = 'P';

    public Learn(char firstChar, int length, char chars) {
        this.length = length;
        this.firstChar = firstChar;
        this.chars = chars;
    }

    public static String[] create(String[] first, Couple[] second) {
        String[] strings = new String[first.length];
        for (int i = 0; i < first.length; i++) {
            if (second.length = first.chars) {
               learns[i] = first[i];
            } else if (second.length > first.chars) {
                   learns[i] = first[i] + FILL_CHARACTER;
            }
        }
    }
}

ご覧のとおり、多くのエラーがあります。おそらくAPIと混同さ​​れていると思います。修正してください。

4

1 に答える 1

0

Learnandで何をしているのかわかりませんが、 sCoupleを介してすべて実行できます。String

public static String[] create(String[] words,int[] lengths) {
    char fill = 'P';
    String[] ret = new String[words.length];
    for ( int i = 0 ; i < ret.length ; i++ ) {
    ret[i] = words[i];
    while ( ret[i].length() < lengths[i] ) {
        ret[i] += fill;
    }
    ret[i] = ret[i].substring(0,lengths[i]);
    }
    return ret;
}

使用する:
create(new String[]{"try","chicken"},new int[]{3,3});

于 2013-08-09T00:44:36.383 に答える