자바 의 가 변 매개 변수 목록
class C{
public static void main(String[] args) {
C c=new C();
c.test(null);
// null , null 1 , 。
c.test(null,null);
c.test("a");
c.test("a","b");
c.test("a","b","c");
}
public void test(String ... strings){
if(strings!=null){
for (int i = 0; i < strings.length; i++) {
System.out.println(strings[i]);
}
}
else{
System.out.println(strings);
}
}
}
:
null
null
null
a
a
b
a
b
c
인용 하 다.
예전 에는 자바 방법의 매개 변수 개 수 는 컴 파일 기간 에 이미 알 고 있 는 것 이 라 고 생각 했 는데,실제 참조 C\#와 변태 적 인 js 를 함부로 추가 할 수 있 는 것 이 부 러 웠 습 니 다.나중에 본의 아니 게 자바 방법 서명 에'...'라 는 쓰기 가 있 는 것 을 발 견 했 습 니 다.사실 자바 방법의 매개 변수 수 는 고정 되 지 않 을 수도 있 습 니 다.실행 할 때 까지.예 를 들 어 main 방법의 서명 은 이렇게 쓸 수 있 습 니 다.Public static void main(String..args)//방법 1 도 실행 할 수 있 습 니 다.또한,Public static void main(String[]args)//방법 2 가 동시에 존재 한다 면 중복 되 는 방법의 오 류 를 보고 할 수 있 습 니 다.이 를 통 해 알 수 있 듯 이 String..args 와 String[]args 는 가상 컴퓨터 에 있어 서 사실 같은 것 입 니 다.그리고...방법 내 에서...을 통 해 들 어 오 는 매개 변 수 를 사용 하 는 방법 도 하나의 배열 과 전혀 다 르 지 않 습 니 다.for 순환 이 가능 하고 심지어 직접 변환 할 수 있 습 니 다:Public static void main(String..args){ String[] ss=args; } 그러나 프로그래머 에 게 는 차이 가 있 습 니 다.1.호출 방법 2:main(new String[]{});즉,방법 2 는 String 배열 을 매개 변수 로 만 받 아들 일 수 있 습 니 다.우리 의 낯 선 방법 1 은 매우 강 합 니 다.다음 매개 변수 로 호출 하여 목록 에 따라 모두 받 습 니 다:main().main(null); main(null,null); main(null,null,null); ...... main("a"); main("a","b"); main("a","b","c"); ...... main(new String[]{}); (String...String*와 일치 하고 null 도 특수 한 String 일 수 있 습 니 다)2.매개 변수 위치 에서 사용 하 는 매개 변 수 는 마지막 매개 변수 일 수 있 습 니 다.그렇지 않 으 면 호출 할 때 점 이 어느 실제 인삼 과 일치 하 는 지 누가 알 겠 습 니까?public static void main(String[]args,int index)//public static void main(String...args,int index)//안 됩 니 다!3.재 부팅 가설 에는 다음 과 같은 두 가지 방법 이 있 습 니 다.Public static void main(String..args)//방법 1 Public static void main(String a,String...args)//방법 3 문법 적 으로 볼 때 이 재 부팅 은 전혀 잘못 되 지 않 았 고 eclipse 도 잘못 되 지 않 았 습 니 다.그러나 호출 할 때 사용 하 는 매개 변 수 는 이러한 방법 중 점 매개 변수 앞의 매개 변수 개수 보다 많 을 때eclipse 에서 이 오 류 를 발견 할 수 있 습 니 다.까다 롭 죠?헤헤~예 를 들 어 보 자.이 두 가지 방법 을 호출 할 때 main();컴 파일 러 는 이 호출 방법 을 알 아 볼 수 있 습 니 다.1.그러나 호출 할 때 main(");컴 파 일 러 가 미 쳐 버 렸 습 니 다...String 매개 변수 하나 로 인해 방법 1 의 점 과 방법 3 의 String+점 에 부합 되 기 때문에 컴 파 일 러 는 어떤 방법 으로 호출 되 었 는 지 모 릅 니 다.String[]매개 변 수 는 이런 문제 가 없 을 것 입 니 다.따라서 다시 불 러 올 때 주의해 야 합 니 다.점 매개 변수 앞 에 그 유형 과 같은 매개 변수 가 있 으 면...가장 좋 은 방법 은 배열 형식 으로 바 꾸 는 것 같 습 니 다.아니면 이름 을 바 꿔 주세요.4.일반적인 아웃 소 싱 을 만 나 인 스 턴 스 를 통 해 자바 util.Arrays 는 도구 류 입 니 다.모든 방법 은 정적 이 고 배열 에 대한 조작 입 니 다.그 안에 asList(T.args)방법 이 있 습 니 다.유형 T 의 배열 을 List
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.