Правила Форума редакция от 22.06.2020 |
|
|
|
|
|
Опции темы | Опции просмотра | Language |
25.09.2009, 19:16 | #31 | ||||||||||||||||||||||||||||||||||||||||||||||
Re: Простые (ли?) задачки по JAVA
Добавлено через 41 минуту
Эклипс и виндозная консоль дали одинаковые результаты по вашему исходнику: Object NOWA created: 1 Object NOWA created: 2 Object NOWA created: 3 Object NOWA created: 4 Total finalized = 4 По теории в момент прохода цикла формируется стек, в него вставляются созданные объекты, после завершения цикла- вызывается GC и в обратном порядке удаляет эти объекты. небольшая модификация кода даёт наглядный результат размещений объектов в стеке и обьратного их извлечения: class Nowa { static int objID = 0; static int finalized = 0; int i; Nowa() { i=++objID; System.out.println("Object NOWA created: " + i); } public void finalize() { System.out.println("Object NOWA deleted: id=" + i); finalized++; } } public class Garbage { public static void main(String[] args) { for (int i = 1; i < 5; i++) { Nowa nowa = new Nowa(); } System.out.println("Start GC_____"); System.gc(); System.out.println("Total finalized deleted obj-s = " + Nowa.finalized); } } Результат работы: Object NOWA created: 1 Object NOWA created: 2 Object NOWA created: 3 Object NOWA created: 4 Start GC_____ Object NOWA deleted: id=4 Object NOWA deleted: id=3 Object NOWA deleted: id=2 Object NOWA deleted: id=1 Total finalized deleted obj-s = 4 Добавлено через 55 минут
Эклипс помоему не справится с такой задачей, по крайней мере у меня не вышло, но стандарт(работа из консоли) сработал, сам проверил. Выход следующий: 1) создаём файл: WithoutMain.java его содержимое: public class WithoutMain{ static { System.out.println("Hello World"); System.exit(0); } } 2) Вызываем консоль- cmd 3) в консоли компилируем наш файл командой: javac WithoutMain.java 4) тут же запускаем скомпилированный класс командой: java WithoutMain и получаем интересующий нас вывод на консоль: Hello World PS: работает без main метода благодаря тому, что статический метод всегда вызывается в момент запуска, в данном случае получается наш безымянный статический метод вызывается будто это метод main. Добавлено через 1 час 10 минут
Программы с меткам думаю редкое явление, не даром же существует пословица- "з\п программиста обратнопропорциональна кол-ву меток в коде " Касательно результата работы вышеприведенного кода получаем такие итерации: 1) i=0 j=3 continue 2) i=1 j=3 continue 3) i=2 j=3 continue выход из внешнего цикла "X1: for(i = 0; i < 3; i++)" и финальный инкремент i итого имеем: i=3 j=3
__________________
Возможно, в этом мире ты всего лишь человек, но для кого-то ты весь МИР! Последний раз редактировалось zondercap; 25.09.2009 в 20:27.. Причина: Добавлено сообщение |
|||||||||||||||||||||||||||||||||||||||||||||||
Сказали спасибо: |
Реклама: | pwz-c 70-40 w2/3 | Интернет-магазин КНС Нева - KF564C32RSK2-64 - КНС Санкт-Петербург - мы дорожим каждым клиентом! | алкоголь и имплантация зубов | Хорошее предложение в KNS на дигма ноутбук - более 50-ти тысяч наименований товаров со склада в Москве | интеграция циан и битрикс 24 |
19.10.2009, 22:34 | #32 | |||||||||||||||||||||||
Re: Простые (ли?) задачки по JAVA
Прикол! Действительно работает... Только надо из метода сразу выходить, иначе покажет ошибку... . Не могу сообразить, где и как это можно применить... .
__________________
Лучше сидеть в маленькой душной пивной , чем работать на большом светлом заводе... |
||||||||||||||||||||||||
24.10.2009, 20:54 | #33 |
Неактивный пользователь
Пол: Регистрация: 24.10.2009
Сообщений: 4
Репутация: 0
|
Re: Простые (ли?) задачки по JAVA
Да нигде это не надо применять - просто особенность компилятора наверное.
|
04.11.2009, 02:29 | #34 |
Неактивный пользователь
Регистрация: 28.10.2009
Сообщений: 12
Репутация: 0
|
Re: Простые (ли?) задачки по JAVA
|
03.12.2009, 00:19 | #35 |
Re: Простые (ли?) задачки по JAVA
Вот следующая задачка, на знание работы do-while
Код:
static public void main(String d[]) { boolean b = true; int x = 0; do { if (x++ > 5) b = false; System.out.println("x= " + x); } while (b); } Пожалуйста не копируйте код в editor, попробуйте в уме! И маленькая задачка на знание цикла for Код:
static public void main(String[] args) { for (byte x = 125; x < 128; ++x) { System.out.println(x); } }
__________________
Лучше сидеть в маленькой душной пивной , чем работать на большом светлом заводе... Последний раз редактировалось ana; 03.12.2009 в 00:41.. |
|
03.12.2009, 14:02 | #36 |
Новичок
Пол: Регистрация: 02.11.2007
Сообщений: 26
Репутация: 14
|
Re: Простые (ли?) задачки по JAVA
Задача 1
x= 1 x= 2 x= 3 x= 4 x= 5 x= 6 x= 7 |
08.04.2010, 12:43 | #37 |
Неактивный пользователь
Пол: Регистрация: 08.04.2010
Сообщений: 2
Репутация: 0
|
Re: Простые (ли?) задачки по JAVA
задача 1:
а 7 от куда? 1-6 и хватит задача 2: скорее всего не выполница ниразу, потому что 128 = -128 что будет содержать x? byte x = 1; x = x << 9; |
28.04.2010, 01:28 | #38 |
Re: Простые (ли?) задачки по JAVA
Один маленький пример>
В main... Map<Object, Object> map = new TreeMap<Object, Object>(); теперь добавляем элементы map.put("1", 1); map.put(1, "1"); Теперь попробуем распечатать размер System.out.println(map.size()); Ну теперь навскидку, что будет в ответе? 2 или ошибка компиляции или ошибка выполнения... ?
__________________
Лучше сидеть в маленькой душной пивной , чем работать на большом светлом заводе... |
|
25.10.2012, 20:07 | #39 |
Неактивный пользователь
Пол: Регистрация: 02.05.2008
Адрес: qrg
Сообщений: 2
Репутация: 0
|
Re: Простые (ли?) задачки по JAVA
Жаль, заглох раздельчик
|
22.03.2013, 12:21 | #40 |
Неактивный пользователь
Пол: Регистрация: 01.12.2011
Сообщений: 1
Репутация: 0
|
Re: Простые (ли?) задачки по JAVA
угу .... надеюсь будут еще посты на эту тему =(
|
23.08.2014, 14:28 | #41 | ||||||||||||||||||||||||||||||||||||||||||||||
Неактивный пользователь
Пол: Регистрация: 23.08.2014
Сообщений: 5
Репутация: 0
|
Re: Простые (ли?) задачки по JAVA
Сорри, ответил не туда
Добавлено через 29 минут
---------------------------------------------------------------- мне кажется, не дойдет до сравнения. По спецификации, TreeMap предполагает, что туда будут вставляться только пары со сравнимыми ключами. При вставке, он будет их упорядочивать. Первой вставкой вставится ключ "1" типа String со значением 1 типа Integer При второй вставке будет вставляться ключ 1 типа Integer со значением "1" типа String и в это время TreeMap попытается упорядочить ключи, сравнив их друг с другом, т.е. вызвав "1".compareTo(1), и получится ClassCastException. Добавлено через 42 минуты
Задача 1 Будет очевидно выполяться 6 раз (от 0 до 5), пока счетчик не вырастет до 5-и. Дальше условие 5++ > 5 не сработает, будет напечатана очередная строка для следующего значения счетчика (x = 6), и уйдет на следующую итерацию; там условие 6++ > 5 сработает, будет напечатана в последний раз строка для следующего значения счетчика, и выйдет из цикла. То есть, всего 7 строк от x=1 до x=7 включительно. Задача 2 Т.к. макс. значение байта 127, условие выхода из цикла никогда не будет верно. Последний раз редактировалось soyGoodMan; 23.08.2014 в 15:12.. Причина: забыл добавить ответ на зад.2 |
||||||||||||||||||||||||||||||||||||||||||||||
25.09.2015, 20:07 | #42 | |||||||||||||||||||||||
Постоялец
Пол: Регистрация: 15.12.2007
Сообщений: 208
Репутация: 162
|
Re: Простые (ли?) задачки по JAVA
Как-то пробовал но всё никак не уловлю в этом толк. Код:
public class Test { public static void main(String args[]) { int t = 0;int w = 0; int i=0, j=0; X1: for(i = 0; i < 3; i++, w++) { X2: for(j = 3; j > 0; j--, t++) { if(i < j) continue X1; else break X2; } } System.out.println(i+" "+j+" "+t+" "+w); } } Я добавил в циклы по одной переменной. И сразу стало видно, что код во втором цикле не выполнится ни разу. |
|||||||||||||||||||||||
10.03.2017, 19:59 | #43 |
Новичок
Пол: Регистрация: 10.03.2017
Сообщений: 5
Репутация: 2
|
Re: Простые (ли?) задачки по JAVA
Эх, только зарегался, и вижу хорошая тема затухла((
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Загадки и задачки | Nu Je | Юмор | 200 | 25.01.2021 08:58 |
Java начинающему. Что нужно для разработки Java-приложения? | mrzed | Java | 37 | 24.03.2011 15:31 |
Помогите решить задачки | Vladylbkin | Программирование | 1 | 07.10.2009 22:44 |
|
|