Alena
  • Alena
  • 0
3 теста в день можно и без Q. Но я столько интересного узнала, а еще внимательности учит хорошо. Мне очень понравилось. Это мой формат.
realcorwin
Там для прохождения какие-то «Q» нужны. Прямо как в Кин-дза-дзе :).
CreaT1ve
Всегда рад помочь, хоть и косвенно)))
yar_tur
я нашел багу в своем коде )))
Код составлен логично. Неправильно обращение с indexOf.

BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String key = new String();
while(true){
try{
key = reader.readLine();
if(key.equals(«exit»))break;

if( key.indexOf('.') >= 0 )
/*тут у меня было " >0 ", что в случае с " .123 " не дает сработать корректно*/
{
Double i = Double.parseDouble(key);
print(i);
}else if( Short.parseShort(key) > 0 && Short.parseShort(key) < 128 )
{
print(Short.parseShort(key));
}else if( Integer.parseInt(key) <= 0 ||Integer.parseInt(key) >= 128 )
{
print(Integer.parseInt(key));
}
}catch(Exception e){
print(key);
}

}
В любом случае CreaT1ve натолкнул на мысть, за это спасибо.
CreaT1ve
2. У меня нету доступа к IDE на данный момент и никакого способа отформатировать код в более читаемый вид, поэтому что-то неправильно наверное написал.
1. Да, согласен, только что присмотрелся и увидел, что этот try catch ловит и ошибку парсинга в Double.
Насколько я вижу, это определенный случай, который надо как-то в коде присоеденить.
Может что-то в этом роде?
if( key.indexOf('.') > 0 ){
if (key.indexof('.') == 0){
Double i = new Double(«0»+key).doubleValue();
else{
Double i = new Double(key).doubleValue();
}
print(i);
}
П.С. простите, что так пишу, снова же, из-за 2-ого пункта, да и с работы.
+ Советую вам отрефакторить код, привыкать так скажем)))
Alena
  • Alena
  • 0
Спасибо, я как раз сегодня на них наткнулась и попробовала 3 раза пройти. Результаты «впечатлили»: Java — основы — 3 верных из 20, второй раз — 5 верных из 20 ))) Я была в ауте от своих знаний. Зато по Servlet, которых я вообще не в зуб ногой 10 из 20 )))) Спасибо Google )))
zzzz
  • zzzz
  • 1
Я бы для начала попробовал вот тут www.quizful.net тесты попроходить.
yar_tur
1. Позволю себе не согласиться с таким утверждением: в моем коде текст с точкой становится кандидатом на Double, а если это не так, то уходит в исключение, где обрабатывается как String.
Поэтому мне только надо решить как преобразовывать строки типа ".123" в double.
2. У тебя с синтаксисом catch что то не так. Компилятор аж завыл.
Кстати, твой код, к сожалению, все числовые значения обрабатывает как Double.
CreaT1ve
Попробуй так:
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String key = new String();
while(true){
try{
key = reader.readLine();
if(key.equals(«exit»))break;
try{
Double i = Double.parseDouble(key);
print(i);
}catch{
if( Short.parseShort(key) > 0 && Short.parseShort(key) < 128 )
{
print(Short.parseShort(key));
}else if( Integer.parseInt(key) <= 0 ||Integer.parseInt(key) >= 128 )
{
print(Integer.parseInt(key));
}
catch(Exception e){

}
}catch(Exception e){
print(key);
}
}
В твоем коде просто получается, что любой текст, который содержит точку, твой код будет воспринимать как Double, что в априори неправильно.
GreegAV
В последней картинке 14 строчку можно выкинуть, подкорректировав количество скобок.
if (isPrepared)
return true;
return false;
Alena
  • Alena
  • 0
Да, по поводу вариантов ты все верно пишешь. Второй вариант интересная идея, сама бы не догадалась. Я думаю, что еще можно совместить все варианты или часть из них.
vampirit
Я исхожу из реального положения вещей.

Что есть:
-админам уже озвучили просьбу спрятать требования — они обещали подумать как это сделать, дублировать смысла нет.

Что делать:
— просто не смотреть требования
— либо самому до прочтения закрывать их таблом снизу (run, terminal....)

+ замечу, что теже требования вы увидите, когда будете сдавать задачу на валидацию, так что в вашем варианте, наверное лучше вернуться на версию 1, там ни требований, ни подсказок, ну либо пока мириться с тем, что есть.
tanzwud
J2SE это довольно таки староватое название. Да обычная джава, но с одним но, скорее всего вопросы будут не только типа где тут опечатка, но могут попасть и вопросы на сборщик мусора, модель памяти в JVM, всякого рода как запустать прилоижение из архива и тп.
JEE слишком большой топик. Там могут быть вопросы как по EJB так и Spring, 100% что то около сервлетов будет.
Я вижу 3 варианта.
1. Потрать неделю и потрепать свои нервы и только потом попытаться
2. Глянуть что за портал где будет тест, и попробовать найти примеры вопросов
3. Попытаться проййти тест без подготовки. Опять же есть интернет и IDE. Для разработчика важно уметь находить информацию.
Удачи
Alena
Спасибо, начну читать. Может осилю за неделю, хотя я очень сильно в этом сомневаюсь ((((
Alena
А J2SE изучали?
realcorwin
Скиньте мне тогда, пожалуйста :).
vsineln
нее, с работы — был тренинг по ЕЕ
realcorwin
Лекции Головача, или какие-то ещё?
vsineln
Привет! J2EE мы тут не изучали — лучше почитать что-нибудь сначала. Я по учебнику Гонсалвеса занималась. И есть еще лекции (базовый уровень) — если нужно, напиши сообщение, скину ))
aburakov