[英]How to print array if the output is 0?
我解決了這個問題,它運行良好,但有一個小問題,如果光線只包含一個數字或相同的數字,它會返回 0,但我想要那個數字。 我的代碼:
public class RaySmallest
{
public static int go(int[] ray)
{
int smallest = 0;
for(int i =0;i<ray.length;i++)
{
if(smallest > ray[i])
{
smallest = ray[i];
}
}
return smallest;
}
}
代碼的跑步者
class Main
{
public static void main(String[] args)
{
RaySmallest rt = new RaySmallest();
System.out.println( rt.go( new int[]{-99,1,2,3,4,5,6,7,8,9,10,12345} ) );
System.out.println( rt.go( new int[]{10,9,8,7,6,5,4,3,2,1,-99} ) );
System.out.println( rt.go( new int[]{10,20,30,40,50,-11818,40,30,20,10} ) );
System.out.println( rt.go( new int[]{32767} ) );
System.out.println( rt.go( new int[]{255,255} ) );
System.out.println( rt.go( new int[]{9,10,-88,100,-555,1000} ) );
System.out.println( rt.go( new int[]{10,10,10,11,456} ) );
System.out.println( rt.go( new int[]{-111,1,2,3,9,11,20,30} ) );
System.out.println( rt.go( new int[]{9,8,7,6,5,4,3,2,0,-2,-989} ) );
System.out.println( rt.go( new int[]{12,15,18,21,23,1000} ) );
System.out.println( rt.go( new int[]{250,19,17,15,13,11,10,9,6,3,2,1,-455} ) );
System.out.println( rt.go( new int[]{9,10,-8,10000,-5000,1000} ) );
}
}
就像在第四行,我的代碼給了我 0,但我需要輸出為 32767。
我需要這個答案。
-99
-99
-11818
32767
255
-555
10
-111
-989
12
-455
-5000
謝謝
如果最小數字大於零,則該數字實際上並未設置,這就是為什么如果您只有一個(可能低於零)則不會獲得最小數字的原因。
public static int go(int[] ray) {
int smallest = ray.length > 0 ? ray[0] : -1;
for (int value : ray) {
if (smallest > value) {
smallest = value;
}
}
return smallest;
}
好的,這是您的代碼的一部分:
int smallest = 0;
for(int i =0;i<ray.length;i++)
{
if(smallest > ray[i])
{
smallest = ray[i];
}
}
return smallest;
基本上這告訴我,最小的是 0。你比較如果 0 > ray[i],第 4 行是 32767。0 不大於 32767,所以最小仍然等於 0 並返回為 0。
int smallest = 0;
int[] numArray = new int[ray.length];
for(int i=0;i<ray.length;i++)
{
if(ray.length == 1)
return ray[i];
if(smallest > ray[i])
smallest = ray[i];
if(ray[i] == ray[ray.length - 1] && i-ray.length > 0 && i==ray.length-2){
int x = 0;
for(int x=0;x<ray.length-1;x++){
if(ray[i] != ray[x])
break;
}
if(ray[i] == ray[x])
return ray[i];
}
}
return smallest;
此解決方案應注意數組中有單個值,或者數組中的所有值是否相等。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.