Day6. 整列
💡 Arr
1つの変数に複数の値を含める場合に使用します.
レイアウトに加えて、tupleとdickshernerリセットが存在するかどうかは、後で位置決めされます.
CRUD **
アレイの作成
Readスキーマの読み込み
更新シナリオの変更と変更
Delete配列の削除
アレイの作成(Create)
3つのシナリオの作成
1.初期値がある場合
2.データ型と初期値を別々に作成する
3.データ型と初期値の同時生成
var arr1 = [11,22,33,44,55] //초기값이 있을때 바로 선언가능
var arr2:[Int] //배열의 자료형을 선언
arr2 = [] //배열의 초기값 선언
var arr3 = Array<Int> = [] //배열의 자료형과 초기값을 동시에 선언
var arr5 = [Int]() //배열의 자료형과 초기값을 동시에 선언
var arr6 = Array<Int>() //배열의 자료형과 초기값을 동시에 선언
var arr7:[Int] = [Int]()//배열의 자료형과 초기값을 동시에 선언
var arr8:[Int] = Array<Int>()//배열의 자료형과 초기값을 동시에 선언
//여러 방법이 존재
アレイの出力と変更を削除可能
var arr = [11,22,33,55,77]
print(arr.count) // 배열 원소의 갯수를 출력
arr[2] = 5555
//arr[5] = 1010 배열 없는인덱스에 추가는 x 추가 메소드를 써줘야함
print(arr)
arr.append(100) // 맨 뒤에 원소를 추가
print(arr)
arr.insert(222, at: 3) // 3번째 자리에 밀고 들어가 삽입됨
print(arr)
arr.insert(contentsOf: [4,5,6], at: 4) //여러 원소를 4번째 자리에 밀고 들어가 삽입
print(arr)
arr[2...4] = [77,88] // 2,3,4 인덱스번호의 원소를 지우고 값에 해당하는 원소를 삽입
print(arr)
arr.remove(at: 5) //5번 인덱스의 원소 삭제
print(arr)
arr.removeFirst() //첫번째 인덱스 원소 제거
print(arr)
arr.removeLast() // 마지막 인덱스 원소 제거
print(arr)
arr.removeSubrange(2...3) //2~3번째 인덱스 원소를 제거
print(arr)
print(arr.first!)
print(arr.last!)
print(arr.firstIndex(of: 77)!) // 원소의 존재하면 인덱스번호 출력
print(arr.contains(77)) //원소의 존재여부
print(arr.lastIndex(of: 77)!)
var ss1 = arr.prefix(3) //앞에서부터 3개의 원소를 가져옴
print(ss1)
var ss2 = arr.suffix(3) // 뒤에서부터 3개의 원소를 가져옴
print(ss2)
var ss3 = arr[1...2] //중간에서 원소를 가져옴
print(ss3)
arr.replaceSubrange(1...3, with: [23,34,45,67,78,89])
print(arr)
var arr2 = arr.reversed() //revsersed는 자신이 바뀌는게 아니라 리턴값만 바뀐다.
print(arr)
print(Array(arr2))
arr.reverse()
print(arr)
var arr3 = arr.sorted()
var arr4 = arr.sorted(by:>)
print(arr3)
print(arr4)
練習問題
67,78,54,91,88,63,87,75,82
1.合格者の最低3点を点数に書く
合格接線:70
2.合格者の平均数を書く
var point = [67,78,54,91,88,63,87,75,82]
var succ :[Int] = []
var sum = 0
for i in point{
if i >= 70{
succ.append(i)
sum += i
}
}
succ.sort()
print("점수의 3개는\(succ.prefix(3))이고 평균은 \(sum/succ.count)이다")
💡 MulArr多次元配列
様々な配列を組み合わせて変数に入れたい場合に使用します.
例えば、クラス全員の点数を集めるには1次元配列で解決できますが、1年生の各クラスの点数を集めるには、
2 D配列(学年、クラスの配列が必要)を使用する必要があります.
var変数名=[
[],[],[]
使用可能]
let name = ["현 빈","원 빈","장희빈","젤리빈","커피빈"]
let nn = [7,8,1,3,2]
let jum = [
[77,88,11],
[72,83,51],
[74,84,14],
[67,48,31],
[72,38,51]
]
for i in 0..<name.count{
//var tot = jum[i][0]+jum[i][1]+jum[i][2]
var tot = 0
for j in jum[i]{
tot += j
}
print("\(i) \t\(name[i])\t\(nn[i])\t\(jum[i])\t\(tot)\t\(tot/jum[i].count)")
}
Reference
この問題について(Day6. 整列), 我々は、より多くの情報をここで見つけました
https://velog.io/@akay/Day6.-배열
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
let name = ["현 빈","원 빈","장희빈","젤리빈","커피빈"]
let nn = [7,8,1,3,2]
let jum = [
[77,88,11],
[72,83,51],
[74,84,14],
[67,48,31],
[72,38,51]
]
for i in 0..<name.count{
//var tot = jum[i][0]+jum[i][1]+jum[i][2]
var tot = 0
for j in jum[i]{
tot += j
}
print("\(i) \t\(name[i])\t\(nn[i])\t\(jum[i])\t\(tot)\t\(tot/jum[i].count)")
}
Reference
この問題について(Day6. 整列), 我々は、より多くの情報をここで見つけました https://velog.io/@akay/Day6.-배열テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol