여러개 객체가 자원(필드)를 공유하려면 반드시 필드 앞에 static
어떤 객체를 클래스에서 공유할려면 객체 앞에 static
package day17_FileTest;
import java.util.Arrays;
import java.util.Collections;
public class SortTest {
public static void main(String[] args) {
String [] spname = {"한라산","백두산","설악산","금강산","내장산"};
System.out.println("오름차순 정열\n==========");
Arrays.parallelSort(spname); //오름차순
for(String a:spname) {
System.out.println(a);
}
System.out.println("\n내림차순 정열\n==========");
Arrays.sort(spname,Collections.reverseOrder());
for(String a:spname) {
System.out.println(a);
}
}
}
package day17_FileTest;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
public class SangPoom {
public static void main(String[] args) throws FileNotFoundException {
String [] spname = new String[10000];
int [][] mae = new int [10000][4];
FileReader fr = new FileReader("c:/data/12271.txt");
BufferedReader br = new BufferedReader(fr);
int i = -1; //배열 저장될 위치 0, 1, 2...
while(true) {
try {
String aa = br.readLine();
if(aa == null)break;
i++; //실제 파일에 존재하는 데이터의 갯수
spname[i] = aa.substring(0, 3);
mae[i][0] = Integer.parseInt(aa.substring(3, 5));
mae[i][1] = Integer.parseInt(aa.substring(5, 9));
mae[i][2] = mae[i][0]*mae[i][1];
}
catch (IOException e) {
e.printStackTrace();
}
}
callout(spname,mae,i);//callout 메소드 호출하면서 배열명을 넘겨준다
}
private static void callout(String[] spname, int[][] mae, int su) {
// 매출액 순위 구하기
for(int i=0;i<=su;i++) {
mae[i][3]=1;
for(int j=0;j<=su;j++) {
if(mae[i][2]<mae[j][2])mae[i][3]=mae[i][3]+1;
}
}
System.out.println("이름\t수량\t단가\t매출액\t석차");
System.out.print("================");
System.out.println("===================");
for(int i=0;i<=su;i++) {
System.out.print(spname[i]+"\t");
for(int j=0;j<4;j++) {
System.out.print(mae[i][j]+"\t");
}
System.out.println(); //줄바꿈표시
}
}
}
package day17_FileTest;
public class ArrayTest {
public static void main(String[] args) {
int [][] a = new int [4][5];
int k = 0;
for(int i=0;i<=3;i++) {
for(int j=0;j<=4;j++) {
k++;
a[i][j] =k;
}
}
//출력
for(int i=0;i<=3;i++) {
for(int j=0;j<=4;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
public class ArrayTest {
public static void main(String[] args) {
int [][] a = new int [5][5];
int k = 0;
for(int i=0;i<=4;i++) {
for(int j=0;j<=4;j++) {
k++;
a[j][i] =k;
}
}
//출력
for(int i=0;i<=4;i++) {
for(int j=0;j<=4;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
public class ArrayTest {
public static void main(String[] args) {
int [][] a = new int [5][5];
int k = 0;
for(int i=0;i<=4;i++) {
if(i%2==1) {
for(int i1=4;i1>=0;i1--) {
k++;
a[i][i1]=k;
}
}
else {
for(int i2=0;i2<=4;i2++) {
k++;
a[i][i2]=k;
}
}
}
//출력
for(int i=0;i<=4;i++) {
for(int j=0;j<=4;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
public class Mabangjin {
public static void main(String[] args) {
//마방진은 가로의 합 = 세로의 합 = 대각선의 합이 동일하게 나열
//마방진은 출력 형태를 보고 프로그램을 작성
//1의 위치...행과열의 위치 결정
//2마방진의 행과 열이 3,5,7,9,11 홀수만
//데이터가 1씩 증가 예 3행 이라고 ... 데이터 3의배수 ? 공통점 찾기
int [][] a = new int [3][3];
int r=2,c=1; //1일 저장위치
for(int k=1;k<=9;k++) { // K 자료가 1~9
a[r][c]=k;
if(k % 3 == 0) {
r--; //행이 감소
}
else {
r++;
c++;
}
if(r>2) r=0;
if(c>2) c=0;
}
for(int i=0;i<=2;i++) {
for(int j=0;j<=2;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
public class Mabangjin {
public static void main(String[] args) {
int [][] a = new int [3][3];
int r=1,c=2; //1일 저장위치
for(int k=1;k<=9;k++) { // K 자료가 1~9
a[r][c]=k;
if(k % 3 == 0) {
c--; //행이 감소
}
else {
r--;
c++;
}
if(r<0) r=2;
if(c>2) c=0;
}
for(int i=0;i<=2;i++) {
for(int j=0;j<=2;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
public class Mabangjin {
public static void main(String[] args) {
int [][] a = new int [5][5];
int r=0,c=2; //1일 저장위치
for(int k=1;k<=25;k++) { // K 자료가 1~9
a[r][c]=k;
if(k % 5 == 0) {
r++; //행이 감소
}
else {
r--;
c++;
}
if(r<0) r=4;
if(c>4) c=0;
}
for(int i=0;i<=4;i++) {
for(int j=0;j<=4;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
public class Mabangjin {
public static void main(String[] args) {
int [][] a = new int [7][7];
int r=0,c=3; //1일 저장위치
for(int k=1;k<=49;k++) { // K 자료가 1~9
a[r][c]=k;
if(k % 7 == 0) {
r++; //행이 감소
}
else {
r--;
c++;
}
if(r<0) r=6;
if(c>6) c=0;
}
for(int i=0;i<=6;i++) {
for(int j=0;j<=6;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
import java.util.Scanner;
public class Mabangjin {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("원하는 행 또는 열을 입력하세요");
int n = sc.nextInt();
int [][] a = new int [n][n];
int r=0,c=n/2; //1일 저장위치
for(int k=1;k<=n*n;k++) { // K 자료가 1~9
a[r][c]=k;
if(k % n == 0) {
r++; //행이 감소
}
else {
r--;
c++;
}
if(r<0) r=n-1;
if(c<0) c=n-1;
if(r>n-1) r=0;
if(c>n-1) c=0;
}
for(int i=0;i<=n-1;i++) {
for(int j=0;j<=n-1;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
import java.util.Scanner;
public class Mabangjin {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("원하는 행 또는 열을 입력하세요");
int n = sc.nextInt();
int [][] a = new int [n][n];
int r=2,c=4; //1일 저장위치
for(int k=1;k<=n*n;k++) { // K 자료가 1~9
a[r][c]=k;
if(k % n == 0) {
c--; //행이 감소
}
else {
r++;
c++;
}
if(r<0) r=n-1;
if(c<0) r=c-1;
if(c>n-1) c=0;
if(r>n-1) r=0;
}
for(int i=0;i<=n-1;i++) {
for(int j=0;j<=n-1;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
public class Snail {
public static void main(String[] args) {
int [][] a = new int [5][5];
int r=0,c=-1,p=5,k=0,s=1;
while(true) {
for(int i=0;i<p;i++) {//p=5 열만 증가감소
c=c+s;
k++;
a[r][c] = k;
}
if(p==1)break;
else p--;
for(int i=0;i<p;i++) {//p=5 행만 증가감소
r=r+s;
k++;
a[r][c] = k;
}
s=s*-1;
}
//출력
for(int i=0;i<5;i++) {
for(int j=0;j<5;j++) {
System.out.print(a[i][j]+"\t");
}
System.out.println("\n");
}
}
}
package day17_FileTest;
import java.util.InputMismatchException;
import java.util.Scanner;
public class Static_Test {
static String sun = "일요일";
static String mon = "월요일";
static String tue = "화요일";
static String wed = "수요일";
static String thu = "목요일";
static String fri = "금요일";
static String sat = "토요일";
enum week{sun,mon,tue,wed,thu,fri,sat}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(true) {
try {
System.out.print("원하는 번호(일:1~토:7)?");
String bb = sc.next();
int dd = Integer.parseInt(bb);
String str;
switch (dd) {
case 1:str=Static_Test.sun;break;
case 2:str=Static_Test.mon;break;
case 3:str=Static_Test.tue;break;
case 4:str=Static_Test.wed;break;
case 5:str=Static_Test.thu;break;
case 6:str=Static_Test.fri;break;
case 7:str=Static_Test.sat;break;
default:str="1-7이외의 값이 입력되었습니다";break;
}
System.out.println("입력한 숫자 "+dd+"이면 "+str);
}
catch(NumberFormatException e) {
System.out.println("문자열을 입력하여 오류");
}
}
}
}
package day17_FileTest;
//static 객체가 자원을 공유
class korea {
static int count = 0;
public int out() {
count++;
return count;
}
}
public class Static_Test2 {
public static void main(String[] args) {
korea k1 = new korea();
System.out.println(k1.out());
System.out.println(k1.out());
System.out.println(k1.out());
System.out.println(k1.out());
korea k2 = new korea();
System.out.println(k2.out());
System.out.println(k2.out());
}
}
'JAVA' 카테고리의 다른 글
221229_SingleTon (0) | 2022.12.29 |
---|---|
221228_SingleTon (0) | 2022.12.28 |
221226_배열 (0) | 2022.12.26 |
221223_상속 (0) | 2022.12.23 |
221222_상속 (0) | 2022.12.22 |
댓글