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

    +5

    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
    /**
    	 * Проверяет переданную строку на пустую или null
    	 * @param str
    	 * @return
    	 */
    	public static boolean isEmpty(String str) {
    		if (str == null)	return true;
    		if (str.isEmpty())	return true;
    		if (str.length()==0)     return true;
    		return false;
    	}
    	public static boolean isHtmlLink(String link) {
    		if (StringTools.isEmpty(link)) 		   return false;		 
    		if (!link.toLowerCase().startsWith("http:")) return false;
    		return true;
    	}
    	/**
    	 * resolves full link by taking baseLink & relative link  
    	 * @param link
    	 * @param baseURI
    	 * @return
    	 */
    	public static String resolveLink(String link, String baseURL){
    		try{
    			if (baseURL==null)			
    				return (link==null)? "": link;
    			if (link==null || link.isEmpty())
    				return "";
    			return java.net.URI.create(baseURL).resolve(link).toASCIIString();
    		}
    		catch(Exception _){
    			return "";
    		}
    	}

    рефакторил свой старый код писаный у прошлом годе
    стыдно....

    Запостил: 3.14159265, 25 Июня 2010

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

    +7

    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
    public static Date convertStringToDate(String s) {
            Calendar cl = Calendar.getInstance();
            
            if (s.length() < 8) {
                return null;
            }
            if (s.length() > 8) {
                cl.set((new Integer(s.substring(0, 4))).intValue(),
                        (new Integer(s.substring(4, 6))).intValue() - 1,
                        (new Integer(s.substring(6, 8))).intValue(),
                        (new Integer(s.substring(8, 10))).intValue(),
                        (new Integer(s.substring(10, 12))).intValue(),
                        (new Integer(s.substring(12, 14))).intValue());
            } else {
                cl.set((new Integer(s.substring(0, 4))).intValue(),
                        (new Integer(s.substring(4, 6))).intValue() - 1,
                        (new Integer(s.substring(6, 8))).intValue(), 0, 0, 0);
            }
            return cl.getTime();
        }

    Люблю велосипеды

    Запостил: lotik, 24 Июня 2010

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

    +2

    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
    String.format(
            "<b>%s:%s %s %s %d</b>",
            setDisplayFromNumber(calendar.get(GregorianCalendar.HOUR_OF_DAY)), 
            setDisplayFromNumber(calendar.get(GregorianCalendar.MINUTE)),
            setDisplayFromNumber(calendar.get(GregorianCalendar.DAY_OF_MONTH)),
            getMonthNameFromNumber(calendar.get(GregorianCalendar.MONTH)),
            calendar.get(GregorianCalendar.YEAR)
    );
    
    private String setDisplayFromNumber(Integer number) {
        if(number < 10) {
            return String.format("0%d", number);
        }
        else {
            return number.toString();
        }
    }

    Запостил: yvu, 24 Июня 2010

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

    +7

    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
    //i dont know full description of this errors. i just copied it from official specification :)
        String[] eType =  new String[] {
            "Pending communication transaction in progress (0x20)",
            "Specified mailbox queue is empty (0x40)",
            "Request failed (i.e. specified file not found) (0xBD)",
            "Unknown command opcode (0xBE)",
            "Insane packet (0xBF)",
            "Data contains out-of-range values (0xC0)",
            "Communication bus error (0xDD)",
            "No free memory in communication buffer (0xDE)",
            "Specified channel/connection is not valid (0xDF)",
            "Specified channel/connection not configured or busy (0xE0)",
            "No active program (0xEC)",
            "Illegal size specified (0xED)",
            "Illegal mailbox queue ID specified (0xEE)",
            "Attempted to access invalid field of a structure (0xEF)",
            "Bad input or output specified (0xF0)"
        };

    перевод: Я не знаю, что все эти ошибки означают. Я просто скопировал это из оффициальной документации.
    всясуть жаба-кодеров.

    Запостил: danilissimus, 23 Июня 2010

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

    +14

    1. 1
    pp = pp++;

    Что хотел сказать автор?...

    Запостил: tinynick, 22 Июня 2010

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

    +10

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    //java.io.Bits
        static void putDouble(byte[] b, int off, double val) {
    	long j = Double.doubleToLongBits(val);
    	b[off + 7] = (byte) (j >>> 0);
    	b[off + 6] = (byte) (j >>> 8);
    	b[off + 5] = (byte) (j >>> 16);
    	b[off + 4] = (byte) (j >>> 24);
    	b[off + 3] = (byte) (j >>> 32);
    	b[off + 2] = (byte) (j >>> 40);
    	b[off + 1] = (byte) (j >>> 48);
    	b[off + 0] = (byte) (j >>> 56);
        }

    остальное содержимое класса в таком же стиле

    Запостил: 3.14159265, 21 Июня 2010

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

    +5

    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
    public static boolean isPow(BigInteger n){
    				    
    	   boolean zusammengesetzt=false;
    	   BigInteger obereSchranke=n;
    	   BigInteger untereSchranke=BigInteger.ONE;
    	   BigInteger t;	
                   
    	   for(BigInteger i=BigInteger.ONE;(i.compareTo(new BigInteger(new Integer((n.bitLength())).toString())) < 0);i=i.add(BigInteger.ONE)){
    	      while( (obereSchranke.subtract(untereSchranke)).compareTo(BigInteger.ONE) > 0){
    		     t=((obereSchranke.add(untereSchranke)).divide(new BigInteger("2")));
    		     if((pow(t,i.add(BigInteger.ONE))).compareTo(n) == 0){
    		        UserInterface.ausgabeFeld.append("Abbruch Schritt 1: Eingegebene Zahl ist nicht prim, da ");
    			    UserInterface.ausgabeFeld.append("n = "+t+"^"+i.add(BigInteger.ONE)+"\n"+"\n"); 
    				UserInterface.ausgabeFeld.repaint();
    				return zusammengesetzt=true;
    			    } 
    		     if((pow(t,i.add(BigInteger.ONE))).compareTo(n) > 0)
    			    obereSchranke=t;
    		     if((pow(t,i.add(BigInteger.ONE))).compareTo(n) < 0)
    				untereSchranke=t;
    		  }  
           }    
    	   UserInterface.ausgabeFeld.append("Schritt 1: "+n+" ist keine echte Potenz!"+"\n");
    	   UserInterface.ausgabeFeld.repaint();
    	   return zusammengesetzt;  
    	}

    Проверка условия вида "n = a^b".
    Впечатляет условие цикла for и реализация арифметических операций (хотя, может, с BigInteger так и надо).

    Запостил: WxD, 17 Июня 2010

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

    +2

    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
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    static int a[][]=new int[7][7];
        static boolean b[]=new boolean[7]; 
    static void flag(){
            
            for(i=1;i<=6;++i){
                b[i]=false;
                System.out.print(b[i]+" ");
            }
            System.out.println();
        }
    
        static void graph(){
            a[1][1]=-1;
            a[1][2]=7;
            a[1][3]=9;
            a[1][4]=-1;
            a[1][5]=-1;
            a[1][6]=14;
            a[2][1]=7;
            a[2][2]=-1;
            a[2][3]=10;
            a[2][4]=15;
            a[2][5]=-1;
            a[2][6]=-1;
            a[3][1]=9;
            a[3][2]=10;
            a[3][3]=-1;
            a[3][4]=11;
            a[3][5]=-1;
            a[3][6]=2;
            a[4][1]=-1;
            a[4][2]=15;
            a[4][3]=11;
            a[4][4]=-1;
            a[4][5]=6;
            a[4][6]=-1;
            a[5][1]=-1;
            a[5][2]=-1;
            a[5][3]=-1;
            a[5][4]=6;
            a[5][5]=-1;
            a[5][6]=10;
            a[6][1]=14;
            a[6][2]=-1;
            a[6][3]=2;
            a[6][4]=-1;
            a[6][5]=10;
            a[6][6]=-1;
            System.out.println(" x1 "+" x2 "+" x3 "+ " x4 "+" x5 "+" x6 ");
            System.out.print("x1 ");
            for(i=1;i<=6;++i){
                for(j=1;j<=6;++j)
                    System.out.print(" "+a[i][j]);
                System.out.println();
               
     if(i==6)
                    System.out.println("Все ахуенно!!!");
                else
                    System.out.print("x"+(i+1)+" ");
            }
        }

    Просто красивое заполнение массивов !

    Запостил: Антон, 15 Июня 2010

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

    −2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    private String setArticleHTML() {
        // ...
    }
    
    ...
    
    mArticleView.loadDataWithBaseURL(mBaseUrl, setArticleHTML(), "text/html", "UTF-8", "");

    Запостил: yvu, 15 Июня 2010

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

    +4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    protected void setPhones(ArrayList<MBPhone> phones) {
        if(phones!=null) 
            this.phones=phones;
        else 
            phones.clear();
    }

    Код из одного западного вэб-сервиса для профессионалов в сфере недвижимости.
    Мораль: не надо игнорировать подсказки IDE. Автор на самом деле хотел очистить this.phones. И Intelij Idea подсказывает, что в этом месте может быть брошен NullPointerException. Увидеть эту проблему можно было только используя аннотацию @SuppressWarnings. Потому что варнингов так много, что различить среди них опасные очень сложно.

    Запостил: vladimir.loshchin, 10 Июня 2010

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