为了账号安全,请及时绑定邮箱和手机立即绑定

问题在代码倒数第四行

package HelloWorld;
public class demo1 {
	public static void main(String[] args) {
        
        // 创建对象,对象名为hello
       int arr[]={99,-23,64,91,119,52,92};
       demo1 ss=new demo1();
       ss.thr(arr,3);
	}
	public void thr(int arr[],int s)
    {
		for(int j=0;j<arr.length;j++) 
		//由于我使用的版本不能导入Arrays,所以自己写了个排序使用
			{
			for(int i=0;i<arr.length;i++)
				{
					int tmp;
					if(arr[i]<arr[j])
					{
						tmp = arr[i];
						arr[i] = arr[j];
						arr[j] = tmp;
					}
				}
			}
		int t = 0;
		for(int i=0;i<arr.length;i++)
		{
			if(i>arr.length-1)
				break;
			// 如果需要输出的长度超过数组实际长度,则退出
			if(arr[i]>=0 && arr[i]<=100){
				System.out.print(arr[i]+" ");}
			t++;
			if(t > s)
			break;
		// 计算累计输出次数,此处不能明白为什么t>=s的时候,输出的个数是s-1个
		}
    }
}


正在回答

3 回答

应该在if后的大括号内部做累加  ... 

0 回复 有任何疑惑可以回复我~

找到原因了, 应该是先输出,然后再判断, 原来的代码, 如果有3个数字不符合条件,则输出的会更少

0 回复 有任何疑惑可以回复我~

也就是第37行不理解,按照条件,当t>=s的时候是可以输出的,但是实际效果总是少输出一行

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

问题在代码倒数第四行

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信