-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathArray.java
More file actions
150 lines (131 loc) · 5.75 KB
/
Array.java
File metadata and controls
150 lines (131 loc) · 5.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
import java.util.Arrays;
public class Array {
public static void main(String[] args) {
// 배열로 값을 여러개 묶어서 저장
String[] strings = new String[5];
System.out.println(Arrays.toString(strings));
int[] intArray = new int[5];
System.out.println(Arrays.toString(intArray));
intArray[0] = 2;
intArray[1] = 3;
intArray[2] = 5;
intArray[3] = 7;
intArray[4] = 11;
System.out.println(intArray[0]);
// intArray.length == 5
for (int i = 0; i < intArray.length; i++){
System.out.println(intArray[i]);
}
int[] arr1 = {1, 2, 3, 4, 5};
// 같은 주소 참
int[] arr2 = arr1;
// deepcopy 새롭게 복사
int[] arr3 = arr1.clone();
// for-each
// 처음에 수행 부분으로 들어갈 때 i는 intArray의 0번 인덱스의 값(원소)을 갖게 되고,
// 그 다음 들어갈 때는 1번 인덱스의 값(원소)을 갖게 되고...
// 이런 식으로 배열의 마지막 값(원소)까지 갖게 됩니다.
for (int i : intArray) {
System.out.println(i);
}
for (double i : intArray) {
System.out.println(i);
}
String[] fruitsArray = new String[5];
fruitsArray[0] = "딸기";
fruitsArray[1] = "당근";
fruitsArray[2] = "수박";
fruitsArray[3] = "참외";
fruitsArray[4] = "메론";
for (String fruit : fruitsArray) {
System.out.println(fruit);
}
// String 배열에 아래와 같이 저장한 후,
String[] remainders = {"Zero", "One", "Two", "Three"};
// remainders[0] = "Zero";
// remainders[1] = "One";
// remainders[2] = "Two";
// remainders[3] = "Three";
int[] intArrayE = new int[30];
// int j = 1001;
for (int i = 0; i < intArrayE.length; i ++) {
intArrayE[i] = 1001 + i;
System.out.println(remainders[intArrayE[i]%4]);
// switch (intArrayE[i] % 4) {
// case 0 :
// System.out.println(remainders[0]);
// break;
// case 1:
// System.out.println(remainders[1]);
// break;
// case 2:
// System.out.println(remainders[2]);
// break;
// case 3:
// System.out.println(remainders[3]);
// break;
// default:
// break;
// }
}
/*
TAGG, CCAG, AGCC가 총 몇 번 등장하는지 세어봅시다.
TAGG가 2번, CCAG가 4번, AGCC가 3번 등장한다면 아래와 같은 출력 값이 나옵니다.
TAGG: 2
CCAG: 4
AGCC: 3
*/
// 문자열의 toCharArray() 메소드(함수)를 사용하면 char[] 배열을 얻을 수 있습니다.
char[] sequence = "abc".toCharArray();
System.out.println(Arrays.toString(sequence));
// 반대로 char[] 배열을 문자열로 바꾸려면 이렇게 하면 됩니다:
String stringFromCharArr = new String(sequence);
System.out.println(stringFromCharArr);
String dna = "GATCCGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGTGTGAGCCA"
+ "CCACGCCCGGCTAATTTTTATTTATTTATTTAAAGACAGAGTCTCACTCT"
+ "GTCACTCAGGCTAGAGTGCAGTGGCACCATCTCAGCTCACTGCAGCCTTG"
+ "ACCTCCCTGGGCTCCGGTGATTTCACCCTCCCAAGTAGCTAGGACTACAG"
+ "GCACATGCCACGACACCCAGCTAATTTTTTATTTTCTGTGAAGTCAAGGT"
+ "CTTGCTACGTTGCCCATGCTGGTATCAAACCCCTGGGCTCAATCAATCCT"
+ "TCCACCTCAGCCTCCCCAAGTATTGGGGTTACAGGCATGAGCTACCACAC"
+ "TCAGCCCTAGCCTACTTGAAACGTGTTCAGAGCATTTAAGTTACCCTACA"
+ "GTTGGGCAAAGTCATCTAACACAAAGCCCTTTTTATAGTAATAAAATGTT"
+ "GTATATCTCATGTGATTTATTGAATATTGTTACTGAAAGTGAGAAACAGC"
+ "ATGGTTGCATGAAAGGAGGCACAGTCGAGCCAGGCACAGCCTGGGCGCAG"
+ "AGCGAGACTCAAAAAAAGAAAAGGCCAGGCGCACTGGCTCACGCCTGTAA"
+ "TCCCAGCATTTCGGGAGGCTGAGGCGGGTGGATCACCTGAGGTCAGGAGT"
+ "TCAAGACCAGCCTAGCCAACATGGTGAAACCCCGTCTCTACTAAAATACA"
+ "AAAATTAACCGGGCGTGATGGCAGGTGCCTGTAATCCCAGCTACTTGGGA"
+ "GGCTGAGGCAGGAGAATCGCTTGAACCAGGAGGCGGAGGTTGCAGGGAGC"
+ "CAAGATGGCGCCACTGCACTCCAGCCTGGGCGATAGAGTGAGACTCCGTC"
+ "TCAGAAAAAAAAGAAAAGAAACGAGGCACAGTCGCATGCACATGTAGTCC"
+ "CAGTTACTTGAGAGGCTAAGGCAGGAGGATCTCTTGAGCCCAAGAGTTTG"
+ "AGTCCAGCCTGAACAACATAGCAAGACATCATCTCTAAAATTTAAAAAAG"
+ "GGCCGGGCACAGTGGCTCACACCTGTAATCCCAGCACTTTGGGAGGTGGA"
+ "GGTGGGTAGATCACCTGACGTCAGGAGTTGGAAACCAGCCTGGCTAACAT";
// 스트링을 배열로 만든다.
char[] charArray = dna.toCharArray();
// 현재 상태를 담을 current를 만든다.
char[] current = new char[4];
// 값을 저장할 곳
String[] elements = { "TAGG", "CCAG", "AGCC"};
int[] result = new int[3];
for (int i=0; i < charArray.length-3; i++) {
// 갱신해준다.
current[0] = charArray[i];
current[1] = charArray[i+1];
current[2] = charArray[i+2];
current[3] = charArray[i+3];
// current에 담긴 값을 스트링으로 만든다.
String strFromCharArr = new String(current);
for (int j = 0; j < elements.length; j ++) {
if (elements[j].equals(strFromCharArr)) {
result[j] += 1;
}
}
}
for (int i = 0; i < elements.length; i ++ ) {
System.out.println(elements[i]+ ": " + result[i]);
}
}
}