#java #string
#java #строка
Вопрос:
Я начинаю изучать Java, и с контентом, на котором мы учимся, я просто НЕ МОГУ справиться, он мало что объясняет, а просто дает вам мягкий пример и говорит вам сделать это самостоятельно с помощью чего-то совершенно другого. как и выше, мне нужно взять строку ‘longNumber’ и убрать из нее последний символ.
* Write a description of class CreditCardChecker here.
*
* @author Craig Beverley
* @version 03/12/2020
*/
public class CreditCardChecker
{
// Variable for long numbers to be checked
public String longNumber;
public StringBuilder firstFifteen;
/**
* Constructor for objects of class CreditCardChecker
* including long number and first fifteen
*/
public CreditCardChecker(String longNumber)
{
// initialise long number variable
this.longNumber=longNumber;
}
/**
* Sets the value of long number
*/
public void setLongNumber(String aLongNumber)
{
this.longNumber=aLongNumber;
}
/**
* method to get the long number
*/
public String getLongNumber()
{
return this.longNumber;
}
/**
* method to check that long number has exactly 16 digits
*/
public boolean isCorrectLength()
{
if (longNumber.length() == 16)
{
return (true);
}
else
{
return (false);
}
}
/**
* Method to get the first 15 characters of long number
*/
public String firstFifteen(String longNumber)
{
firstFifteen=longNumber.deleteCharAt(16);
}
}```
Комментарии:
1. В вопросе указан последний символ строки. В названии указаны первые 15 символов. Что это?
2. извините. мне нужно удалить последний символ 16-значной строки, чтобы сохранить первые 15 символов
3. Вы уверены, что хотите «удалить»? Вы могли бы использовать
setLength
илиsubString
вместо этого4. Кроме того, комментарий к методу, по-видимому, предлагает просто получить значение и вернуть его, фактически ничего не удаляя из StringBuilder .
5. мне также понадобится тот же последний символ на более позднем этапе кода, да, так что, я думаю, это будет опция subString ?
Ответ №1:
Я не совсем уверен, что вам нужно firstFifteen
как поле. Вы можете просто захватить первые 15 символов
return longNumber.substring(0, 15);
Вам также не нужен параметр для этого метода, поскольку longNumber
это поле
Комментарии:
1. Это великолепно, спасибо, я впервые слышу термин «поле» и «параметр», предполагая, что это просто другая терминология… было ли поле первым пятнадцатым= ? и firstFifteen(строка longNumber) аргумент параметра?
2.
public StringBuilder firstFifteen;
является полем класса. Аргументы методов иначе называются параметрами