Om jag har en array, Array eller ArrayList (Eller nångot annat relaterat) finns det då något som liknar javascripts join-metod? Det jag vill är alltså att ta en lista med strängar och sätta ihop dem med någon sträng mellan, t ex kommatecken i mitt fall.
Kan självklart skriva något eget, men det bör ju finnas något som gör jobbet.
Liknande javascripts join
10 svar · 429 visningar · startad av nitro2k01
Japp det finns en metod Join på klassen String...
String.Join();
Det finns bara 10 sorters människor, de som inte förstår binärkod, de som förstår binärkod och de som kan använda andra talbaser än 2, 10 och 16.
Ja och inte tillhör du någon av de 11 sortens människor som du räknar upp här :)
- M
Gladh skrev:
Japp det finns en metod Join på klassen String...
String.Join();
Gör den verkligen det jag vill? Jag får kolla lite på det och återkomma.
Gladh skrev:
Det finns bara 10 sorters människor, de som inte förstår binärkod, de som förstår binärkod och de som kan använda andra talbaser än 2, 10 och 16.
Ja och inte tillhör du någon av de 11 sortens människor som du räknar upp här :)
Börja med att läsa igenom vad en talbas är, så kanske det klarnar. ;)
det var väl på skoj bara han skrev.. jag antar att man kanske kan tolka det som att du nämnde 3 typer av människor eftersom det står "de" tre gånger.. :)
nitro skrev:
Gör den verkligen det jag vill? Jag får kolla lite på det och återkomma.
Jag har för mig att du skickar in en array av strängar samt en separator och får tillbaka en lång sträng med alla värden i din array separerade av din separator. Var det inte det du ville?
nitro skrev:
Börja med att läsa igenom vad en talbas är, så kanske det klarnar.
Jag läser och läser och kan inte få ihop hur 3 sorters människor kan bli 2 i den binära talbasen.
- M
Här är en förklaring som jag skrev till en annan medlem som undrade:
Ja, veck i pannan är inte kul. (;
Först måste jag börja med att kolla att du känner till binärkod (Ettor och nollor) och hex-kod. (0x0a 0x0d)
Det finns folk som fattar detta och folk som inte fattar detta. Detta blir 2 sorters människor. Sedan finns det folk som även förstår andra talbaser, och det blir 3 sorter, med vårt vanliga talsystem.
Så hur får jag till det att 10=3? Jo, jag använder ett talsystem som har basen 3. Då ser de första siffrorna ut så här:
0 (=0)
1
2
10 (=3 i vanliga talsystemet)
11
12
20
21
22
100
101 (=10 i vanliga talsystemet)
102
110
111
112
120
121
122
200 (=18 i vanliga talsystemet)
osv.Så så kan det vara. (:
Vad gäller orginalfrågan så får jag det inte riktigt att funka.
Det jag vill göra är att sätta ihop ett antal id-nummer till en sträng med kommatecken mellan. Nu gör jag det med strängkonkatenering+kommatecken, vilket har bieffekten att det blir ett kommatecken på slutet. Detta går att fixa, på olika sätt såklart, och nu visade det sig att programmet som skulle ta emot strängen fattade galoppen även med ett extra kommatecken.
Men jag tyckte då att det verkade mer logiskt, och snyggare att lägga alla strängar i nån slags lista och sedan sätta ihop de. String.join i sig funkar, men däremot så har jag problemet att när jag använder toArray() på ett ArrayList-objekt så får jag en Object[] när jag vill ha en String[], och jag verkar inte kunna casta om det. Förslag?
nitro skrev:
Här är en förklaring som jag skrev till en annan medlem som undrade:
Okej, skall villigt erkänna att jag aldrig hört talas om talbasen 3, däremot talbasen 8, men aldrig 3.... säkert bara något du hittat på :)
- M
nitro2k01 skrev:
String.join i sig funkar, men däremot så har jag problemet att när jag använder toArray() på ett ArrayList-objekt så får jag en Object[] när jag vill ha en String[], och jag verkar inte kunna casta om det. Förslag?
string s = string.Join(",", list.ToArray(typeof(string)) as string[]);
Gladh skrev:
Okej, skall villigt erkänna att jag aldrig hört talas om talbasen 3, däremot talbasen 8, men aldrig 3.... säkert bara något du hittat på
Inte alls. Talbaser kan man välja efter tycke och smak, så länge som man kan hitta på ett sätt att uttrycka dem. Talbasen 3 är enkel, men man skulle också kunna tänka sig t.ex. talbasen 36, angiven med 0-9 och A-Z.
emission skrev:
Inte alls. Talbaser kan man välja efter tycke och smak, så länge som man kan hitta på ett sätt att uttrycka dem.
Just det, en talbas som han har hittat på! Att den sedan är mattematisk korrekt är ju inte samma sak som att den är användbar, om ingen annan har hört talas om den...
- M
Gladh skrev:
Just det, en talbas som han har hittat på! Att den sedan är mattematisk korrekt är ju inte samma sak som att den är användbar, om ingen annan har hört talas om den...
nitros signatur skulle inte vara särskilt fyndig om han skrev med en etablerad talbas, eller hur? ;)
Talbasen 3 är dock faktiskt använd i vissa (ytterst få) digitala system, där man kan kan utnyttja potentialförhållandena 0,1 och -1 för att uttrycka värden trinärt. Talbasen 36 är också användbar.
nitros signatur skulle inte vara särskilt fyndig om han skrev med en etablerad talbas, eller hur?
Jag tyckte inte alls den var särskilt fyndig, jag fattade ju inte :(
Talbasen 3 är dock faktiskt använd i vissa (ytterst få) digitala system,
Det där hittar du säkert bara på :)
- M