메소드, 선택적 매개 변수 및 / 또는 여러 데이터 유형 허용

어떻게

내 질문에 대한 답변을 찾고 잠시 웹을 검색 한 후 내 문제에 대한 효과적인 해결책을 제공하는 것으로 보이는 게시물을 찾을 수 없습니다.

현재는 서로 다른 데이터 유형 입력에 대해 메서드를 오버로드합니다.

예를 들면 :

public void ex1(String in){
public void ex1(int in){

나는 이것을 한 줄로 압축하는 방법이 있다고 상상할 것입니다.

public void ex1(opt(String in), opt(int in)){

또는

public void ex1((String/int) in){

그러나 내가 본 한, 누구도 이러한 형식을 사용하는 합리적인 방법을 제시하지 않았습니다.

오버로딩은 작동하지만 내가 좋아하는 것만 큼 깨끗하게 보이지 않으므로 해결 방법이나 아이디어를 주시면 감사하겠습니다.

야스 카란 비르 싱

방법이 있지만 acn은 one선택적 매개 변수 만 제공합니다 . 그 방법은 ...매개 변수 유형 앞에 사용하는 것 입니다.

예 :

public void ex1(int someint, String... in)){

이 경우 String in제공 할 수 있거나 제공하지 않을 수있는 선택적 매개 변수입니다. 그러나 int someint반드시 제공해야하는 매개 변수입니다.

그래서 String... in기본적으로 String[] in. 배열이 null 일 수 있기 때문에 .... 이것 외에는 (적어도 나는) 이것을 달성하는 다른 방법을 모릅니다.

, 매개 변수 중 하나를 입력해야하고 다른 매개 변수는 무시할 수있는 것과 같은 작업도 수행 할 수 없습니다 . 하나의 매개 변수 만 무시하고 다른 매개 변수는 전달해야합니다.

또한 이것은 메소드 당 하나의 매개 변수로만 작동합니다. 즉, 하나의 매개 변수 만 선택 사항으로 만들 수 있습니다. 그렇지 않으면 메서드 오버로딩을 사용해야합니다.

그러나 (의견에서 언급했듯이) 이것은 효과적인 방법이 아닙니다. 각 변수의 가능성에 대한 논리를 작성해야하기 때문에 메서드 오버로딩에 의한 달콤하고 효과적인 방법에 비해 코드가 엉망이 될 것입니다.

편집하다:

varargs (또는이 선택적 매개 변수)는 method의 마지막 매개 변수로 나타나야합니다. 이것을 지적 해 주신 @Makoto에게 감사드립니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

PHP-인터페이스, 전략 패턴 및 선택적 메소드 매개 변수 사용

분류에서Dev

void 반환 유형 및 선택적 매개 변수가있는 메서드에 대한 Return_value_policy

분류에서Dev

scikit-learn.predict 메소드의 매개 변수로 허용되는 유형

분류에서Dev

메소드 매개 변수를 생성 할 때 내장 데이터 유형 또는 인터페이스를 사용해야합니까? 씨#

분류에서Dev

Moq를 사용하여 선택적 매개 변수를 사용하는 메소드 모킹

분류에서Dev

선택적 to 및 from 매개 변수를 사용하여 행의 여러 날짜 필터링

분류에서Dev

선택적 to 및 from 매개 변수를 사용하여 행의 여러 날짜 필터링

분류에서Dev

선택한 필드 또는 매개 변수 (이름)의 JSON 및 PHP 데이터 검색

분류에서Dev

Java 메소드 매개 변수 유형 및 인터페이스 준수

분류에서Dev

결과, 매개 변수 유형 또는 속성이 일치하지 않는 "count"라는 이름의 여러 메소드가 발견되었습니다.

분류에서Dev

결과, 매개 변수 유형 또는 속성이 일치하지 않는 'setCornerRadius :'라는 이름의 여러 메소드가 발견되었습니다.

분류에서Dev

선택기 메소드로 여러 매개 변수를 전달하는 방법

분류에서Dev

자바 : 매개 변수화 된 데이터 유형 및 비 구체적 유형

분류에서Dev

자바 : 매개 변수화 된 데이터 유형 및 비 구체적 유형

분류에서Dev

유사한 서명 및 매개 변수를 사용하여 메서드 선언

분류에서Dev

Java 언어 사양의 정적 메소드 및 유형 매개 변수

분류에서Dev

Rails는 이전 데이터를 허용 된 매개 변수로 전달하는 필드를 형성합니다.

분류에서Dev

동일한 메소드 변수를 사용하여 여러 목록 유형을 매개 변수로 전달하는 방법

분류에서Dev

메서드가 다른 유형의 여러 숫자 매개 변수를 허용하도록합니다.

분류에서Dev

단일 선택적 매개 변수를 호출하고 다른 선택적 매개 변수를 기본값으로 유지하는 메소드

분류에서Dev

여러 매개 변수가있는 행 선택 (ajax 및 PHP)

분류에서Dev

VBA에서 여러 선택적 매개 변수를 사용하는 방법

분류에서Dev

메소드의 Typescript 선언 매개 변수는 추상 클래스의 유형이며 정적 메소드 실행

분류에서Dev

여러 선택적 매개 변수가있는 Angular UI 라우터

분류에서Dev

부울 메서드에 적합한 형식 매개 변수를 선택하는 데 문제가 있습니다.

분류에서Dev

선택적 검색 매개 변수를 기반으로 Entity Framework를 사용하여 데이터 선택

분류에서Dev

'GET'메소드로 Express 'Router ()를 사용하여 내 매개 변수에 액세스 할 수없는 이유

분류에서Dev

여러 허용 값 유형이있는 데이터베이스 필드

분류에서Dev

KITTI 스테레오 2015 데이터 세트에 사용 된 두 컬러 카메라의 외부 및 고유 매개 변수는 무엇입니까?

Related 관련 기사

  1. 1

    PHP-인터페이스, 전략 패턴 및 선택적 메소드 매개 변수 사용

  2. 2

    void 반환 유형 및 선택적 매개 변수가있는 메서드에 대한 Return_value_policy

  3. 3

    scikit-learn.predict 메소드의 매개 변수로 허용되는 유형

  4. 4

    메소드 매개 변수를 생성 할 때 내장 데이터 유형 또는 인터페이스를 사용해야합니까? 씨#

  5. 5

    Moq를 사용하여 선택적 매개 변수를 사용하는 메소드 모킹

  6. 6

    선택적 to 및 from 매개 변수를 사용하여 행의 여러 날짜 필터링

  7. 7

    선택적 to 및 from 매개 변수를 사용하여 행의 여러 날짜 필터링

  8. 8

    선택한 필드 또는 매개 변수 (이름)의 JSON 및 PHP 데이터 검색

  9. 9

    Java 메소드 매개 변수 유형 및 인터페이스 준수

  10. 10

    결과, 매개 변수 유형 또는 속성이 일치하지 않는 "count"라는 이름의 여러 메소드가 발견되었습니다.

  11. 11

    결과, 매개 변수 유형 또는 속성이 일치하지 않는 'setCornerRadius :'라는 이름의 여러 메소드가 발견되었습니다.

  12. 12

    선택기 메소드로 여러 매개 변수를 전달하는 방법

  13. 13

    자바 : 매개 변수화 된 데이터 유형 및 비 구체적 유형

  14. 14

    자바 : 매개 변수화 된 데이터 유형 및 비 구체적 유형

  15. 15

    유사한 서명 및 매개 변수를 사용하여 메서드 선언

  16. 16

    Java 언어 사양의 정적 메소드 및 유형 매개 변수

  17. 17

    Rails는 이전 데이터를 허용 된 매개 변수로 전달하는 필드를 형성합니다.

  18. 18

    동일한 메소드 변수를 사용하여 여러 목록 유형을 매개 변수로 전달하는 방법

  19. 19

    메서드가 다른 유형의 여러 숫자 매개 변수를 허용하도록합니다.

  20. 20

    단일 선택적 매개 변수를 호출하고 다른 선택적 매개 변수를 기본값으로 유지하는 메소드

  21. 21

    여러 매개 변수가있는 행 선택 (ajax 및 PHP)

  22. 22

    VBA에서 여러 선택적 매개 변수를 사용하는 방법

  23. 23

    메소드의 Typescript 선언 매개 변수는 추상 클래스의 유형이며 정적 메소드 실행

  24. 24

    여러 선택적 매개 변수가있는 Angular UI 라우터

  25. 25

    부울 메서드에 적합한 형식 매개 변수를 선택하는 데 문제가 있습니다.

  26. 26

    선택적 검색 매개 변수를 기반으로 Entity Framework를 사용하여 데이터 선택

  27. 27

    'GET'메소드로 Express 'Router ()를 사용하여 내 매개 변수에 액세스 할 수없는 이유

  28. 28

    여러 허용 값 유형이있는 데이터베이스 필드

  29. 29

    KITTI 스테레오 2015 데이터 세트에 사용 된 두 컬러 카메라의 외부 및 고유 매개 변수는 무엇입니까?

뜨겁다태그

보관