2010-05-15 4 views
0

1324312321의 문자열을 java의 정수 배열로 변환해야합니다.정수 배열에 음수를 나타내는 방법은 무엇입니까?

괜찮습니다. 나는 정수에서는 parseInt 및 문자열 문자열 방법

을 사용하지만 어떻게 repesent 할 -12312312 정수의 내 원래의 배열에 ..

사실 수 - 숯불/문자열 인을하고 변경 할 정수의 배열로 변환 값은 - 그것은 정수 배열해야

(I 변환하더라도 그것이 12,312,312의 나머지 부분을 바꿀 것, 등가 정수로)와 어떻게 음수를 변환해야합니다 여전히 생각 나게

어떻게 든 같은 값을 keeep 두 가지 보완 트릭의 날하지만 난 내 프로 그램에서 이진 수준으로 이동해야한다고 생각하지 않는다. 숫양 ..

다른 트릭이 일을?

감사합니다.

답변

3

첫 번째 요소를 1 대신 -1으로 저장하지 않는 이유는 무엇입니까?

+1

또는 모두 부정적으로 만들 수 있습니다. – akf

0

한 가지 방법은 정수

+1+2+3+1+2+3+1+2 

의 모든 표시를 제공하거나 양의 정수

1 2 3 1 2 3 1 2 

당신은 마이너스 기호가 어떤 앞에 말할 단지 수의 빈 공간을 남겨하는 것 음의 정수. 예

1231-2312 

은 배열의 다섯 번째 정수가 -2임을 의미합니다. 이 방법으로 정수 배열을 나타내려면 문자열 메서드를 사용하는 대신 문자열을 직접 구문 분석해야 할 것입니다. 가지 방법으로 여러 가지가 포함되어

0

:

  • 부정적인 가장 중요한 자리를 만들어,
  • (예 : -1 대 0) 표현하기 위해 선두 자리를 추가, 모든 숫자가 음수 만드는 부호 또는
  • 은 자릿수 배열과 별도로 부호를 나타냅니다.

어느 것이 가장 좋은지는 숫자 배열로 무엇을 할 것인가에 달려 있습니다. 예를 들어, 입력 문자열에서 중요하지 않은 선행 0을 나타내야하는 경우 첫 번째 방법은 작동하지 않습니다 ... -0 값이 없습니다.

1

정수 배열로 변환하면 여러 가지 의미가 있습니다. 그냥 하는게 어때?

String text = "-12312312"; 
int[] values = { Integer.parseInt(text) }; 

단일 정수이면 충분하지 않은 이유는 분명하지 않습니다.

관련 문제