private List<Token> convertFactor(final Token.Factor factor) {
        
        final String item = factor.getValue();
        final int itemLength = item.length();
        final List<Token> list = new ArrayList<>();
        
        StringBuilder sb = new StringBuilder();
        for(int i=0; i < itemLength; i++) {
            char c = item.charAt(i);
            if(c == '@') {
                // バッファから取り出し、新たにバッファを作成する
                list.add(Token.factor(sb.toString()));
                sb = new StringBuilder();
                
                list.add(Token.SYMBOL_AT_MARK);
                
            } else {
                sb.append(c);
            }
        }
        
        if(sb.length() > 0) {
            list.add(Token.factor(sb.toString()));
            sb = null;
        }
        
        return list;
    }
private List < Token > convertFactor ( final Token . Factor factor ) { final String item = factor . getValue ( ) ; final int itemLength = item . length ( ) ; final List < Token > list = new ArrayList < > ( ) ; StringBuilder sb = new StringBuilder ( ) ; for ( int i = 0 ; i < itemLength ; i ++ ) { char c = item . charAt ( i ) ; if ( c == '@' ) { list . add ( Token . factor ( sb . toString ( ) ) ) ; sb = new StringBuilder ( ) ; list . add ( Token . SYMBOL_AT_MARK ) ; } else { sb . append ( c ) ; } } if ( sb . length ( ) > 0 ) { list . add ( Token . factor ( sb . toString ( ) ) ) ; sb = null ; } return list ; }
書式の因子を記号'@'とそれ以外に変換する。
@param str
@return