lerm_ru (lerm_ru) wrote,
lerm_ru
lerm_ru

  • Mood:
  • Music:

Ох, уж эта Java...

Иногда забавные ошибки выскакивают при наборе...
Вот кусочек кода:
 
        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: java
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 6 comments