java - 如何只输出非0的数字,如何禁用零输出?
问题描述
我只需要从列出的数组中输出正数和负数。也不能输出0。我需要一个将 i 传递给 *when 它的 0 元素的代码。有什么建议么?
class StackHelp {
int[] array = {12, 23, -22, 0, 43, 545, -4, -55, 43, 12, 0, -999, -87};
int[] neg = new int[array.length];
int[] poz = new int[array.length];
for (int i=0; i<array.length; i++ ) {
{
if (array[i] <= 0)
{ if (array[i] == 0)
array[i]++; {
}
neg[i] = array[i];
} else {
poz[i] = array[i];
}
}}
解决方案
干得好!现在开始在你的计算机科学课上更加关注!
这正是正在发生的事情:“继续”指令告诉 for 循环放弃正在发生的所有事情,然后转到下一个整数。
class StackHelp {
int[] array = {12, 23, -22, 0, 43, 545, -4, -55, 43, 12, 0, -999, -87};
int[] neg = new int[array.length];
int[] poz = new int[array.length];
for (int i = 0; i < array.length; i++) {
{
if (array[i] == 0)
continue;
}
if (array[i] <= 0)
{
neg[i] = array[i];
} else {
poz[i] = array[i];
}
}
}
我可能建议的另一件事是添加到数组的下一个索引。像这样跟踪它们:
class StackHelp {
int[] array = {12, 23, -22, 0, 43, 545, -4, -55, 43, 12, 0, -999, -87};
int[] neg = new int[array.length];
int[] poz = new int[array.length];
for (int i = 0; i < array.length; i++) {
{
if (array[i] == 0)
continue;
}
if (array[i] <= 0)
{
neg[neg.indexOf(0)] = array[i];
} else {
poz[pos.indexOf(0)] = array[i];
}
}
}
推荐阅读
- javascript - 是否可以将诸如“12.13”之类的整数拆分为12和13?
- python-3.x - 如何使用python读取csv文件中特定值的特定日期和时间
- java - 为什么 Spring @Value 注解的 String 变量会得到浮点值?
- tensorflow - “操作的图表与会话的图表不同”错误
- python - 在 Python 中使用不变的 URL 进行动态 Web 抓取
- php - Codeigniter form_validations 不会显示任何 validation_errors 消息
- javascript - 防止表单的值在 onclick 事件后被重置,并将用户的输入保留在会话存储中
- azure - 如何使用 CRON 表达式来安排一个 azure 函数仅在股市时间每秒钟运行一次?
- r - 将ggplots保存在一个具有相等刻度距离的PDF中?
- docker - docker使用docker工具箱从wsl组成空卷(如果是文件夹)挂载