2015-09-13 2 views
1

абсолютный java noob здесь. Я возился с некоторым кодом и задавался вопросом, есть ли способ преобразовать значение Dimension в целое число или строку.Преобразование размера в int в Java?

Я использовал эту линию

int i = (int) frame.getSize(); 

, чтобы получить размер окна, но он не может преобразовать размер в целое. Любая помощь?

+1

Подсказка: размер имеет два размера - ширину и высоту. –

ответ

1

Вы не можете «конвертировать» а Dimension к int, потому что это что-то другое. Он предназначен для хранения информации о прямоугольнике.

Вы можете вычислить площадь прямоугольника:

double size = frame.getSize().getHeight() * frame.getSize().getWidth(); 

причины вы можете также хранить информацию в виде строки:

String sizeStr = frame.getSize().getHeight() +" X " + frame.getSize().getWidth(); 

Теперь вы можете хранить Dimension (но вам нужно будет чтобы разделить строку снова, чтобы получить значение.

+0

Изменен: –

0

frame.getSize();

Это возвращает объект Dimension. Вы не можете преобразовать объект в примитивный тип.

Размер имеет два атрибута, высоту и ширину. Вы можете использовать методы getter для доступа к ним.

double getHeight(): Возвращает высоту этого измерения в двойной точности.

double getWidth(): Возвращает ширину этого измерения в двойной точности.

Размер окна можно рассчитать, используя Height и Width. Поскольку оба типа double, вы должны сохранить размер в double типа.

Dimension dim = frame.getSize(); 
double size = dim.getHeight() * dim.getWidth(); 
0

Вы не можете наложить Dimension на примитив. Что вы можете сделать, однако, использовать методы доступа, такие как getHeight() и getWidth() вычислить его:

// No need to explicitly cast, Java will do that automatically 
// (although it will issue a warning on lost precision) 
int size = frame.getHeight() * frame.getWidth(); 
0

Объект измерения, созданный следующим образом:

Dimension dim = new Dimension(100, 50); 

Это означает, что есть два фактора, о которых вы должны думать, это высота и вес.

Если вы просто говорите,

int i = (int) frame.getSize(); 

это как;

int i = (int) height, weight. 

Вкратце, вы не можете назначить два значения одной переменной. Вы должны сделать некоторые вычисления, чтобы иметь одно значение из этих двух значений.

Смежные вопросы