?

Log in

No account? Create an account
Previous Entry Share Next Entry
Ох, уж эта Java...
Белка
lerm_ru
Иногда забавные ошибки выскакивают при наборе...
Вот кусочек кода:
 
        Iterator it = nodes.iterator(); 
        StringBuffer sb = new StringBuffer(','); 
        while (it.hasNext()) 
        { 
            String nodeName = (String) it.next(); 
            sb.append(nodeName).append(','); 
        } 
        String list = sb.toString();
Предполагалось, что он составляет строку в виде ",node1,node2,...,nodeN,". Однако, если присмотреться к коду внимательнее, то видно, что получится такая строка: "node1,node2,...,nodeN,"

Проблема заключается в том, что у StringBuffer-а нет конструктора, который принимает char. Зато есть конструктор, который принимает int. Вбитая на автомате запятая в одинарных кавычках воспринимается компилятором как число.
Tags:

  • 1
Да, это пестня :)

  • 1