java数组问题
答案:6 悬赏:0 手机版
解决时间 2021-07-18 07:46
- 提问者网友:别再叽里呱啦
- 2021-07-17 06:47
import java.io.*;
import java.lang.*;
class text
{
public static void main(String[] argument)throws Exception
{
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
String strline;
int i=0;
int n[]=new int[100];
while((strline=br.readLine())!=null)
{ n[i]=Integer.parseInt(strline);
i++;
}
br.close();
for(i=0;i<n.length;i++)
{
System.out.println(n[i]);
}
}
}
当我输入0 1 2 3 4 5 6的是时候
输出的是0 1 2 3 4 5 6后面有很多个0
我想后面的那些0不要,该怎么改???
最佳答案
- 五星知识达人网友:迷人又混蛋
- 2021-07-17 07:40
for(int u=0;i<i;u++)
{
System.out.println(n[i]);
}
那个i正好做个计数器 循环的时候 让它小于你的计数器 那样就不会有0了
全部回答
你可以把做个计数器将输入的元素计数,然后转化为整形后用数组将元素装起来(数组长度即为计数器的值),这样你就可以做到输入什么就显示什么
- 2楼网友:不想翻身的咸鱼
- 2021-07-17 09:52
输入前i个数,不就看不到0了吗
这么改就行了
for(int j=0;j<=i;j++)
{
System.out.println(n[j]);
}
你的数组长度是100,只是钱7个赋给了值,后面未赋值的初始值为0.
这样你打印的时候就打印出了所有的元素(总共100个)。
- 5楼网友:归鹤鸣
- 2021-07-17 08:37
import java.io.*;
import java.lang.*;
class text
{
public static void main(String[] argument)throws Exception
{
InputStreamReader isr=new InputStreamReader(System.in);
BufferedReader br=new BufferedReader(isr);
String strline;
int i=0;
int n[]=new int[100];
while((strline=br.readLine())!=null)
{ n[i]=Integer.parseInt(strline);
i++;
}
br.close();
for(int j=0;j<i;j++) // 你开了一个100个空间的数组,而只输入了一部分数,所以只需要输出你输入的数量就行了,不必用n.length n.length 返回的是数组的长度不是数组里面数据的长度。
{
System.out.println(n[j]);
}
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯