본문 바로가기

string6

String / Array 뒤집기 1. Array 뒤집기 var myArr1 = [1,2,3,4] // 1. reverse(): 요소들의 위치를 반전 시켜라. myArr1.reverse() // -> myArr1 자체의 요소 위치가 변경됨. print(myArr1) // [4,3,2,1] var myArr2 = [1,2,3,4] // 2. reversed(): 요소들의 위치가 이미 반전이 됨. let reversed = myArr2.reversed() // -> 요소 위치가 반전된 값이 반환됨. print(myArr2) // [1,2,3,4] print(reversed) // [4,3,2,1] NOTE: reverse() 메서드는 mutating 메서드이기 때문에 Struct인 Array의 요소에 변경을 줄 수 있는 것! https://.. 2023. 11. 29.
UnicodeScalar Swift에서 Character는 한개 이상의 UnicodeScalar로 구성되어 있습니다. Unicode는 숫자와 글자 (key & value)가 1:1로 맵핑된 형태의 코드입니다. 숫자 65는 대문자 A 이런 식으로 맵핑이 되어있습니다. 전세계의 모든 문자를 다루도록 설계된 표준 문자 전산 처리 방식입니다. 참고로 "U+"라는 접두어가 붙어 있으면 유니코드를 의미합니다. 만일 특정 String을 unicode로 사용하고 싶다면, let myString = "A" let scalar:Unicode.Scalar? = UnicodeScalar(myString) UnicodeScalar 이니셜라이저 파라미터로 String을 넘겨주면 됩니다. Character는 파라미터로 넘길 수 없어서, String으로 변.. 2023. 11. 28.
String index 값 정수로 얻기 String 변수에 firstIndex(of:) 혹은 startIndex등 index와 연관된 함수로 얻게 되는 값의 타입은 String.Index 입니다. Array의 index를 얻듯이 Int 값으로 얻고 싶다면 distance(from:to:)를 사용하면 됩니다. let text = "abcdefg" let indexOfA = text.firstIndex(of: "a")! // 상황에 맞춰서 적절한 Optional 처리 필요 let intIndex = text.distance(from: text.startIndex, to: indexOfA) print(intIndex) // Prints 0 2023. 11. 28.
Substring 표현방법 String을 잘라서 원하는 만큼만 표현하고 싶을 때, 어느 위치까지 자를 것인지 index를 이용해서 substring을 만들 수 있습니다. 예를 들어서, "2022-12-31T04:10:30.345784" 를 T 앞까지 잘라서 "2022-12-31"만 표현하고 싶다면 어떻게 할 수 있을까요? 다양한 방법이 있겠지만, 최근에 알게된 방법은 마치 Array의 원소를 가져오듯이 []를 사용해서 substring을 만드는 방법이 이었습니다. []안에는 index range를 넣어주면 됩니다. 저는 날짜 형식의 String에서 앞부분 연월일만 빼내고 싶어서 방법을 찾던 중 알게 되었습니다. let createdDate = "2022-12-31T04:10:30.345784" let endIndex = creat.. 2022. 12. 2.
char 배열과 String class 간 변환 String을 char로 변환하는 경우는 알고리즘 문제를 풀 때 입력으로 String이 주어지고 String의 문자열 하나하나를 연산 해야할 때 주로 사용해왔습니다. 예를 들어서, 입력으로 12345가 주어지고 각 자리수에 10을 곱하여 출력해야 하는 경우가 있습니다. 그럴 때 for loop과 charAt() method를 적절히 사용해서 연산을 하고는 합니다. 사실 알고리즘을 풀 때는 위와 같은 방법으로 주로 하긴 하지만, 이번에 String을 char[]로 변환하는 메서드가 있다는 것을 알게되었고 나중에 필요할 일이 있을 것 같아 남겨두려고 합니다. String str = "12345"; char[] charArr = str.toCharArray(); //[1, 2, 3, 4, 5] 이렇게 toCh.. 2022. 8. 13.
String은 참조 타입인가요? 안녕하세요! 🐥 오늘은 잠깐 String에 대해 이야기 해보려고 합니다. 정확히는 제가 공부를 하며 헷갈렸던 부분에 대해 이야기 해보겠습니다. Java를 배우면 primitive type(int, long, double, ...)과 String에 대해 가장 먼저 배우게 됩니다. 데이터 활용에 기본이 되는 형태이기 때문입니다. 그런데 String은 primitive type(기본 타입)과는 다르게 class라는 사실도 알고 계셨나요? String은 기본 타입은 아니지만 굉장히 사용 빈도가 높기 때문에 특별히 class로 제작되어 사용되는 타입입니다. Class는 reference type이기 때문에 인스턴스를 만들면 변수에는 데이터 자체가 저장되는 것이 아니라 데이터가 저장된 주소를 담게 된다는 것입니다... 2022. 5. 8.
반응형