JAVA中一道题目求解!

假设有一个长度为5的数组int[]array=newint[]{1,3,-1,5,-2};现要创建一个新数组newArray[],要求新数组的元素与原数组中得元素逆序,并... 假设有一个长度为5的数组 int[] array=new int[]{1,3,-1,5,-2};现要创建一个新数组 newArray[],要求新数组的元素与原数组中得元素逆序,并且如果原数组中得元素值小于0,在新数据中按0存储,结果如下
原数组为:
1 3 -1 5 -2
逆序并处理后的数组为:
0 5 0 3 1
这道题怎么做 求解!
展开
 我来答
lkstarsea
2013-08-22 · TA获得超过315个赞
知道小有建树答主
回答量:201
采纳率:100%
帮助的人:185万
展开全部
import java.util.Arrays;
public class Test {
    public static void main(String[] args) {
        int[] array = new int[]{1,3,-1,5,-2};
        int[] newArray = new int[array.length];
        newArray = nixu(array);
        System.out.println("原数组:"+Arrays.toString(array));
        System.out.println("新数组:"+Arrays.toString(newArray));
    }
    
    /**
     * 方法说明:新数组的元素与原数组中得元素逆序,并且如果原数组中得元素值小于0,在新数据中按0存储
     * @param array    原数组
     * @return 新数组
     */
    private static int[] nixu(int[] array) {
        int[] shus = new int[array.length];
        for(int i=array.length-1;i>=0;i--){
            if (array[i]<0) {
                shus[array.length-1-i]=0;
            } else {
                shus[array.length-1-i]=array[i];
            }
            
        }
        return shus;
    }
}
yiranshilanse
推荐于2017-09-16
知道答主
回答量:13
采纳率:0%
帮助的人:12.9万
展开全部
int[] s={-1,5,-3,3,2,-8,6,5,-9,9,7}; //定义一个任意长度的原数组
int len=s.length; //获得原数组长度
int[] s1=new int[len]; //定义一个用于保存倒叙后的新数组,长度为原数组长度

for(int i=0;i<s.length;i++)
{
if(s[i]<0) //如果小于0,则将值设为0
{
s[i]=0;
}
s1[len-1]=s[i]; //将数组倒序
len--;
}

for(int j:s1)//输出
{
System.out.println(j);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jiangzaifu
2013-08-22 · TA获得超过566个赞
知道小有建树答主
回答量:1169
采纳率:0%
帮助的人:434万
展开全部
public class SA
{
public static void main(String[] args)
{
int[] array = new int[] { 1, 3, -1, 5, -2 };
int[] array1 = new int[array.length];
System.out.print("array:");
for (int i = 0; i < array.length; i++)
{
System.out.print(array[i]+" ");
// (array[i] < 0) ? 0 : array[i];//三目运算符
array1[array1.length - i - 1] = (array[i] < 0) ? 0 : array[i];
}
System.out.println();
System.out.print("array1:");
for(int j=0;j<array1.length;j++){
System.out.print(array1[j]+" ");
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
heihei___hehe
2013-08-22
知道答主
回答量:60
采纳率:0%
帮助的人:27.6万
展开全部

你看看行不行

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友49dabf6
2013-08-22 · TA获得超过106个赞
知道答主
回答量:94
采纳率:50%
帮助的人:65.9万
展开全部
package test;
public class HelloAccp {
public static void main(String[] args) {
int[] array=new int[]{1,3,-1,5,-2};
int[] array1=new int[array.length];
for(int i=0;i<array.length;i++)
{
array1[array1.length-i-1]=array[i]<0?0:array[i];
}
}
}
追问
array1[array1.length-i-1]=array[i]<0?0:array[i];  这句话  可以详细的说明一下吗
追答
三目运算符? :
array1[array1.length-i-1]=array[i]<0?0:array[i];
相当于
if(array[i]<0)
{
array1[array1.length-i-1]=0
}
else
{
array1[array1.length-i-1]=array[i];
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式