簡體   English   中英

如何將負數表示為整數數組?

[英]how to represent negative number to array of integers?

我必須將1324312321的字符串轉換為Java中的整數數組

這可以。 我可以使用整數parseint和字符串子字符串方法

但是我該如何將-12312312賦予我的原始整數數組。

-是一個char /字符串並轉換為整數數組的事實會改變值(即使我將-轉換為等價的整數,它也會更改12312312的其余部分)

它必須是整數數組,我應如何轉換負數並仍然保持相同的值

某種程度上讓我想起了兩個補碼的技巧,但是我不認為我需要在程序中降至二進制級別。

還有其他技巧嗎?

謝謝!

為什么不將第一個元素存儲為-1而不是1

轉換為整數數組可能意味着許多不同的事情。 你為什么不做呢?

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

您還沒有弄清楚為什么要在單個int足夠時創建整數數組。

一種方法是為所有整數提供符號

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

或為正整數留空

 1 2 3 1 2 3 1 2

您可以說一個負號在任何負整數之前。 這個例子

1231-2312

表示數組中的第五個整數是-2。 如果要以這種方式表示整數數組,則可能必須自己解析字符串,而不是使用字符串方法。

有多種方法,包括:

  • 使最高有效位數為負,
  • 將所有數字設為負數
  • 添加前導數字(例如-1對0)來表示符號,或者
  • 與數字數組分開代表符號。

哪個最好取決於您要對數字數組執行的操作。 例如,如果您需要表示輸入字符串中不重要的前導零,則第一種方法不起作用...沒有-0值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM