2014-11-13 3 views
0

Я не знаю, как получить конкретный элемент для экземпляра общего экземпляра. Предположим, у меня что-то подобное;Как получить общий элемент intint общего списка

public class Column { 

private String name; 
private float width; 

public Column(String name, float width) { 
    this.name=name; 
    this.width=width; 
} 
public String getName() { 
    return name; 
} 

и еще один класс;

public class WriteColumn { 

private List<Column> col = new ArrayList<>(); 

public void addColumn() { 
    col.add(new Column("yo", 0.1f)); 
    col.add(new Column("mo", 0.3f)); 
    writeColumn(col); 

public void writeColumn(List<Column> col) { 
    String str = ""; 
    for (Column col1 : col) { 
     str += col1 + " - "; 
    } 
    System.out.println("Cols: " + str); 
} 


public static void main(String[] args) { 
    WriteColumn wc = new WriteColumn(); 
    wc.addColumn(); 
} 
} 

Выход, который я хочу получить, является текстовой частью столбца, но я не получаю его. Есть ли простой способ сделать это?

+4

'col1.getName()' возможно. –

ответ

3

Не могу понять, почему вы не можете использовать метод getName()?

Он должен работать:

public void writeColumn(List<Column> col) { 
    String str = ""; 
    for (Column col1 : col) { 
    str += col1.getName() + " - "; 
    } 
    System.out.println("Cols: " + str); 
} 
+0

Он делает спасибо :) –

1

Ниже код работает, выход: Cols: йо - мо -

Я думаю, это то, что вы ожидаете.

package com.vipin.test; 

import java.util.*; 

class Column { 

    private String name; 
    private float width; 

    public Column(String name, float width) { 
     this.name=name; 
     this.width=width; 
    } 
    public String getName() { 
     return name; 
    } 
} 

public class WriteColumn { 

    private List<Column> col = new ArrayList<>(); 

    public void addColumn() { 
     col.add(new Column("yo", 0.1f)); 
     col.add(new Column("mo", 0.3f)); 
     writeColumn(col); 
    } 
    public void writeColumn(List<Column> col) { 
     String str = ""; 
     for (Column col1 : col) { 
      str += col1.getName() + " - "; //used getName() 
     } 
     System.out.println("Cols: " + str); 
    } 


    public static void main(String[] args) { 
     WriteColumn wc = new WriteColumn(); 
     wc.addColumn(); 
    } 
} 
Смежные вопросы