Size: a a a

Scala User Group

2020 January 29

AS

Artem Sierikov in Scala User Group
Abyr Valg
Тому що, к примеру, 0.9(9) равно 1 но не обязательно 0.9(9)d == 1d
Это не починить учётом погрешности?
источник

AV

Abyr Valg in Scala User Group
Artem Sierikov
Это не починить учётом погрешности?
конечно починить
источник

AV

Abyr Valg in Scala User Group
abs(a-b) <= 2^-1000
источник

AV

Abyr Valg in Scala User Group
Починка, конечно, немного неидеальная - но и сами даблы - гавно
источник

AV

Abyr Valg in Scala User Group
2^-1021, пожалуй, если мне маразм не изменяет
источник

R

Renarde in Scala User Group
окей, пример без даблов:

case class ExampleHttpResponse(id: Int, text: Option[String])

val response = client.get[ExampleHttpResponse](stubUri)

println(response.id == exampleResponse.id) // true
println(response.text == exampleResponse.text) //true
println(response == exampleResponse) false
println(response.getClass.getCanonicalName) // tests.ExampleHttpResponse
println(exampleResponse.getClass.getCanonicalName) // tests.ExampleHttpResponse
println(response.equals(exampleResponse)) // false
println(response.hashCode()) // 1551451508
println(exampleResponse.hashCode()) // 1551451508
источник

R

Renarde in Scala User Group
я тоже сначала подумал что дело в них
источник

AV

Abyr Valg in Scala User Group
А какой тип у response? Может это обертка гнусная какая?
источник

AZ

Alex Zhukovsky in Scala User Group
Renarde
окей, пример без даблов:

case class ExampleHttpResponse(id: Int, text: Option[String])

val response = client.get[ExampleHttpResponse](stubUri)

println(response.id == exampleResponse.id) // true
println(response.text == exampleResponse.text) //true
println(response == exampleResponse) false
println(response.getClass.getCanonicalName) // tests.ExampleHttpResponse
println(exampleResponse.getClass.getCanonicalName) // tests.ExampleHttpResponse
println(response.equals(exampleResponse)) // false
println(response.hashCode()) // 1551451508
println(exampleResponse.hashCode()) // 1551451508
судя по тому что написно тут == это сравнение референсов или еще какая-то хрень
источник

AZ

Alex Zhukovsky in Scala User Group
а не сравнение по значению
источник

AV

Abyr Valg in Scala User Group
Предеф штатный скаловский?
источник

AV

Abyr Valg in Scala User Group
Никакого мусорного переопределения == не приехало через импорты?
источник

λ

λoλegΥch in Scala User Group
ну ребят
источник

R

Renarde in Scala User Group
Abyr Valg
Предеф штатный скаловский?
это из org.scalactic.TripleEqualsSupport (scalatest)
источник

AV

Abyr Valg in Scala User Group
Renarde
это из org.scalactic.TripleEqualsSupport (scalatest)
И че ты нам мозги паришь?
источник

λ

λoλegΥch in Scala User Group
== нельзя переопределить
источник

λ

λoλegΥch in Scala User Group
скалактик тут не причом
источник

AV

Abyr Valg in Scala User Group
λoλegΥch
== нельзя переопределить
Разве?
источник

AV

Abyr Valg in Scala User Group
Ну окей, значит я неправ
источник

R

Renarde in Scala User Group
Renarde
это из org.scalactic.TripleEqualsSupport (scalatest)
да, == из Scala родной, плюс я еще попробовал === (которое из scalatest)
источник