programing

배열 길이를 세고 요소가 하나만 포함된 경우 1을 반환합니다.

i4 2023. 8. 14. 22:27
반응형

배열 길이를 세고 요소가 하나만 포함된 경우 1을 반환합니다.

$cars = "bmw","audi","volvo","vw"
echo $cars.length

4를 반환하지만,

$cars = "bmw"

문자 수를 세기 때문에 3을 반환합니다.

어레이에 하나의 아이템만 포함되어 있다면 1을 반품할 수 있는 방법이 있습니까?

몇 가지 다른 옵션:

  1. 쉼표 연산자를 사용하여 배열을 만듭니다.

    $cars = ,"bmw"
    $cars.GetType().FullName
    # Outputs: System.Object[]
    
  2. 배열 하위 표현식 구문 사용:

    $cars = @("bmw")
    $cars.GetType().FullName
    # Outputs: System.Object[]
    

개체 배열을 원하지 않는 경우 원하는 유형(예: 문자열 배열)으로 다운캐스트할 수 있습니다.

 [string[]] $cars = ,"bmw"
 [string[]] $cars = @("bmw")

쓰는 대신에echo $cars.length글을 쓰다echo @($cars).length

배열을 다음과 같이 선언합니다.

$car = array("bmw")

편집

이제 powershell 구문으로 »

$car = [array]"bmw"

아마도 제가 뭔가를 놓치고 있는 것 같습니다(많은 찬성표-여기서 많은 회원들이 제가 옳다는 것이 불가능해 보이는 저와 이것과 다르게 보고 있는 것처럼 보이는 답변). 하지만 길이는 무언가를 세는 올바른 용어가 아닙니다.길이는 일반적으로 원하는 것이 아니라 원하는 것을 얻기 위해 사용됩니다.

$cars.count당신이 찾고 있는 것처럼 보이는 것을 제공해야 합니다.

언급URL : https://stackoverflow.com/questions/9580260/count-length-of-array-and-return-1-if-it-only-contains-one-element

반응형