[Java lista] StringIndexOutOfBoundsException minuszos index-el

biziclop biziclop at gmail.com
2008. Május. 19., H, 17:17:56 CEST


Most komolyan azon fogunk lovagolni, hogy hibauzenet vagy kiveteluzenet?

Alapszabaly, hogy ha az exception krealasakor rendelkezesedre all
olyan informacio, ami jelentosen megkonnyitene a debugolast es ezt te
elhallgatod, az kvazi buncselekmeny.

Semmibe nem kerult volna beleirni, hogy pontosan mi is az, ami -5. Az
egvilagon semmibe. Viszont tobb ezer karbantartoi-fejlesztoi orat
megsporolhattak volna vele. (Mert el se tudod kepzelni, mennyire
gyakori az, hogy ot-tiz perceket kell bogaraszni, hogy most pontosan
mi is out of bounds a harom lehetseges eset kozul.)

Tovabbra is mondom, hogy ha az en projektemen csinalnal olyat, hogy
direkt semmitmondo message-et adsz egy exceptionnek, pedig adhatnal
ertelmeset is, akkor be lenne neked szolva, es igazam lenne.

lsp


2008/5/19 Andras Dobrosi <andris at freemail.hu>:
> Fura, hogy ez ekkora téma lett. Nem hiba tortent, hanem kivetel
> valtodott ki. Maga az Exception nev is beszedes, de ha megakadsz,
> akkor utana kell olvasni az API-ban:
>
> http://java.sun.com/javase/6/docs/api/java/lang/StringIndexOutOfBoundsException.html
>
>
> Andris
>
> 2008/5/19 biziclop <biziclop at gmail.com>:
>> Azert ilyenkor egy kicsit merges vagyok. Leszakadt volna a kezuk, ha
>> valami ertelmes hibauzenetet raktak volna az exceptionbe egy darab
>> nyamvadt szam helyett?
>>
>> Ha valamelyik kollegam ilyet csinalna, jol lecsesznem.
>>
>> lsp
>>
>> 2008/5/19 Böszörményi Péter <zmblevlist at gmail.com>:
>>> Kozben megnezve a bunos resz - gondolom - ez:
>>>
>>>     public String substring(int beginIndex, int endIndex) {
>>>        if (beginIndex < 0) {
>>>            throw new StringIndexOutOfBoundsException(beginIndex);
>>>        }
>>>        if (endIndex > count) {
>>>            throw new StringIndexOutOfBoundsException(endIndex);
>>>        }
>>>        if (beginIndex > endIndex) {
>>>            throw new StringIndexOutOfBoundsException(endIndex - beginIndex);
>>>        }
>>>        return ((beginIndex == 0) && (endIndex == count)) ? this :
>>>            new String(offset + beginIndex, endIndex - beginIndex, value);
>>>     }
>>>
>>> Itt a 3. vizsgalat erdekes. Gondolom a String hossza rovidebb, mint a
>>> beginIndex
>>>
>>> Szécsényi Gergely wrote:
>>>> Sziasztok!
>>>>
>>>> a kérdésem a következő, hogy lehetséges, hogy minuszos index-et ad
>>>> meg, mikor a kódban a substringnek átadott index az fix 9. köszönöm,
>>>> az error:
>>>> java.lang.StringIndexOutOfBoundsException: String index out of range: -5
>>>>       at java.lang.String.substring(String.java:1476)
>>>>       at java.lang.String.substring(String.java:1443)
>>>> köszönöm,
>>>> Gergő
>>>> _______________________________________________
>>>> Javalist mailing list
>>>> Javalist at javagrund.hu
>>>> http://javagrund.hu/mailman/listinfo/javalist
>>>
>>> _______________________________________________
>>> Javalist mailing list
>>> Javalist at javagrund.hu
>>> http://javagrund.hu/mailman/listinfo/javalist
>>>
>> _______________________________________________
>> Javalist mailing list
>> Javalist at javagrund.hu
>> http://javagrund.hu/mailman/listinfo/javalist
>>
> _______________________________________________
> Javalist mailing list
> Javalist at javagrund.hu
> http://javagrund.hu/mailman/listinfo/javalist
>


További információk a(z) Javalist levelezőlistáról