1. Java / Говнокод #7908

    +74

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    public class Statuses {
        protected List<String> id;
        protected List<String> name;
    
        public List<String> getId() {
            if (id == null) {
                id = new ArrayList<String>();
            }
            return this.id;
        }
    
        public List<String> getName() {
            if (name == null) {
                name = new ArrayList<String>();
            }
            return this.name;
        }
    }
    
    Statuses statuses = new Statuses();
    List<String> statusesString = statuses.getId();

    Создание пустого списка.

    Art, 20 Сентября 2011

    Комментарии (5)
  2. Java / Говнокод #7897

    +82

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    /**
         * метод возвращает int-овое смещение тайм-зоны
         */
        
        public long getIntOffset() {
    
            if (timeZone == null) {
                return 0;
            }
            return timeZone.getOffset(System.currentTimeMillis());
            Calendar now = Calendar.getInstance();
            int millisPerDay = 
                now.get(Calendar.HOUR) * ONE_HOUR + 
                now.get(Calendar.MINUTE) * ONE_MINUTE +
                now.get(Calendar.SECOND) * ONE_SECOND;
            int offset = timeZone.getOffset(
                    now.get(Calendar.ERA), 
                    now.get(Calendar.YEAR), 
                    now.get(Calendar.MONTH),
                    now.get(Calendar.DAY_OF_MONTH), 
                    now.get(Calendar.DAY_OF_WEEK), 
                    millisPerDay
                );
            int diff = now.get(Calendar.ZONE_OFFSET);
            boolean isNegative = (offset < 0);
            long intOffset = Math.abs(offset) - Math.abs(diff);
            //todo здесь наверное как-то по-лучше можно выделить часы 
            SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
            String time = sdf.format(new Date(intOffset));
            Date d;
            try {
                d = sdf.parse(time);
            } catch (ParseException e) {
                d=null;
            }
            if (d!=null)
                return (isNegative?-1:1) * d.getHours()*3600000;
            else 
                return 0;
        }

    Этот "шедевр" был написан не индусами, а суровыми программистами Новосиба ;) Это чудо долго работало, вплоть до обновления tzdata на 2011. Придется удалить, а жаль...

    karamba, 19 Сентября 2011

    Комментарии (74)
  3. Java / Говнокод #7861

    +93

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    <%if(myaccount.getCountry().equals( "AF" )){%> <font color="grey"><label for="country">Afghanistan</label></font>
        	<%}else if(myaccount.getCountry().equals( "AL" )){%> <font color="grey"><label for="country">Albania</label></font>
        	<%}else if(myaccount.getCountry().equals( "DZ" )){%> <font color="grey"><label for="country">Algeria</label></font>
        	<%}else if(myaccount.getCountry().equals( "AS" )){%> <font color="grey"><label for="country">American Samoa</label></font>
        	<%}else if(myaccount.getCountry().equals( "AD" )){%> <font color="grey"><label for="country">Andorra</label></font>
        	<%}else if(myaccount.getCountry().equals( "AO" )){%> <font color="grey"><label for="country">Angola</label></font>
        	<%}else if(myaccount.getCountry().equals( "AI" )){%> <font color="grey"><label for="country">Anguilla</label></font>
        	<%}else if(myaccount.getCountry().equals( "AQ" )){%> <font color="grey"><label for="country">Antarctica</label></font>
        	<%}else if(myaccount.getCountry().equals( "AG" )){%> <font color="grey"><label for="country">Antigua and Barbuda</label></font>
        	<%}else if(myaccount.getCountry().equals( "AR" )){%> <font color="grey"><label for="country">Argentina</label></font>
        	<%}else if(myaccount.getCountry().equals( "AM" )){%> <font color="grey"><label for="country">Armenia</label></font>
        	<%}else if(myaccount.getCountry().equals( "AW" )){%> <font color="grey"><label for="country">Aruba</label></font>
        	<%}else if(myaccount.getCountry().equals( "AU" )){%> <font color="grey"><label for="country">Australia</label></font>
        	<%}else if(myaccount.getCountry().equals( "AT" )){%> <font color="grey"><label for="country">Austria</label></font>
        	<%}else if(myaccount.getCountry().equals( "AZ" )){%> <font color="grey"><label for="country">Azerbaijan</label></font>
        	<%}else if(myaccount.getCountry().equals( "BS" )){%> <font color="grey"><label for="country">Bahamas</label></font>
            <%}else if ...

    Индусская проверка принадлежности аккаунта к определённой стране...

    P.S. Всё не влезло - стран у нас много =)

    vetal, 14 Сентября 2011

    Комментарии (15)
  4. Java / Говнокод #7840

    +77

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    public class SomeServlet extends HttpServlet {
        //...
        private static final int ERROR_NOT_FOUND = 404;
        private static final int ERROR_INTERNAL = 503;
        //...
        protected void doPost(HttpServletRequest req, HttpSerletResponse resp) {
            //...
            if (buff != null) {
                if (buff.length == 0) {
                    resp.sendError(ERROR_INTERNAL);
                }
                //...
            } else {
                resp.sendError(ERROR_NOT_FOUND);
            }
        }
    }

    Велосипедисты взялись за сервлеты.

    roman-kashitsyn, 12 Сентября 2011

    Комментарии (4)
  5. Java / Говнокод #7807

    +66

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    Integer obj = (Integer)dump.get("size");
            if(obj == null) {
                return;
            }
            int size = obj;
            for(int i=0; i<size; i++) {

    Самое странное, что автор явно знает, что такое автобоксинг, но всё равно использовал его коряво.

    lucidfox, 08 Сентября 2011

    Комментарии (18)
  6. Java / Говнокод #7806

    +77

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    public abstract class Data {
    		// The tone of Commander Riker's voice makes me suspect that
    		// he is not serious about finding Ambassador T'Pel charming.
    		// My experience suggests that in fact he may mean the exact
    		// opposite of what he says. Irony is a form of expression
    		// I have not yet been able to master.

    lucidfox, 08 Сентября 2011

    Комментарии (31)
  7. Java / Говнокод #7805

    +84

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    Query q;
          //для хэширования
    
          q =
             session.createQuery("select idElType from " + LinkToAtributeValue.class.getName()
             + " where idEl=" + idObject.toString());
    
          Vector<Integer> vec = new Vector<Integer>(q.list());
          int t;
          for(int i = 0; i < vec.size() - 1; i++) {
             t = vec.get(i);
             for(int j = i + 1; j < vec.size(); j++) {
                if(t == vec.get(j)) {
                   vec.remove(j);
                }
             }
          }

    "DISTINCT для трусов"
    или
    "Хорошего кода должно быть много"

    maxt, 08 Сентября 2011

    Комментарии (4)
  8. Java / Говнокод #7803

    +79

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public void restore(HashMap<String, Object> dump) {
    		if(dump != null) {
    			if(isInitialized()) {
    				if(isInitialized()) {
    					clear();

    "Проинициализировано? Точно-точно?"

    lucidfox, 08 Сентября 2011

    Комментарии (8)
  9. Java / Говнокод #7797

    +75

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    try {
        Method m = this.getClass().getMethod("setLayerType", int.class, Paint.class);
        if (m != null) {
            m.invoke(this, View.LAYER_TYPE_SOFTWARE, (Object)null);
        }
    } catch (NoSuchMethodException e) {
    } catch (IllegalAccessException e) {
    } catch (InvocationTargetException e) {
    }

    Моему коллеге пришлось писать _такое_ только потому, что заказчик не захотел форкнуть проект на две отдельных ветки, для Android 2.3 и для 3.2.

    wildscliss, 07 Сентября 2011

    Комментарии (13)
  10. Java / Говнокод #7788

    +78

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    /**
    	* @param loginName
    	* @return
    	* This method is create a LoginName as Input data
    	*/
    public String getLoginName(String loginName)
    {
    	String userQuery="select u.LoginName from User u";
    	Recordset rs_user=null;
    	rs_user = CustomExternalServiceImplUtil.getInstance().executeQuery(userQuery);
    	List<String> userList = new ArrayList<String>();
    	while(rs_user.moveNext()){ 
    		userList.add(rs_user.valueFromIndex(0).toString());
    	}
    	int i=1;
    	String result = loginName;
    	for(int j=0; j < userList.size(); j++){
    		if(userList.get(j).equals(result))
    		{
    			result = loginName+i++;
    			j=0;
    		}
    	}
    	return result;
    }

    Рефаткоринг чужого кода. Минут пять втуплял, что же тут вообще делается. Еще столько же придумывал, как же это привести в божеский вид с сохранением прежней функциональности.

    askell, 06 Сентября 2011

    Комментарии (65)