- 1
return new Double(Math.ceil(weight)).intValue();
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+76
return new Double(Math.ceil(weight)).intValue();
И снова autoboxing не в почете
+70
public class MyFancyException extends Exception {
public MyFancyException(Throwable cause) {
super(cause);
}
static public <X extends Throwable> void foo() throws X {
try {
throw new MyFancyException(new Exception());
}
catch (MyFancyException ex) {
throw (X) ex.getCause();
}
}
public static void main(String[] args) throws IOException {
MyFancyException.<IOException>foo();
}
}
Прекрасный способ отстрелить себе ногу. Метод foo() может кинуть любое исключение, даже если его нет в списке throws
+75
protected String createPublicCacheKey(String...keyElements) {
String initial = "public";
StringBuilder format = new StringBuilder();
format.append(initial);
for(int i=0;i<keyElements.length;i++) {
format.append(".%s");
}
return String.format(format.toString(), keyElements);
}
Объясните, позязя, почему нельзя сразу добавлять данные к StringBuilder'у. Может быть в этом есть скрытый сакральный смысл желание выпендриться знанием JDK.
+75
import java.lang.reflect.Field;
public class Main {
public static void main(String[] args) throws Exception {
Class cache = Integer.class.getDeclaredClasses()[0];
Field c = cache.getDeclaredField("cache");
c.setAccessible(true);
Integer[] array = (Integer[]) c.get(cache);
array[132] = array[133];
System.out.printf("%d",2 + 2);
}
}
Джаважды джва равно пять
http://ideone.com/1Ap0wW
+72
private static String fetchEventName(LogEventTypes event) {
String result = null;
if (LogEventTypes.A.name().equals(event.name()))) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.B.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.C.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.D.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.E.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.F.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.G.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.H.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.I.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.J.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.K.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
} else if (LogEventTypes.L.name().equals(event.name())) {
result = play.i18n.Messages.get("...");
}
return result;
}
Секретную инфу потер :) Но думаю, и так все ясно... LogEventTypes - у нас enum.
Код писал индус (нет ну правда, индус).
+75
HostInfo info = null;
if (info == null)
return;
info.setOsName(os);
Выдержка из достаточно серьезного проекта
+78
public static final String TimeoutInMilliseconds = "timeoutInSeconds";
Нашел в константах нашего проекта. Существовало и ежедневно использовалось в течение 8 месяцев. Глянул историю - создано и редактировалось только мной. Фейспалм.
+80
public class CookieHelper {
public static Cookie getCookie(String name, Http.Request request) {
Cookie cookie = null;
if (request.cookies != null) {
for (Entry<String, Cookie> entry : request.cookies.entrySet()) {
if (name.equals(entry.getKey())){
cookie = entry.getValue();
}
}
}
return cookie;
}
}
request.cookies - это конечно же Map<String, Cookie>
+80
private HttpClient httpServer = new DefaultHttpClient();
У нас в приложении есть свой сервер!!1
+75
public void onBackPressed() {
if (getSupportFragmentManager().getBackStackEntryCount()==0 || getSupportFragmentManager().getBackStackEntryCount()==1) {
finish();
android.os.Process.killProcess(android.os.Process.myPid());
((MainActivity)instance).onDestroy();
}
}
/* чуть дальше */
JSONObject jsonObjectA = null, jsonObjectB = null;
try {
jsonObjectA = new JSONObject(a.toString());
jsonObjectB = new JSONObject(b.toString());
} catch (JSONException e1) {
e1.printStackTrace();
}
if ((jsonObjectA != null || jsonObjectB != null) || (jsonObjectA != null && jsonObjectB != null)) {
try {
valA = jsonObjectA.getString("name");
valB = jsonObjectB.getString("name");
} catch (JSONException e) {
e.printStackTrace();
}
}
Первый фрагмент кода - это больше специфика Android - при нажатии кнопки назад: закрыть приложение, убить процесс и дернуть метод onDestroy() который в норме должен автоматом вызваться при закрытии приложения но не вызывается из-за того что мы убиваем процесс. Про то что условие if можно оптимизировать я умолчу.
На if() во втором фрагменте заглючил даже встроенный в intelliJ Idea инструмент рефакторинга...