Полученная строка возвращает первый символ в строке, если она содержит более 4 символов, а последний символ в противном случае - PullRequest
0 голосов
/ 15 октября 2019

Я написал немного кода, чтобы попытаться решить мой заданный вопрос, учитывая, что строка возвращает первый символ в строке, если она содержит более 4 символов, и последний символ в противном случае. но я не могу разобраться, помощь с этим будет принята с благодарностью.

ДЛЯ ПРИМЕРА: TEST - System.out.println (firstOrLastChar ("njarx"));И РЕЗУЛЬТАТ ДОЛЖЕН БЫТЬ n

Я пробовал некоторые для циклов и значений счетчика, но я знаю, что это, скорее всего, неправильно

public String firstOrLastChar (String str) {

    int i,index=-1;
int *int[] count = new int[256];

for(i=0;i<len;i++)
{
   count[*(str+i)]=0;
}

for(i=0;i<len;i++)
{
   count[*(str+i)]++;
}

for(i=0;i<len;i++)
{
    if(count[*(str+i)]==1)
    {
        index=i;
        break;
    }
}

if(index==-1)
    return '@';
if else (return.last.char)

else
    return *(str+index);

Ответы [ 2 ]

1 голос
/ 15 октября 2019

вы можете сделать что-то подобное:

if(myInput!=null){
    if(myInput.length()>4){
           System.out.println(myInput.charAt(0));
    }else{
           System.out.println(myInput.charAt(myInput.length()-1);
    }
} 
0 голосов
/ 15 октября 2019

try:

public char firstOrLastChar(String input) {
  if (input.length() > 4)
    return input.charAt(0);
  return input.charAt(input.length() - 1);
}

При желании вы можете добавить нулевую проверку. Например:

public char firstOrLastChar(String input) {
  if (input == null)
    return '@'; // or whatever you want to do
  if (input.length() > 4)
    return input.charAt(0);
  return input.charAt(input.length() - 1);
}
...