- 1
- 2
Calendar calendar = new GregorianCalendar();
calendar.setTime(new Date(System.currentTimeMillis()));
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+71
Calendar calendar = new GregorianCalendar();
calendar.setTime(new Date(System.currentTimeMillis()));
+72
String displayName = report.getDisplayName();
displayName.replace(
this.periodStartDateParamName,
this.getPeriodStartDateStr() );
displayName.replace(
this.getPeriodEndDateParamName(),
this.getPeriodEndDateStr() );
report.setDisplayName( displayName );
Имитация бурной деятельности по замене подстрок.
+63
public class ExtendFSDirectoryProvider {
// skipped
@Override
public boolean equals(Object obj) {
if (obj == this) {
return true;
}
if (obj == null || !(obj instanceof FSDirectoryProvider)) {
return false;
}
return indexName.equals(((ExtendFSDirectoryProvider) obj).indexName);
}
}
Даже неважно, что автор делает лишнюю проверку на null - в instanceof указан другой класс! Копипаста детектед.
+72
private static Map<String, Connection> cachedConns =
Collections.synchronizedMap(new HashMap<String, Connection>(0xA)
{
private static final long serialVersionUID = 7466291025126853439L;
@Override
protected void finalize() throws Throwable
{
super.finalize();
for (Connection aConn : this.values())
{
if (!aConn.isClosed())
{
aConn.close();
}
}
}
});
Плохо настроенный WebLogic не возвращает подключения СУБД обратно в пул.
Из-за говно-админа и мне ничего больше в голову не могло прийти...
+74
for(int i = 0; i < fCount; i++)
{
result += Integer.parseInt(String.valueOf((fPart.charAt(i))), 10)*Math.pow(base, fCount-(i+1));
}
+78
mLoadingTextureMap.put(LINE +i, createFromResource(mLinesAtlas, this, R.drawable.loading_line1, 0, y));
y+=drawable.getMinimumHeight();
i++;
mLoadingTextureMap.put(LINE +i, createFromResource(mLinesAtlas, this, R.drawable.loading_line2, 0, y));
y+=drawable.getMinimumHeight();
i++;
mLoadingTextureMap.put(LINE +i, createFromResource(mLinesAtlas, this, R.drawable.loading_line3, 0, y));
y+=drawable.getMinimumHeight();
i++;
mLoadingTextureMap.put(LINE +i, createFromResource(mLinesAtlas, this, R.drawable.loading_line4, 0, y));
y+=drawable.getMinimumHeight();
i++;
mLoadingTextureMap.put(LINE +i, createFromResource(mLinesAtlas, this, R.drawable.loading_line5, 0, y));
y+=drawable.getMinimumHeight();
i++;
mLoadingTextureMap.put(LINE +i, createFromResource(mLinesAtlas, this, R.drawable.loading_line6, 0, y));
y+=drawable.getMinimumHeight();
i++;
mLoadingTextureMap.put(LINE +i, createFromResource(mLinesAtlas, this, R.drawable.loading_line7, 0, y));
y+=drawable.getMinimumHeight();
i++;
mLoadingTextureMap.put(LINE +i, createFromResource(mLinesAtlas, this, R.drawable.loading_line8, 0, y));
y+=drawable.getMinimumHeight();
i++;
mLoadingTextureMap.put(LINE +i, createFromResource(mLinesAtlas, this, R.drawable.loading_line9, 0, y));
вот так один паренек загружает в атлас текстуры....
нафиг циклы вообще нужны (=
+68
if (seriesOrder == SeriesRenderingOrder.REVERSE) {
//render series in reverse order
for (int pass = 0; pass < passCount; pass++) {
int seriesCount = dataset.getSeriesCount();
for (int series = seriesCount - 1; series >= 0; series--) {
int firstItem = 0;
int lastItem = dataset.getItemCount(series) - 1;
if (lastItem == -1) {
continue;
}
if (state.getProcessVisibleItemsOnly()) {
int[] itemBounds = RendererUtilities.findLiveItems(
dataset, series, xAxis.getLowerBound(),
xAxis.getUpperBound());
firstItem = Math.max(itemBounds[0] - 1, 0);
lastItem = Math.min(itemBounds[1] + 1, lastItem);
}
state.startSeriesPass(dataset, series, firstItem,
lastItem, pass, passCount);
for (int item = firstItem; item <= lastItem; item++) {
renderer.drawItem(g2, state, dataArea, info,
this, xAxis, yAxis, dataset, series, item,
crosshairState, pass);
}
state.endSeriesPass(dataset, series, firstItem,
lastItem, pass, passCount);
}
}
}
else {
//render series in forward order
for (int pass = 0; pass < passCount; pass++) {
int seriesCount = dataset.getSeriesCount();
for (int series = 0; series < seriesCount; series++) {
int firstItem = 0;
int lastItem = dataset.getItemCount(series) - 1;
if (state.getProcessVisibleItemsOnly()) {
int[] itemBounds = RendererUtilities.findLiveItems(
dataset, series, xAxis.getLowerBound(),
xAxis.getUpperBound());
firstItem = Math.max(itemBounds[0] - 1, 0);
lastItem = Math.min(itemBounds[1] + 1, lastItem);
}
state.startSeriesPass(dataset, series, firstItem,
lastItem, pass, passCount);
for (int item = firstItem; item <= lastItem; item++) {
renderer.drawItem(g2, state, dataArea, info,
this, xAxis, yAxis, dataset, series, item,
crosshairState, pass);
}
state.endSeriesPass(dataset, series, firstItem,
lastItem, pass, passCount);
}
}
}
нашел в jfreechart
Обе ветки if-else идентичны, только в одной цикл идет от нуля, в другой в обратную сторону.
Говнокод или нет?
+91
public class HasThisTypePatternTriedToSneakInSomeGenericOrParameterizedTypePatternMatchingStuffAnywhereVisitor
extends AbstractPatternNodeVisitor {
boolean ohYesItHas = false;
+77
Superclass s = new Subclass();
((Subclass)s).useSubclassMethod();
Чудеса полиморфизма.
+110
public abstract class AbstractSegment<P extends Number, V extends IOffsettable<P, V>,
U extends AbstractSegment<P, V, U>> implements IOffsettable<P, U>, Iterable<V>, Serializable {
...
protected final List<V> offsetHelper(final P dx, final P dy) {
return Lists.transform(points, new Function<V, V>() {
@Override
public V apply(final V input) {
return input.offset(dx, dy);
}
});
}
public final class FloatSegment extends AbstractSegment<Float, FloatPoint, FloatSegment> {
...
@Override
public FloatSegment offset(final Float dx, final Float dy) {
return new FloatSegment(offsetHelper(dx, dy));
}
}