How to Sort Characters in String in Go - Step by Step Examples
How to Sort Characters in String in Go ?
Answer
In Go, you can sort characters in a string by converting the string to a slice of runes, sorting the slice, and then converting it back to a string.
✐ Examples
1 Sort Characters in Ascending Order
In this example,
- We create a string named
str
. - We convert the string to a slice of runes using
[]rune(str)
. - We sort the slice of runes in ascending order using
sort.Slice
with a custom comparator function. - We convert the sorted slice of runes back to a string using
string()
conversion. - Finally, we print the sorted string in ascending order.
Go Program
package main
import (
"fmt"
"sort"
)
func main() {
str := "hello world"
runes := []rune(str)
sort.Slice(runes, func(i, j int) bool {
return runes[i] < runes[j]
})
sortedStr := string(runes)
fmt.Println("Sorted string in ascending order:", sortedStr)
}
Output
Sorted string in ascending order: dehllloorw
2 Sort Characters in Descending Order
In this example,
- We create a string named
str
. - We convert the string to a slice of runes using
[]rune(str)
. - We sort the slice of runes in descending order using
sort.Slice
with a custom comparator function. - We convert the sorted slice of runes back to a string using
string()
conversion. - Finally, we print the sorted string in descending order.
Go Program
package main
import (
"fmt"
"sort"
)
func main() {
str := "hello world"
runes := []rune(str)
sort.Slice(runes, func(i, j int) bool {
return runes[i] > runes[j]
})
sortedStr := string(runes)
fmt.Println("Sorted string in descending order:", sortedStr)
}
Output
Sorted string in descending order: wroolllhed
Summary
In this tutorial, we learned How to Sort Characters in String in Go language with well detailed examples.
More Go Strings Tutorials
- How to Create an Empty String in Go ?
- How to get Length of String in Go ?
- How to get Character at Specific Index in String in Go ?
- How to get First Character in String in Go ?
- How to get Last Character in String in Go ?
- How to get First N Characters in String in Go ?
- How to get Last N Characters in String in Go ?
- How to get Substring after Specific Character in Go ?
- How to get Substring before Specific Character in Go ?
- How to get Substring between two Specific Characters in Go ?
- How to get Substring from Specific Index to End in Go ?
- How to Iterate over Characters in String in Go ?
- How to Iterate over Words in String in Go ?
- How to Check if String is Empty in Go ?
- How to Check if String contains only Alphabets in Go ?
- How to Check if String contains only Alphabets and Numbers in Go ?
- How to Check if String contains only Numeric Digits in Go ?
- How to Check if a String contains given Substring in Go ?
- How to Check if String contains specific Character in Go ?
- How to Check if String starts with Specific Prefix in Go ?
- How to Check if String ends with Specific Suffix in Go ?
- How to Append a String to another String in Go ?
- How to Append a Character to beginning of a String in Go ?
- How to Append a Character to end of a String in Go ?
- How to Concatenate Two Strings in Go ?
- How to Repeat a String N Times in Go ?
- How to Insert Character at Specific Index in String in Go ?
- How to Replace a Substring in String in Go ?
- How to Replace multiple Spaces with a Single Space in String in Go ?
- How to Replace Character at Specific Index in String in Go ?
- How to Replace All Occurrences of a Substring in a String in Go ?
- How to Replace a Substring in a String using Regular Expression in Go ?
- How to Split a String in Go ?
- How to Split a String by New Line in Go ?
- How to Split a String by Comma in Go ?
- How to Sort Characters in String in Go ?
- How to convert String to Lowercase in Go ?
- How to convert String to Uppercase in Go ?
- How to Trim a String in Go ?
- How to convert First Character in String to Uppercase in Go ?
- How to Reverse a String in Go ?
- How to Remove Character at specific Index in a String in Go ?
- How to Remove First Character in a String in Go ?
- How to Remove Last Character in a String in Go ?
- How to Remove first N Characters in a String in Go ?
- How to Remove last N Characters in a String in Go ?
- How to Remove specific Substring in Go ?
- How to Remove specific Character from a String in Go ?
- How to Remove All Whitespace Characters from a String in Go ?
- How to Remove Special Characters from a String in Go ?
- How to keep only Alphabets in a String in Go ?
- How to Convert Integer to String in Go ?
- How to Convert String to Integer in Go ?
- How to convert String to Float in Go ?
- How to convert Float to String in Go ?
- How to check if Two Strings are Equal in Go ?
- How to check if Two Strings are Equal ignoring case in Go ?
- How to Compare Two Strings in Go ?
- How to find the Characters in the First String that are not Present in the Second String in Go ?
- How to find the Index of Substring in Go ?
- How to find the Index of Last Occurrence of Substring in Go ?
- How to find the Indices of All Occurrences of Substring in Go ?
- How to get all the possible Substrings of a String in Go ?
- How to get all the possible K length Substrings in a String in Go ?