Új hozzászólás Aktív témák
-
csendes
addikt
Sziasztok, elég kihalt itt, de talán olvassa valaki. Kezdő tanfolyam vizsgafeladatnál akadtam el a függvényeknek történő paraméterátadás rejtélyeinél. A példa egy vizsgafeladatból lett kimazsolázva, önmagában nincs értelme, csak szemléltetésképpen készült. [Kotlin Playground]-on lett futtatva, a vizsga is hasonló környezetben volt. Utólag sikerült az eredeti feladatot másképp megoldani, de nem értem, hogy miért módosulnak az értékként a függvény hívásakor átadott paraméterek.

Kód:/*
* You can edit, run, and share this code.
* play.kotlinlang.org
*/
import java.util.Arrays
fun mySubFunction(entry: Int):Int {
var newentry=entry
newentry+=10
return newentry
}
fun myMainFunction(anyArray: Array<Int>):Int {
val constArray=anyArray
println("This is the original constArray in myMainFunction: ${Arrays.toString(constArray)}")
var newArray=constArray
val n=newArray.count()-1
for (i in 0..n){
newArray[i]=mySubFunction(newArray[i])
}
println("This is the new anyArray in myMainFunction: ${Arrays.toString(anyArray)}") // Why is it modified?
println("This is the new constArray in myMainFunction: ${Arrays.toString(constArray)}") // How can a const Array change?
println("This is newArray in myMainFunction: ${Arrays.toString(newArray)}") // This is OK
var k=1
return k
}
fun main() {
var myArray=arrayOf<Int>(1,2,3,4,5)
var counter: Int
counter=myMainFunction(myArray)
println("This is the new myArray in Main: ${Arrays.toString(myArray)}") // How can this change, the function has only returned an integer?
}
Eredmény/output:This is the original constArray in myMainFunction: [1, 2, 3, 4, 5]
This is the new anyArray in myMainFunction: [11, 12, 13, 14, 15]
This is the new constArray in myMainFunction: [11, 12, 13, 14, 15]
This is newArray in myMainFunction: [11, 12, 13, 14, 15]
This is the new myArray in Main: [11, 12, 13, 14, 15]
Új hozzászólás Aktív témák
- PlayStation 5
- Mindenki mosolyog a OnePlus 15T tesztfotóin
- Milyen légkondit a lakásba?
- A fociról könnyedén, egy baráti társaságban
- Gitáros topic
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Xiaomi 17 Ultra - jó az optikája
- Hobby elektronika
- A tajvani chipgyártóknak is beteszi a kaput a Hormuzi-szoros lezárása
- Hosszú premier előzetest kapott az Arknights: Endfield
- További aktív témák...
- iPad 10 Eladó Újszerű GARIS!! INGYEN CSOMAGKÜLDÉS!!
- ASUS TUF A15 - 15.6"FHD 144Hz - Ryzen 7 7445HS - 16GB - 512GB - Win11 - RTX 3050 - Garancia
- Innosick, Samsung Laptop memória DDR5 5600Mhz // ÚJ // Számla // Garancia //
- Új Gamer PC - Ryzen 7 5700X / RX 9060 XT 16GB / B550M WIFI / 32GB RAM 3600MHz / 1TB NVMe SSD
- Panasonic ToughBook FZ-55-2 11.gen. I5 laptop (Intel I5-1145G7 8X4400 Mhz, 16GB DDR4, 512GB NVME)
- iPhone 15 Pro Max 256GB 100% (1év Garancia)- ÚJ EREDETI AKKUMULÁTOR - AKCIÓ
- iKing.hu Apple iPhone 14 Pro 128GB használt Silver 100% akku 6 hónap garancia
- Dell Latitude 7280,12.5",FHD,i7-6600U,8GB DDR4, 128GB SSD,WIN11, 2 KAMERA
- Apple iPhone 11 / 128GB / Kártyafüggetlen / 12Hó Garancia / Akku:100%
- ÁRGARANCIA! Épített KomPhone Ultra 7 265KF 32/64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

