---
title: "Object.ReferenceEquals(1, 1) = false?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/172639-object-referenceequals-1-1-false"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Travoni"
published: "2008-07-07T09:08:09.000Z"
updated: "2008-07-07T10:34:36.000Z"
replies: 2
views: 396
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/172639-object-referenceequals-1-1-false"
---

# Object.ReferenceEquals(1, 1) = false?

## #1 — Travoni, 2008-07-07T09:08Z

Object.ReferenceEquals("1", "1").ToString
är sant.

men...

Object.ReferenceEquals(1, 1).ToString
är falskt, varför?

Permalänk: https://www.webforum.nu/p/172639

## #2 — Travoni, 2008-07-07T09:13Z

Object.Equals() verkar fungera som önskat.

Permalänk: https://www.webforum.nu/p/2124519

## #3 — spango, 2008-07-07T10:34Z

Anledningen är att ReferenceEquals tar emot två objekt, och Int32 är en värdetyp vilket innebär att dina intar måste boxas, dvs slås in i ett objekt, innan de kan skickas som argument till ReferenceEquals. Ditt lilla experiment visar att uppenbarligen skapas två olika omslagsobjekt. (Strängar, däremot, poolas när det finns flera likadana, därför funkar det första anropet.)

Permalänk: https://www.webforum.nu/p/2124530

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/172639-object-referenceequals-1-1-false
