Рекомендации по управлению интерактивными диаграммами в стиле финансов Google

Строки в Java неизменяемы. Это означает, что всякий раз, когда вы пытаетесь изменить / изменить строку, вы получаете новый экземпляр. Вы не можете изменить исходную строку. Это сделано для того, чтобы эти экземпляры строк могли кэшироваться. Типичная программа содержит множество ссылок на строки и кеширование этих экземпляров, что может уменьшить объем памяти и увеличить производительность программы.

При использовании оператора == для сравнения строк вы не сравниваете содержимое строки , но фактически сравнивают адрес памяти. Если они равны, в противном случае они вернут true и false. Если значение равно в строке, сравнивает содержимое строки.

Итак, вопрос в том, что все строки кэшируются в системе, как получается == возвращает false, тогда как equals возвращает true? Ну, это возможно. Если вы создадите новую строку, например String str = new String("Testing"), вы создадите новую строку в кеше, даже если в кеше уже содержится строка с тем же содержимым. Короче говоря, "MyString" == new String("MyString") всегда будет возвращать false.

Java также говорит о функции intern (), которая может использоваться в строке, чтобы сделать ее частью кеша, поэтому "MyString" == new String("MyString").intern() вернет true.

Примечание: == оператор намного быстрее, чем равен только потому, что вы сравниваете два адреса памяти, но вы должны быть уверены, что код не создает новые экземпляры String в коде. В противном случае вы столкнетесь с ошибками.

13
задан Chris Farmer 21 September 2008 в 17:13
поделиться

9 ответов

Вы могли испытать Flotr, хорошая библиотека JavaScript. Это имеет довольно достойные средства управления мышью и свободно использовать.

5
ответ дан TM. 21 September 2008 в 17:13
поделиться

Образец Полосы прокрутки Масштабирования на сайте SoftwareFX похож на то, что Вы ищете:

http://demo.softwarefx.com/chartfx/aspnet/ajaxsamples/

1
ответ дан Lou Franco 21 September 2008 в 17:13
поделиться

Выезд amCharts. Существует диаграмма XY и Биржевые диаграммы. Уверенный это основанные на Flash диаграммы, но я не думаю, что у Вас может быть что-либо это хорошее и интерактивное без Flash или Silverlight в эти дни.

1
ответ дан Alan Mendelevich 21 September 2008 в 17:13
поделиться
  • 1
    день все браузеры следуют за Спецификациями к мс, будет великим днем для нас веб-разработчики: D – Leon 1 December 2011 в 13:11

Я недавно пользовался двумя универсальными библиотеками со своей работой.NET - у них обоих есть много различных charttypes, которые включают изменение масштаба и прокрутку, которая Вы после: каждый свободен ( ZedGraph) другой, не ( Dundas).

я счастливо рекомендовал бы им обоим. Dundas лучше - но это не дешево. Название буквы Z является открытым исходным кодом, так может быть довольно информативным, чтобы просто считать код.

0
ответ дан Unsliced 21 September 2008 в 17:13
поделиться

Как насчет того, чтобы использовать "реальный" Google финансируют инструмент из проекта визуализации Google?

http://code.google.com/apis/visualization/documentation/gallery/annotatedtimeline.html

24
ответ дан smerickson 21 September 2008 в 17:13
поделиться

Взгляните на Google vizualisation API, я предполагаю, что это - то, что Google использует на Google Finance. Я взглянул на некоторых другой API диаграммы, но этот свободен и красив.

5
ответ дан 21 September 2008 в 17:13
поделиться

jqplot впечатляет и улучшается каждый день

1
ответ дан 1 December 2019 в 17:45
поделиться

Это тот, который вы ищете. Почти точное совпадение для графика Google Flash.

http://www.humblesoftware.com/finance/index

9
ответ дан 1 December 2019 в 17:45
поделиться

Почему бы не использовать этот клон:

http://code.google.com/p/time-series-graph/

1
ответ дан 1 December 2019 в 17:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: